DOUG 0.2

# Aggregation

The algorithm is defined in SpMtx_aggregation::SpMtx_aggregate

Input
Matrix A defined on nodes , aggregate size bounds , , aggregation radius r and number of smoothing steps
Output
Set of ( non-overlapping) aggregates
1. Scale the matrix
2. Filter out weak connections from matrix for which ;
3. Initialise ; ;
4. repeat ... until
1. ; choose a seednode from (or randomly from set if )
2. Set layer ; and
3. for
1. Set layer
2. If , add to all that are connected through to at least 2 nodes in , set and set .
4. Find (i.e. the largest layer) and add to all of shortest path length from
5. set
6. Merge any aggregate that is too small (i.e. ) with a connected neighbouring aggregate (subject to the requirement ; it may be necessary to split up to achieve this) and shrink accordingly.

The smoothing is then done to get restriction matrix and coarse problem (see Smoothed Coarse Spaces).