H2Lib
3.0

Routines for Domain Decomposition Clustering. More...
Functions  
pcluster  build_regular_dd_cluster (pclustergeometry cg, uint size, uint *idx, uint clf, psparsematrix sp, uint dim, uint direction, uint *flag) 
Build a cluster tree from a clustergeometry object using regular Domain Decomposition Clustering. More...  
pcluster  build_adaptive_dd_cluster (pclustergeometry cg, uint size, uint *idx, uint clf, psparsematrix sp, uint dim, uint *flag) 
Build a cluster tree from a clustergeometry object using adaptive Domain Decomposition Clustering. More...  
bool  admissible_dd_cluster (pcluster s, pcluster t, void *data) 
Check the domain decomposition admissibility condition. More...  
pcluster  build_adaptive_fromcluster_cluster (pcluster ctri, pclustergeometry cg, uint size, uint *idx, uint clf, uint dim) 
Build a cluster tree from a clustergeometry object basing on the clustering of the elements. More...  
Routines for Domain Decomposition Clustering.
This module contains routines for regular and adaptive domain decomposition clustering.
Check the domain decomposition admissibility condition.
Checks the domain decomposition admissibility of two cluster trees and . The block is admissible, if and are two disjunct domain cluster or admissible_2_mincluster is TRUE.
s  Row cluster. 
t  Col cluster. 
data  Has to be a pointer to real. 
pcluster build_adaptive_dd_cluster  (  pclustergeometry  cg, 
uint  size,  
uint *  idx,  
uint  clf,  
psparsematrix  sp,  
uint  dim,  
uint *  flag  
) 
Build a cluster tree from a clustergeometry object using adaptive Domain Decomposition Clustering.
Builds an adaptive cluster tree basing on the geometrical informations of the clustergeometry object using a domain decomposition method. The indices are splitted into three sons, two of the sons (domain cluster) contain the indices correponding to two disconnected sub domains, the third one contains the indices of the separator. Therefore the sparsematrix is useful. The splitting is adaptive in the direction with the largest spatial extension and the index set is splitted accordingly, if its size is greater than the leaf size, else the cluster is a leaf cluster. During this clustering the bounding boxes are updated.
cg  Clustergeometry object with geometrical information. 
size  Number of indices. 
idx  Index set. 
clf  Maximal leaf size. 
sp  Sparsematrix, used for connectivity information. 
dim  Dimension of Clustering. 
flag  Auxiliary array, has to be initialised with zeros. 
pcluster build_adaptive_fromcluster_cluster  (  pcluster  ctri, 
pclustergeometry  cg,  
uint  size,  
uint *  idx,  
uint  clf,  
uint  dim  
) 
Build a cluster tree from a clustergeometry object basing on the clustering of the elements.
Builds a cluster tree basing on the geometrical informations of the clustergeometry object and the clustering of the elements stored in the cluster tree object ctri
. The indices are splitted into three sons, two of the sons (domain cluster) contain the indices correponding to two disconnected sub domains, the third one contains the indices of the separator. Therefore the sparsematrix is useful. The splitting is corresponding to the splitting of the cluster tree ctri
and the index set is splitted accordingly, if ctri
has sons, else the cluster is a leaf cluster. During this clustering the bounding boxes are updated.
ctri
should be built with one of the standard routines from cluster.h.ctri  Cluster tree object. 
cg  Clustergeometry object with geometrical information. 
size  Number of indices. 
idx  Index set. 
clf  Maximal leaf size, 
dim  Dimension of Clustering. 
pcluster build_regular_dd_cluster  (  pclustergeometry  cg, 
uint  size,  
uint *  idx,  
uint  clf,  
psparsematrix  sp,  
uint  dim,  
uint  direction,  
uint *  flag  
) 
Build a cluster tree from a clustergeometry object using regular Domain Decomposition Clustering.
Builds a regular cluster tree basing on the geometrical informations of the clustergeometry object using a domain decomposition method. The indices are splitted into three sons, two of the sons (domain clusters) contain the indices correponding to two disconnected sub domains, the third one contains the indices of the separator. Therefore the sparsematrix is useful. The splitting is regular. It starts with the forwarded direction and the following directions are chosen via cycling through all possible directions. If the size of the index set is greater than the leaf size, the cluster is splitted, else it is a leaf cluster. During this clustering the bounding boxes are updated.
cg  Clustergeometry object with geometrical information. 
size  Number of indices. 
idx  Index set. 
clf  Maximal leaf size. 
sp  Sparsematrix, used for connectivity information. 
dim  Dimension of Clustering. 
direction  Direction for the next splitting step. 
flag  Auxiliary array, has to be initialised with zeros. 