next up previous contents
Next: Bibliography Up: Datova struktura programu Previous: Ostatni   Contents

Domain decomposition

long  InitNSubdomains=1;
long  overlapp=1;
long  NSubdomains=0;
long  *ElementSubdomainId=NULL;
long  *SubdomainNumberOfElements=NULL;

Rozdeleni na podoblasti
long  *SubdomainDimension=NULL;
long **SubdomainProlongation=NULL;
long  *CurrentRestriction=NULL;

Rozhrani mezi jednotlivymi oblastmi a funkce na tomto rozhrani

/* SUBDOMAINS INTERFACES */
long **NSubBoundary=NULL; /* NSubBoundary[domain i][domain j] - number of sides on boundary between i,j */
long ***SubBoundaryList=NULL; /* SubBoundaryList[domain i][domain j][0...pocet] - seznam hran */
double ****ROBIN1Boundary=NULL; /* FUNCTIONS BETWEEN BOUNDARIES */
double ****ROBIN2Boundary=NULL; /* FUNCTIONS BETWEEN BOUNDARIES */
double ****RHOBoundary=NULL;

Lokalni problemy

/* local solvers */
sparse  *SubdomainS=NULL;
void   **DomainDecompositionUMF_Numeric=NULL;

double **UDD_LOCAL;
double **BDD_LOCAL;


long DomainDecompositionMaxDim=0;

/* Pointers to global vectors/matrices */
sparse *GlobalMatrixS; 
vector *GlobalVectorB;
vector *GlobalVectorU;

vector DDtemporary_global, DDtemporary_global_rhs,DDtemporary_local_solution,DDtemporary_local_rhs;

long ddevery=1;
double ddtime=0.2;



Petr Svacek 2007-06-02