Overture
Version 25
|
#include <MultigridEquationSolver.h>
Public Member Functions | |
MultigridEquationSolver (Oges &oges_) | |
virtual | ~MultigridEquationSolver () |
virtual int | solve (realCompositeGridFunction &u, realCompositeGridFunction &f) |
virtual int | setCoefficientsAndBoundaryConditions (realCompositeGridFunction &coeff, const IntegerArray &boundaryConditions, const RealArray &bcData) |
Use this function in combination with setGrid(..) | |
virtual int | setCoefficientArray (realCompositeGridFunction &coeff, const IntegerArray &boundaryConditions=Overture::nullIntArray(), const RealArray &bcData=Overture::nullRealArray()) |
virtual int | setEquationAndBoundaryConditions (OgesParameters::EquationEnum equation, CompositeGridOperators &op, const IntegerArray &boundaryConditions, const RealArray &bcData, RealArray &constantCoeff=Overture::nullRealArray(), realCompositeGridFunction *variableCoeff=NULL) |
virtual int | setGrid (CompositeGrid &cg) |
Supply a new grid. This will build the multigrid levels. | |
virtual int | set (MultigridCompositeGrid &mgcg) |
Set the MultigridCompositeGrid to use: (for use with Ogmg) | |
virtual int | printStatistics (FILE *file=stdout) const |
virtual real | sizeOf (FILE *file=NULL) |
Public Member Functions inherited from EquationSolver | |
EquationSolver (Oges &oges_) | |
virtual | ~EquationSolver () |
virtual int | saveBinaryMatrix (aString filename00, realCompositeGridFunction &u, realCompositeGridFunction &f) |
const aString & | getName () const |
virtual real | getMaximumResidual () |
virtual int | setExtraEquationValues (realCompositeGridFunction &f, real *value) |
virtual int | getExtraEquationValues (const realCompositeGridFunction &u, real *value) |
virtual int | evaluateExtraEquation (const realCompositeGridFunction &u, real &value, int extraEquation=0) |
virtual int | evaluateExtraEquation (const realCompositeGridFunction &u, real &value, real &sumOfExtraEquationCoefficients, int extraEquation=0) |
virtual int | allocateMatrix (int, int, int, int) |
virtual int | setMatrixElement (int, int, int, real) |
virtual int | displayMatrix () |
Protected Attributes | |
Ogmg | ogmg |
Protected Attributes inherited from EquationSolver | |
Oges & | oges |
OgesParameters & | parameters |
aString | name |
int | numberOfEquations |
int | numberOfNonzeros |
real | maximumResidual |
int | numberOfIterations |
int | solverMethod |
int | preconditioner |
int | matrixOrdering |
int | numberOfIncompleteLULevels |
int | gmresRestartLength |
MultigridEquationSolver::MultigridEquationSolver | ( | Oges & | oges_ | ) |
|
virtual |
|
virtual |
Reimplemented from EquationSolver.
|
virtual |
Set the MultigridCompositeGrid to use: (for use with Ogmg)
Reimplemented from EquationSolver.
References ogmg, and Ogmg::set().
|
virtual |
Reimplemented from EquationSolver.
References ogmg, and Ogmg::setCoefficientArray().
|
virtual |
Use this function in combination with setGrid(..)
Reimplemented from EquationSolver.
References OgesParameters::get(), Oges::initialized, EquationSolver::oges, ogmg, Ogmg::parameters, Oges::parameters, Ogmg::setCoefficientArray(), OgmgParameters::setProblemIsSingular(), Oges::shouldBeInitialized, and OgesParameters::THEcompatibilityConstraint.
|
virtual |
Reimplemented from EquationSolver.
References Oges::cg, Oges::debug, OgesParameters::getOgmgParameters(), Oges::initialized, NULL, EquationSolver::oges, ogmg, Ogmg::parameters, Oges::parameters, Ogmg::setEquationAndBoundaryConditions(), OgmgParameters::setErrorTolerance(), Ogmg::setOgmgParameters(), OgmgParameters::setResidualTolerance(), Oges::shouldBeInitialized, and OgmgParameters::updateToMatchGrid().
|
virtual |
Supply a new grid. This will build the multigrid levels.
Reimplemented from EquationSolver.
References Oges::cg, Oges::debug, OgesParameters::getOgmgParameters(), NULL, EquationSolver::oges, ogmg, Ogmg::parameters, Oges::parameters, OgmgParameters::setErrorTolerance(), Ogmg::setOgmgParameters(), OgmgParameters::setResidualTolerance(), Ogmg::updateToMatchGrid(), and OgmgParameters::updateToMatchGrid().
Reimplemented from EquationSolver.
References ogmg, and Ogmg::sizeOf().
|
virtual |
Implements EquationSolver.
References Oges::cg, Oges::coeff, Oges::debug, FALSE, OgesParameters::get(), Ogmg::getMaximumResidual(), Ogmg::getNumberOfIterations(), OgesParameters::getOgmgParameters(), Oges::initialized, EquationSolver::maximumResidual, NULL, Oges::numberOfIterations, EquationSolver::oges, ogmg, Ogmg::parameters, Oges::parameters, Ogmg::setCoefficientArray(), OgmgParameters::setErrorTolerance(), Ogmg::setOgmgParameters(), OgmgParameters::setProblemIsSingular(), OgmgParameters::setResidualTolerance(), Oges::shouldBeInitialized, Ogmg::solve(), OgesParameters::THEcompatibilityConstraint, TRUE, Ogmg::updateToMatchGrid(), and OgmgParameters::updateToMatchGrid().
|
protected |