Overture
Version 25
|
#include <Oges.h>
Public Types | |
enum | SparseStorageFormatEnum { uncompressed, compressedRow, other } |
enum | EquationSolverEnum { maximumNumberOfEquationSolvers =10 } |
enum | coefficientTypes { continuous =0, discrete =1 } |
enum | solvers { yale =1, harwell =2, bcg =3, sor =4, SLAP, PETSc } |
enum | conjugateGradientTypes { biConjugateGradient =0, biConjugateGradientSquared =1, GMRes =2, CGStab =3 } |
enum | conjugateGradientPreconditioners { none =0, diagonal =1, incompleteLU =2, SSOR =3 } |
Static Public Attributes | |
static int | debug =0 |
Protected Member Functions | |
void | setup () |
void | findExtraEquations () |
void | makeRightNullVector () |
void | generateMatrixError (const int nda, const int ieqn) |
void | generateMatrix (int &errorNumber) |
void | privateUpdateToMatchGrid () |
int | arraySize (const int grid, const int axis) |
int | arrayDims (const int grid, const int side, const int axis) |
int | equationNo (const int n, const int i1, const int i2, const int i3, const int grid) |
IntegerDistributedArray | equationNo (const int n, const Index &I1, const Index &I2, const Index &I3, const int grid) |
enum Oges::solvers |
Oges::Oges | ( | ) |
References setup().
Oges::Oges | ( | CompositeGrid & | cg | ) |
References cg, privateUpdateToMatchGrid(), CompositeGrid::reference(), and setup().
Oges::Oges | ( | MappedGrid & | mg | ) |
|
virtual |
References argc, argv, classify, debug, equationSolver, maximumNumberOfEquationSolvers, and printF().
bool Oges::activeGrid | ( | int | grid | ) | const |
|
inlineprotected |
References cg.
Referenced by equationToIndex(), and generateMatrix().
|
inlineprotected |
References cg, End, and Start.
Referenced by equationToIndex(), formMatrix(), generateMatrix(), and initialize().
int Oges::assignVector | ( | int | n, |
real * | x, | ||
realCompositeGridFunction & | u | ||
) |
int Oges::buildEquationSolvers | ( | OgesParameters::SolverEnum | solver | ) |
References Overture::abort(), equationSolver, OgesParameters::getSolverTypeName(), OgesParameters::harwell, OgesParameters::isAvailable(), mgcg, OgesParameters::multigrid, NULL, parameters, OgesParameters::PETSc, OgesParameters::PETScNew, EquationSolver::set(), Overture::shutDownPETSc, OgesParameters::SLAP, and OgesParameters::yale.
Referenced by initialize(), setCoefficientArray(), setCoefficientsAndBoundaryConditions(), setEquationAndBoundaryConditions(), setGrid(), solve(), and writePetscMatrixToFile().
bool Oges::canSolveInPlace | ( | ) | const |
References isSolverIterative(), parameters, preconditionBoundary, and OgesParameters::solveForTranspose.
Referenced by formMatrix().
References a, ia, ja, numberOfEquations, numberOfNonzeros, and OGES_RESIDUAL.
void Oges::determineErrors | ( | realCompositeGridFunction & | u, |
OGFunction & | exactSolution, | ||
int & | printOptions | ||
) |
References axis1, axis2, axis3, c, MappedGrid::center(), cg, MappedGrid::dimension(), End, equationToIndex(), extraEquationNumber, fabs(), ForExtendedIndex, doubleGridCollectionFunction::getComponentBase(), doubleGridCollectionFunction::getComponentBound(), MappedGrid::gridIndexRange(), i2, MappedGrid::isCellCentered(), mask, numberOfComponents, numberOfDimensions, numberOfExtraEquations, numberOfGrids, R, Start, and MappedGrid::vertex().
|
inlineprotected |
References axis1, axis2, axis3, cg, dimension, End, gridEquationBase, numberOfComponents, and Start.
Referenced by equationNo(), findExtraEquations(), and generateMatrix().
|
protected |
References equationNo(), and i2.
void Oges::equationToIndex | ( | const int | eqnNo0, |
int & | n, | ||
int & | i1, | ||
int & | i2, | ||
int & | i3, | ||
int & | grid | ||
) |
References arrayDims(), arraySize(), axis1, axis2, axis3, gridEquationBase, numberOfComponents, numberOfGrids, and Start.
Referenced by checkGrid(), Integrate::computeLeftNullVector(), determineErrors(), EquationSolver::getExtraEquationValues(), EquationSolver::setExtraEquationValues(), and writeMatrixGridInformationToFile().
int Oges::evaluateExtraEquation | ( | const realCompositeGridFunction & | u, |
real & | value, | ||
int | extraEquation = 0 |
||
) |
References assert, equationSolver, EquationSolver::evaluateExtraEquation(), NULL, parameters, and OgesParameters::solver.
int Oges::evaluateExtraEquation | ( | const realCompositeGridFunction & | u, |
real & | value, | ||
real & | sumOfExtraEquationCoefficients, | ||
int | extraEquation = 0 |
||
) |
References assert, equationSolver, EquationSolver::evaluateExtraEquation(), NULL, parameters, and OgesParameters::solver.
|
protected |
References axis1, axis2, axis3, c, cg, coeff, MappedGrid::dimension(), End, equationNo(), extraEquationNumber, i2, numberOfExtraEquations, numberOfGrids, doubleGridCollectionFunction::sparse, Start, and SparseRepForMGF::unused.
Referenced by initialize().
int Oges::formMatrix | ( | int & | numberOfEquations, |
int & | numberOfNonzeros, | ||
SparseStorageFormatEnum | storageFormat, | ||
bool | allocateSpace = TRUE , |
||
bool | factorMatrixInPlace = FALSE |
||
) |
References a, actualZeroRatio, EquationSolver::allocateMatrix(), arraySize(), assert, axis1, axis2, axis3, canSolveInPlace(), classify, coeff, OgesParameters::compatibilityConstraint, compressedRow, debug, doubleGridCollectionFunction::destroy(), equationSolver, OgesParameters::fillinRatio, generateMatrix(), getCPU(), ia, initialize(), initialized, ja, OgesParameters::keepCoefficientGridFunction, OgesParameters::matrixCutoff, nda, ndia, ndja, numberOfComponents, numberOfEquations, numberOfExtraEquations, numberOfGrids, numberOfNonzeros, numberOfNonzerosBound, other, parameters, REAL_EPSILON, rhs, shouldBeInitialized, sol, OgesParameters::solveForTranspose, OgesParameters::solver, floatGridCollectionFunction::sparse, sparseStorageFormat, stencilSize, useAllGrids, useThisGrid, and OgesParameters::zeroRatio.
Referenced by getMatrix(), YaleEquationSolver::solve(), HarwellEquationSolver::solve(), and SlapEquationSolver::solve().
int Oges::formRhsAndSolutionVectors | ( | realCompositeGridFunction & | u, |
realCompositeGridFunction & | f | ||
) |
References Overture::abort(), ListOfDoubleSerialArray::addElement(), assert, axis1, axis2, axis3, CC, cg, classify, CLASSIFYX, CS, debug, dimension, FF, OgesParameters::fixupRightHandSide, fl, FOR_3, getIndex(), ListOfDoubleSerialArray::getLength(), i2, ia, IG, CompositeGrid::interpolationPoint, CompositeGrid::interpoleeGrid, IP, isSolverIterative(), NULL, GenericGridCollection::numberOfComponentGrids(), numberOfComponents, GridCollection::numberOfDimensions(), numberOfGrids, CompositeGrid::numberOfInterpolationPoints, parameters, R, R0, rhs, OgesParameters::SLAP, sol, SOL, OgesParameters::solver, UG, ul, useAllGrids, useThis, useThisGrid, and UU.
Referenced by HarwellEquationSolver::solve(), YaleEquationSolver::solve(), and SlapEquationSolver::solve().
|
protected |
!! kkc 060731 shouldn't RIGHTNULL have "n" as a subscript!?
References A, a, Overture::abort(), arrayDims(), arraySize(), assert, axis1, axis2, axis3, c, CC, cg, CLASSIFYX, coeff, COEFF, coefficientsOfDenseExtraEquations, OgesParameters::compatibilityConstraint, compressedRow, debug, displayCoeff(), EquationSolver::displayMatrix(), End, EQUATION_NO, equationNo(), EQUATIONNUMBER, equationSolver, extraEquationNumber, fabs(), generateMatrixError(), getCPU(), gridEqnBase, gridEquationBase, i2, ia, IA, JA, ja, OgesParameters::matrixCutoff, max(), min(), nda, ndja, NULL, Overture::nullRealMappedGridFunction(), numberOfComponents, numberOfEquations, numberOfExtraEquations, numberOfGrids, numberOfNonzeros, other, OV_ABORT, parameters, OgesParameters::PETSc, printF(), QS2I1, REAL_MIN, RIGHTNULL, rightNullVector, s, S, EquationSolver::setMatrixElement(), OgesParameters::SLAP, OgesParameters::solveForTranspose, OgesParameters::solver, doubleGridCollectionFunction::sparse, sparseStorageFormat, SQR, SS2Y, Start, stencilSize, TRUE, SparseRepForMGF::unused, useAllGrids, and useThisGrid.
Referenced by formMatrix().
|
protected |
References numberOfEquations, parameters, and OgesParameters::zeroRatio.
Referenced by generateMatrix().
int Oges::get | ( | OgesParameters::OptionEnum | option, |
int & | value | ||
) | const |
Referenced by Ogmg::applyOgesSmoother(), and Ogmg::computeLeftNullVector().
int Oges::get | ( | OgesParameters::OptionEnum | option, |
real & | value | ||
) | const |
|
virtual |
int Oges::getCompatibilityConstraint | ( | ) | const |
References OgesParameters::compatibilityConstraint, and parameters.
int Oges::getExtraEquationValues | ( | const realCompositeGridFunction & | u, |
real * | value | ||
) |
References assert, equationSolver, EquationSolver::getExtraEquationValues(), NULL, parameters, and OgesParameters::solver.
int Oges::getMatrix | ( | IntegerArray & | ia, |
IntegerArray & | ja, | ||
RealArray & | a, | ||
SparseStorageFormatEnum | format = compressedRow |
||
) |
real Oges::getMaximumResidual | ( | ) | const |
References equationSolver, EquationSolver::getMaximumResidual(), NULL, parameters, and OgesParameters::solver.
Referenced by Ogmg::applyOgesSmoother(), Ogmg::coarseGridSolverTest(), Ogmg::computeLeftNullVector(), and Integrate::computeWeights().
int Oges::getNumberOfIterations | ( | ) |
References numberOfIterations.
Referenced by Ogmg::applyOgesSmoother(), Ogmg::coarseGridSolverTest(), Ogmg::computeLeftNullVector(), and Ogmg::cycle().
const IntegerArray & Oges::getUseThisGrid | ( | ) | const |
References useThisGrid.
int Oges::initialize | ( | ) |
References arraySize(), axis1, axis2, axis3, buildEquationSolvers(), coefficientsOfDenseExtraEquations, OgesParameters::compatibilityConstraint, debug, doubleGridCollectionFunction::destroy(), equationSolver, FALSE, findExtraEquations(), gridEquationBase, initialized, makeRightNullVector(), NULL, numberOfComponents, numberOfExtraEquations, numberOfGrids, parameters, OgesParameters::PETScNew, rightNullVector, shouldBeInitialized, OgesParameters::solver, and OgesParameters::THEuserSuppliedCompatibilityConstraint.
Referenced by checkGrid(), Integrate::computeLeftNullVector(), Ogmg::computeLeftNullVector(), formMatrix(), setCoefficientsAndBoundaryConditions(), and updateToMatchGrid().
bool Oges::isSolverIterative | ( | ) | const |
References OgesParameters::multigrid, parameters, OgesParameters::PETSc, OgesParameters::PETScNew, OgesParameters::SLAP, and OgesParameters::solver.
Referenced by canSolveInPlace(), checkGrid(), Ogmg::coarseGridSolverTest(), Ogmg::computeLeftNullVector(), Ogmg::cycle(), formRhsAndSolutionVectors(), and Ogmg::fullMultigrid().
|
protected |
References SparseRepForMGF::boundary, c, cg, coeff, MappedGrid::dimension(), getIndex(), SparseRepForMGF::interior, nullRange, OgesParameters::nullVectorScaling, numberOfGrids, parameters, rightNullVector, doubleGridCollectionFunction::sparse, doubleCompositeGridFunction::updateToMatchGrid(), and OgesParameters::userSuppliedCompatibilityConstraint.
Referenced by initialize().
References a, ia, ja, numberOfEquations, numberOfNonzeros, and OGES_MAT_VECT.
References bcData, boundaryConditions, constantCoefficients, and equationToSolve.
int Oges::outputSparseMatrix | ( | const aString & | fileName | ) |
References a, compressedRow, ia, initialized, ja, numberOfEquations, numberOfNonzeros, other, printF(), sparseStorageFormat, and uncompressed.
int Oges::printObsoleteMessage | ( | const aString & | routineName, |
int | option = 0 |
||
) |
Referenced by setCompatibilityConstraint(), setConjugateGradientNumberOfIterations(), setConjugateGradientNumberOfSaveVectors(), setConjugateGradientPreconditioner(), setConjugateGradientTolerance(), setConjugateGradientType(), setFillinRatio(), setFillinRatio2(), setHarwellTolerance(), setIterativeImprovement(), setMatrixCutoff(), setNullVectorScaling(), setSolverType(), setSorNumberOfIterations(), setSorOmega(), setSorTolerance(), and setZeroRatio().
int Oges::printStatistics | ( | FILE * | file = stdout | ) | const |
References NULL.
|
protected |
References cg, GenericGridCollection::numberOfComponentGrids(), numberOfDimensions, GridCollection::numberOfDimensions(), and numberOfGrids.
Referenced by Oges(), setCompositeGrid(), setGrid(), and updateToMatchGrid().
|
virtual |
void Oges::reference | ( | const Oges & | ) |
int Oges::set | ( | OgesParameters::SolverEnum | option | ) |
References parameters, and OgesParameters::set().
Referenced by Ogmg::applyOgesSmoother(), checkGrid(), Ogmg::coarseGridSolverTest(), Integrate::computeLeftNullVector(), Ogmg::computeLeftNullVector(), and Integrate::computeWeights().
int Oges::set | ( | OgesParameters::SolverMethodEnum | option | ) |
References parameters, and OgesParameters::set().
int Oges::set | ( | OgesParameters::MatrixOrderingEnum | option | ) |
References parameters, and OgesParameters::set().
int Oges::set | ( | OgesParameters::PreconditionerEnum | option | ) |
References parameters, and OgesParameters::set().
int Oges::set | ( | OgesParameters::OptionEnum | option, |
int | value = 0 |
||
) |
References parameters, and OgesParameters::set().
int Oges::set | ( | OgesParameters::OptionEnum | option, |
float | value | ||
) |
References parameters, and OgesParameters::set().
int Oges::set | ( | OgesParameters::OptionEnum | option, |
double | value | ||
) |
References parameters, and OgesParameters::set().
void Oges::set | ( | MultigridCompositeGrid & | mgcg_ | ) |
Supply a MultigridCompositeGrid (for use with the multigrid solver Ogmg).
mgcg | (input) : use this object to hold the multigrid hierarchy. |
The MultigridCompositeGrid object can be used to share a multigrid hierarchy amongst different applications and means that the coarse grid levels need only be generated once.
References mgcg, and MultigridCompositeGrid::reference().
int Oges::setCoefficientArray | ( | realCompositeGridFunction & | coeff, |
const IntegerArray & | boundaryConditions = Overture::nullIntArray() , |
||
const RealArray & | bcData = Overture::nullRealArray() |
||
) |
References Overture::abort(), buildEquationSolvers(), cg, coeff, equationSolver, doubleGridCollectionFunction::getIsACoefficientMatrix(), OgesParameters::multigrid, NULL, GenericGridCollection::numberOfComponentGrids(), numberOfComponents, parameters, doubleCompositeGridFunction::reference(), EquationSolver::setCoefficientArray(), shouldBeInitialized, OgesParameters::solver, doubleGridCollectionFunction::sparse, stencilSize, useAllGrids, and useThisGrid.
Referenced by Ogmg::applyOgesSmoother(), Ogmg::buildCoefficientArrays(), checkGrid(), Integrate::computeLeftNullVector(), Ogmg::computeLeftNullVector(), Integrate::computeWeights(), main(), and setCoefficientsAndBoundaryConditions().
int Oges::setCoefficientArray | ( | realMappedGridFunction & | coeff, |
const IntegerArray & | boundaryConditions = Overture::nullIntArray() , |
||
const RealArray & | bcData = Overture::nullRealArray() |
||
) |
References cg, coeff, doubleMappedGridFunction::getComponentBase(), doubleMappedGridFunction::getComponentBound(), doubleMappedGridFunction::getIsACoefficientMatrix(), nullRange, SparseRepForMGF::numberOfComponents, numberOfComponents, doubleCompositeGridFunction::reference(), shouldBeInitialized, doubleMappedGridFunction::sparse, SparseRepForMGF::stencilSize, stencilSize, and doubleCompositeGridFunction::updateToMatchGrid().
int Oges::setCoefficientsAndBoundaryConditions | ( | realCompositeGridFunction & | coeff0, |
const IntegerArray & | boundaryConditions, | ||
const RealArray & | bcData | ||
) |
Supply matrix coefficients and boundary conditions (new way).
This function should be used in the following fashion:
coeff0 | (input): Here are the coefficients. Oges will keep a reference to this grid function. |
boundaryConditions(0:1,0:2,numberOfComponentGrids) | (input) : optionally supply boundary conditions. These are currently needed by the multigrid solver. |
bcData | : data for the boundary conditions. |
References buildEquationSolvers(), equationSolver, initialize(), OgesParameters::multigrid, NULL, parameters, setCoefficientArray(), EquationSolver::setCoefficientsAndBoundaryConditions(), OgesParameters::solver, and solverJob.
void Oges::setCoefficientType | ( | const coefficientTypes | coefficientType | ) |
References coefficientType.
void Oges::setCompatibilityConstraint | ( | const bool | trueOrFalse | ) |
void Oges::setCompositeGrid | ( | CompositeGrid & | cg | ) |
References cg, privateUpdateToMatchGrid(), CompositeGrid::reference(), shouldBeInitialized, and TRUE.
void Oges::setConjugateGradientNumberOfIterations | ( | const int | conjugateGradientNumberOfIterations | ) |
void Oges::setConjugateGradientNumberOfSaveVectors | ( | const int | conjugateGradientNumberOfSaveVectors | ) |
void Oges::setConjugateGradientPreconditioner | ( | const conjugateGradientPreconditioners | conjugateGradientPreconditioner | ) |
void Oges::setConjugateGradientTolerance | ( | const real | conjugateGradientTolerance | ) |
References parameters, printObsoleteMessage(), OgesParameters::set(), and OgesParameters::THEtolerance.
void Oges::setConjugateGradientType | ( | const conjugateGradientTypes | conjugateGradientType | ) |
int Oges::setEquationAndBoundaryConditions | ( | OgesParameters::EquationEnum | equation, |
CompositeGridOperators & | op, | ||
const IntegerArray & | boundaryConditions_, | ||
const RealArray & | bcData_, | ||
RealArray & | constantCoeff = Overture::nullRealArray() , |
||
realCompositeGridFunction * | varCoeff = NULL |
||
) |
!Define a predefined equation ** this is new ****
equation | : defines the equation. If you are supplying a coefficient matrix as a grid function then equation==userDefined. If you want to solve a predefined equation choose equation==laplaceEquation or ... |
boundaryConditions(side,axis,grid) | : defines boundary conditions as dirichlet, neumann, mixed, dirichletAndEvenSymmetry, dirichletAndOddSymmetry, extrapolate (defined by the BoundaryConditionEnum). |
bcData(0:*,side,axis,grid) | : for a mixed boundary condition a(0)=bcData(0,side,axis,grid). For extrapolation, orderOfExtrapolation=bcData(0,side,axis,grid) where 0 means use the default of orderOfExtrapolation=orderOfAccuracy+1 |
References BoundaryConditionParameters::a, Overture::abort(), doubleCompositeGridFunction::applyBoundaryConditionCoefficients(), assert, axis2, OgesParameters::axisymmetric, bcData, BCTypes::boundary1, boundaryConditions, buildEquationSolvers(), c, cg, coeff, constantCoefficients, debug, MappedGrid::dimension(), BCTypes::dirichlet, OgesParameters::dirichlet, OgesParameters::dirichletAndEvenSymmetry, OgesParameters::dirichletAndOddSymmetry, MappedGridOperators::divergenceScalarGradient, OgesParameters::divScalarGradHeatEquationOperator, OgesParameters::divScalarGradOperator, dx, equationSolver, equationToSolve, BCTypes::evenSymmetry, BCTypes::extrapolate, OgesParameters::extrapolate, doubleCompositeGridFunction::finishBoundaryConditions(), ForBoundary, getBoundaryIndex(), getIndex(), ParallelUtility::getLocalArrayBounds(), getLocalArrayWithGhostBoundaries(), GenericCompositeGridOperators::getOrderOfAccuracy(), MappedGrid::getRectangularGridParameters(), BoundaryConditionParameters::ghostLineToAssign, MappedGrid::gridIndexRange(), OgesParameters::heatEquationOperator, i2, OgesParameters::isAxisymmetric, MappedGrid::isRectangular(), OgesParameters::laplaceEquation, MappedGridOperators::laplacianOperator, M, MappedGrid::mask(), max(), BCTypes::mixed, OgesParameters::mixed, OgesParameters::multigrid, multiply(), BCTypes::neumann, OgesParameters::neumann, NULL, GenericGridCollection::numberOfComponentGrids(), GridCollection::numberOfDimensions(), MappedGrid::numberOfDimensions(), BCTypes::oddSymmetry, BoundaryConditionParameters::orderOfExtrapolation, OgesParameters::orderOfExtrapolation, parameters, pow(), printF(), REAL_MIN, EquationSolver::setEquationAndBoundaryConditions(), doubleCompositeGridFunction::setIsACoefficientMatrix(), doubleCompositeGridFunction::setOperators(), GenericCompositeGridOperators::setStencilSize(), OgesParameters::solver, stencilSize, OgesParameters::THEcompatibilityConstraint, MappedGrid::THEvertex, MappedGrid::update(), doubleCompositeGridFunction::updateToMatchGrid(), updateToMatchGrid(), OgesParameters::variableHeatEquationOperator, MappedGrid::vertex(), MappedGridOperators::yDerivative, YY, and MappedGridOperators::yyDerivative.
void Oges::setEvaluateJacobian | ( | const int | EvaluateJacobian | ) |
References evaluateJacobian.
int Oges::setExtraEquationValues | ( | realCompositeGridFunction & | f, |
real * | value | ||
) |
References assert, equationSolver, NULL, parameters, EquationSolver::setExtraEquationValues(), and OgesParameters::solver.
Referenced by Ogmg::computeLeftNullVector(), and Ogmg::cycle().
void Oges::setFillinRatio | ( | const real | fillinRatio | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setFillinRatio2 | ( | const real | fillinRatio2 | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setFixupRightHandSide | ( | const bool | trueOrFalse | ) |
void Oges::setGrid | ( | CompositeGrid & | cg, |
bool | outOfDate = true |
||
) |
References buildEquationSolvers(), cg, equationSolver, mgcg, OgesParameters::multigrid, NULL, parameters, printF(), privateUpdateToMatchGrid(), CompositeGrid::reference(), EquationSolver::setGrid(), MultigridCompositeGrid::setGridIsUpToDate(), shouldBeInitialized, and OgesParameters::solver.
Referenced by Ogmg::buildCoefficientArrays().
void Oges::setGrid | ( | MappedGrid & | mg, |
bool | outOfDate = true |
||
) |
void Oges::setGridName | ( | const aString & | name | ) |
/brief Set the name for the composite grid. /param name (input) : name for the composite grid (used for labels for e.g.)
References gridName.
int Oges::setGridsToUse | ( | const IntegerArray & | gridsToUse | ) |
References cg, min(), GenericGridCollection::numberOfComponentGrids(), useAllGrids, and useThisGrid.
Referenced by Ogmg::applyOgesSmoother().
void Oges::setHarwellTolerance | ( | const real | harwellTolerance | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setIterativeImprovement | ( | const int | trueOrFalse | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setMatrixCutoff | ( | const real | matrixCutoff | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setNullVectorScaling | ( | const real & | scale | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setNumberOfComponents | ( | const int | numberOfComponents | ) |
int Oges::setOgesParameters | ( | const OgesParameters & | opar | ) |
References parameters.
Referenced by Ogmg::applyOgesSmoother(), and Ogmg::computeLeftNullVector().
void Oges::setOrderOfAccuracy | ( | const int | order | ) |
void Oges::setPreconditionBoundary | ( | const int | preconditionBoundary | ) |
References preconditionBoundary, shouldBeInitialized, and TRUE.
void Oges::setPreconditionRightHandSide | ( | const int | preconditionRightHandSide | ) |
References preconditionRightHandSide, shouldBeInitialized, and TRUE.
void Oges::setRefactor | ( | const int | refactor | ) |
References refactor.
Referenced by checkGrid().
void Oges::setReorder | ( | const int | reorder | ) |
References reorder.
Referenced by checkGrid().
void Oges::setSolverJob | ( | const int | solverJob | ) |
References solverJob.
void Oges::setSolverName | ( | const aString & | name | ) |
/brief Set the name of this instance of Ogmg (for info in debug files etc.) /param name (input) : name for this instnace of Ogmg.
References solverName.
void Oges::setSolverType | ( | const solvers | solverType | ) |
void Oges::setSorNumberOfIterations | ( | const int | sorNumberOfIterations | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setSorOmega | ( | const real | sorOmega | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setSorTolerance | ( | const real | sorTolerance | ) |
References Overture::abort(), and printObsoleteMessage().
void Oges::setTranspose | ( | const int | transpose | ) |
|
protected |
References argc, argv, classify, coefficientsOfDenseExtraEquations, equationSolver, equationToSolve, gridName, initialized, maximumNumberOfEquationSolvers, NULL, numberOfComponents, numberOfExtraEquations, numberOfGrids, numberOfIterations, preconditionBoundary, preconditionRightHandSide, recomputePreconditioner, refactor, reorder, shouldBeInitialized, solverJob, solverName, solvingSparseSubset, sparseStorageFormat, stencilSize, uncompressed, useAllGrids, and OgesParameters::userDefined.
Referenced by Oges().
void Oges::setZeroRatio | ( | const real | zeroRatio | ) |
References Overture::abort(), and printObsoleteMessage().
int Oges::solve | ( | realCompositeGridFunction & | u, |
realCompositeGridFunction & | f | ||
) |
References Overture::abort(), assert, buildEquationSolvers(), equationSolver, doubleGridCollectionFunction::getComponentDimension(), OgesParameters::getSolverTypeName(), maximumNumberOfEquationSolvers, NULL, numberOfComponents, parameters, printF(), EquationSolver::solve(), and OgesParameters::solver.
Referenced by Ogmg::applyOgesSmoother(), checkGrid(), Ogmg::coarseGridSolverTest(), Integrate::computeLeftNullVector(), Ogmg::computeLeftNullVector(), Integrate::computeWeights(), Ogmg::cycle(), main(), and solve().
int Oges::solve | ( | realMappedGridFunction & | u, |
realMappedGridFunction & | f | ||
) |
int Oges::storeSolutionIntoGridFunction | ( | ) |
References assert, CC, cg, CS, ia, GenericGridCollection::numberOfComponentGrids(), numberOfComponents, R, R0, sol, SOL, UG, ul, useAllGrids, and useThisGrid.
Referenced by HarwellEquationSolver::solve(), YaleEquationSolver::solve(), and SlapEquationSolver::solve().
int Oges::storeVector | ( | int | n, |
real * | x, | ||
realCompositeGridFunction & | u | ||
) |
int Oges::update | ( | GenericGraphicsInterface & | gi, |
CompositeGrid & | cg | ||
) |
References parameters, and OgesParameters::update().
int Oges::updateToMatchGrid | ( | CompositeGrid & | cg | ) |
int Oges::updateToMatchGrid | ( | MappedGrid & | mg | ) |
References cg, CompositeGrid::EVERYTHING, MappedGrid::EVERYTHING, GenericGridCollection::geometryHasChanged(), initialize(), MappedGrid::numberOfDimensions(), privateUpdateToMatchGrid(), CompositeGrid::reference(), CompositeGrid::setNumberOfDimensionsAndGrids(), solverJob, and CompositeGrid::updateReferences().
int Oges::writeMatrixGridInformationToFile | ( | aString | fileName | ) |
References SparseRepForMGF::boundary, coeff, equationToIndex(), SparseRepForMGF::extrapolation, SparseRepForMGF::ghost1, SparseRepForMGF::ghost2, SparseRepForMGF::ghost3, SparseRepForMGF::ghost4, i2, SparseRepForMGF::interior, SparseRepForMGF::interpolation, numberOfEquations, SparseRepForMGF::periodic, doubleGridCollectionFunction::sparse, and SparseRepForMGF::unused.
int Oges::writeMatrixToFile | ( | aString | fileName | ) |
References a, compressedRow, ia, initialized, ja, numberOfEquations, numberOfNonzeros, other, printF(), sparseStorageFormat, and uncompressed.
int Oges::writePetscMatrixToFile | ( | aString | filename, |
realCompositeGridFunction & | u, | ||
realCompositeGridFunction & | f | ||
) |
RealArray Oges::a |
real Oges::actualFillinRatio |
Referenced by HarwellEquationSolver::solve(), and YaleEquationSolver::solve().
real Oges::actualFillinRatio2 |
Referenced by HarwellEquationSolver::solve().
real Oges::actualZeroRatio |
Referenced by formMatrix().
int Oges::argc |
Referenced by setCommandLineArguments(), setup(), and ~Oges().
char** Oges::argv |
Referenced by setCommandLineArguments(), setup(), and ~Oges().
|
protected |
Referenced by operator=(), and setEquationAndBoundaryConditions().
|
protected |
Referenced by operator=(), and setEquationAndBoundaryConditions().
CompositeGrid Oges::cg |
Referenced by arrayDims(), arraySize(), determineErrors(), equationNo(), findExtraEquations(), formRhsAndSolutionVectors(), generateMatrix(), makeRightNullVector(), Oges(), privateUpdateToMatchGrid(), setCoefficientArray(), setCompositeGrid(), MultigridEquationSolver::setEquationAndBoundaryConditions(), setEquationAndBoundaryConditions(), MultigridEquationSolver::setGrid(), setGrid(), setGridsToUse(), MultigridEquationSolver::solve(), solve(), storeSolutionIntoGridFunction(), and updateToMatchGrid().
intArray* Oges::classify |
Referenced by formMatrix(), formRhsAndSolutionVectors(), setup(), and ~Oges().
realCompositeGridFunction Oges::coeff |
realCompositeGridFunction* Oges::coefficientsOfDenseExtraEquations |
Referenced by generateMatrix(), initialize(), and setup().
coefficientTypes Oges::coefficientType |
Referenced by setCoefficientType().
|
protected |
Referenced by operator=(), and setEquationAndBoundaryConditions().
|
static |
Referenced by YaleEquationSolver::allocateWorkSpace(), Ogmg::coarseGridSolverTest(), formMatrix(), formRhsAndSolutionVectors(), generateMatrix(), EquationSolver::getExtraEquationValues(), getMatrix(), initialize(), MultigridEquationSolver::setEquationAndBoundaryConditions(), setEquationAndBoundaryConditions(), EquationSolver::setExtraEquationValues(), MultigridEquationSolver::setGrid(), YaleEquationSolver::solve(), MultigridEquationSolver::solve(), HarwellEquationSolver::solve(), SlapEquationSolver::solve(), Interpolant::testInterpolation(), OgmgParameters::update(), OgesParameters::update(), and ~Oges().
EquationSolver* Oges::equationSolver[maximumNumberOfEquationSolvers] |
Referenced by buildEquationSolvers(), evaluateExtraEquation(), formMatrix(), generateMatrix(), getExtraEquationValues(), getMaximumResidual(), initialize(), setCoefficientArray(), setCoefficientsAndBoundaryConditions(), setEquationAndBoundaryConditions(), setExtraEquationValues(), setGrid(), setup(), solve(), writePetscMatrixToFile(), and ~Oges().
|
protected |
Referenced by operator=(), setEquationAndBoundaryConditions(), and setup().
int Oges::evaluateJacobian |
Referenced by setEvaluateJacobian().
IntegerArray Oges::extraEquationNumber |
ListOfRealSerialArray Oges::fl |
Referenced by formRhsAndSolutionVectors().
|
protected |
Referenced by equationNo(), equationToIndex(), generateMatrix(), and initialize().
aString Oges::gridName |
Referenced by MultigridEquationSolver::MultigridEquationSolver(), setGridName(), and setup().
IntegerArray Oges::ia |
Referenced by computeResidual(), formMatrix(), formRhsAndSolutionVectors(), generateMatrix(), getMatrix(), matrixVectorMultiply(), outputSparseMatrix(), YaleEquationSolver::solve(), HarwellEquationSolver::solve(), SlapEquationSolver::solve(), storeSolutionIntoGridFunction(), and writeMatrixToFile().
int Oges::initialized |
Referenced by formMatrix(), getMatrix(), initialize(), outputSparseMatrix(), MultigridEquationSolver::setCoefficientsAndBoundaryConditions(), MultigridEquationSolver::setEquationAndBoundaryConditions(), setup(), MultigridEquationSolver::solve(), YaleEquationSolver::solve(), HarwellEquationSolver::solve(), SlapEquationSolver::solve(), and writeMatrixToFile().
IntegerArray Oges::ja |
real Oges::maximumResidual |
MultigridCompositeGrid Oges::mgcg |
Referenced by buildEquationSolvers(), set(), and setGrid().
int Oges::nda |
int Oges::ndia |
Referenced by formMatrix(), YaleEquationSolver::solve(), HarwellEquationSolver::solve(), and SlapEquationSolver::solve().
int Oges::ndja |
int Oges::numberOfComponents |
int Oges::numberOfDimensions |
int Oges::numberOfEquations |
int Oges::numberOfExtraEquations |
int Oges::numberOfGrids |
int Oges::numberOfIterations |
int Oges::numberOfNonzeros |
int Oges::numberOfNonzerosBound |
Referenced by formMatrix(), YaleEquationSolver::solve(), and HarwellEquationSolver::solve().
OgesParameters Oges::parameters |
Referenced by buildEquationSolvers(), canSolveInPlace(), Integrate::computeWeights(), evaluateExtraEquation(), formMatrix(), formRhsAndSolutionVectors(), generateMatrix(), generateMatrixError(), getCompatibilityConstraint(), getExtraEquationValues(), getMatrix(), getMaximumResidual(), initialize(), isSolverIterative(), makeRightNullVector(), set(), setCoefficientArray(), MultigridEquationSolver::setCoefficientsAndBoundaryConditions(), setCoefficientsAndBoundaryConditions(), setCompatibilityConstraint(), setConjugateGradientNumberOfIterations(), setConjugateGradientNumberOfSaveVectors(), setConjugateGradientPreconditioner(), setConjugateGradientTolerance(), setConjugateGradientType(), MultigridEquationSolver::setEquationAndBoundaryConditions(), setEquationAndBoundaryConditions(), setExtraEquationValues(), MultigridEquationSolver::setGrid(), setGrid(), setOgesParameters(), MultigridEquationSolver::solve(), solve(), and update().
int Oges::preconditionBoundary |
Referenced by canSolveInPlace(), setPreconditionBoundary(), and setup().
int Oges::preconditionRightHandSide |
Referenced by setPreconditionRightHandSide(), and setup().
bool Oges::recomputePreconditioner |
Referenced by setup().
int Oges::refactor |
Referenced by getMatrix(), setRefactor(), setup(), HarwellEquationSolver::solve(), YaleEquationSolver::solve(), and SlapEquationSolver::solve().
int Oges::reorder |
Referenced by setReorder(), setup(), HarwellEquationSolver::solve(), YaleEquationSolver::solve(), and SlapEquationSolver::solve().
RealArray Oges::rhs |
realCompositeGridFunction Oges::rightNullVector |
Referenced by checkGrid(), EquationSolver::evaluateExtraEquation(), generateMatrix(), initialize(), and makeRightNullVector().
bool Oges::shouldBeInitialized |
Referenced by formMatrix(), getMatrix(), initialize(), setCoefficientArray(), MultigridEquationSolver::setCoefficientsAndBoundaryConditions(), setCompatibilityConstraint(), setCompositeGrid(), MultigridEquationSolver::setEquationAndBoundaryConditions(), setGrid(), setPreconditionBoundary(), setPreconditionRightHandSide(), setSolverType(), setup(), HarwellEquationSolver::solve(), YaleEquationSolver::solve(), MultigridEquationSolver::solve(), and SlapEquationSolver::solve().
RealArray Oges::sol |
int Oges::solverJob |
Referenced by getMatrix(), setCoefficientsAndBoundaryConditions(), setSolverJob(), setup(), and updateToMatchGrid().
aString Oges::solverName |
Referenced by MultigridEquationSolver::MultigridEquationSolver(), setSolverName(), and setup().
int Oges::solvingSparseSubset |
Referenced by setup(), and YaleEquationSolver::solve().
enum Oges::SparseStorageFormatEnum Oges::sparseStorageFormat |
Referenced by formMatrix(), generateMatrix(), outputSparseMatrix(), setup(), and writeMatrixToFile().
int Oges::stencilSize |
ListOfRealSerialArray Oges::ul |
Referenced by formRhsAndSolutionVectors(), and storeSolutionIntoGridFunction().
realCompositeGridFunction Oges::uLinearized |
|
protected |
|
protected |