![]() |
Timothy
0.9
Tissue Modelling Framework
|
contains functions used for solving chemical global fields More...
#include <float.h>
#include "_hypre_utilities.h"
#include "HYPRE_sstruct_ls.h"
#include "HYPRE_parcsr_ls.h"
#include "HYPRE_krylov.h"
#include "global.h"
#include "fields.h"
Go to the source code of this file.
Functions | |
void | chemSetBoundary (int coord, int boundary) |
void | chemEnvInitSystem (int nch) |
void | chemEnvCellPC (int nch) |
void | chemEnvInitBC (int nch) |
void | chemEnvInitSolver (int nch) |
void | chemEnvSolve (int nch) |
Variables | |
HYPRE_SStructGrid | chemGrid [NCHEM] |
HYPRE_SStructGraph | chemGraph [NCHEM] |
HYPRE_SStructStencil | chemStencil [NCHEM] |
HYPRE_SStructMatrix | chemA [NCHEM] |
HYPRE_SStructVector | chemb [NCHEM] |
HYPRE_SStructVector | chemx [NCHEM] |
HYPRE_ParCSRMatrix | chemParA [NCHEM] |
HYPRE_ParVector | chemParb [NCHEM] |
HYPRE_ParVector | chemParx [NCHEM] |
HYPRE_Solver | chemSolver [NCHEM] |
HYPRE_Solver | chemPrecond [NCHEM] |
int | chemObjectType |
long long | chemLower [3] |
long long | chemUpper [3] |
long long | bcLower [3] |
long long | bcUpper [3] |
double | dt [NCHEM] |
double | chemLambda = 0.25 |
char | chfname [256] |
int | chemIter [NCHEM] |
double | chemZ [NCHEM] |
HYPRE_SStructVariable | chemVartypes [1] = { HYPRE_SSTRUCT_VARIABLE_NODE } |
int | numberOfIters |
double * | chemPC |
contains functions used for solving chemical global fields
Definition in file chemf.c.
void chemEnvCellPC | ( | int | nch | ) |
This function computes cell production/consumption function based on the interpolated cell density field.
Definition at line 241 of file chemf.c.
References chemPC, densityField, dt, fieldConsumption, fieldProduction, gridSize, NGLOB, step, int64Vector3d::x, int64Vector3d::y, and int64Vector3d::z.
void chemEnvInitBC | ( | int | nch | ) |
This function initializes boundary conditions for a given chemical field.
Definition at line 260 of file chemf.c.
References bcLower, bcUpper, chemA, chemb, chemEnvCellPC(), chemGrid, chemLower, chemObjectType, chemPC, chemSetBoundary(), chemUpper, chemx, chemZ, chfname, fieldBC, fieldICMean, gridSize, m, MPI_CART_COMM, MPIcoords, MPIdim, MPIrank, NGLOB, revertStdOut(), switchStdOut(), int64Vector3d::x, int64Vector3d::y, and int64Vector3d::z.
void chemEnvInitSolver | ( | int | nch | ) |
This function initializes Hypre for solving a given chemical field.
Definition at line 390 of file chemf.c.
References chemA, chemb, chemParA, chemParb, chemParx, chemPrecond, chemSolver, chemx, chfname, MPI_CART_COMM, revertStdOut(), and switchStdOut().
void chemEnvInitSystem | ( | int | nch | ) |
This function initializes grid, stencil and matrix for a given chemical field.
Definition at line 130 of file chemf.c.
References cellFields, chemA, chemField, chemGraph, chemGrid, chemIter, chemLower, chemObjectType, chemStencil, chemUpper, chemVartypes, chemZ, chfname, csize, csizeInUnits, dt, fieldDiffCoef, fieldDt, fieldICMean, fieldLambda, fieldMax, fieldMin, gridEndIdx, gridResolution, gridSize, gridStartIdx, logdir, maxCellsPerProc, MPI_CART_COMM, MPIrank, NGLOB, numberOfIters, revertStdOut(), switchStdOut(), int64Vector3d::x, int64Vector3d::y, and int64Vector3d::z.
void chemEnvSolve | ( | int | nch | ) |
This is a driving function for solving next time step of a given chemical field.
Definition at line 431 of file chemf.c.
References bcLower, bcUpper, chemb, chemEnvCellPC(), chemField, chemIter, chemLower, chemParA, chemParb, chemParx, chemPC, chemSetBoundary(), chemSolver, chemUpper, chemx, chemZ, chfname, fieldBC, fieldMax, fieldMin, fieldName, gfIter, gfIterPerStep, gridSize, MPIcoords, MPIdim, MPIrank, NGLOB, numberOfIters, revertStdOut(), statOutStep, step, switchStdOut(), int64Vector3d::x, int64Vector3d::y, and int64Vector3d::z.
void chemSetBoundary | ( | int | coord, |
int | boundary | ||
) |
HYPRE_SStructVariable chemVartypes[1] = { HYPRE_SSTRUCT_VARIABLE_NODE } |