CG
Version 25
|
Base class for a generic PDE solver. More...
#include <DomainSolver.h>
Public Types | |
enum | { defaultValue =-1234567 } |
enum | ForcingTypeEnum { computeForcing, computeTimeDerivativeOfForcing } |
enum | BoundaryConditionPredictorEnum { predictPressure, predictPressureAndVelocity } |
enum | InterfaceOptionsEnum { getInterfaceRightHandSide, setInterfaceRightHandSide } |
enum | Dimensions { maximumNumberOfGridFunctionsToUse =4, maximumNumberOfExtraFunctionsToUse =4 } |
enum | ChangesEnum { gridWasAdded =1, gridWasChanged, gridWasRemoved, refinementWasAdded, refinementWasRemoved } |
Public Member Functions | |
DomainSolver (Parameters &par, CompositeGrid &cg, GenericGraphicsInterface *ps=NULL, Ogshow *show=NULL, const int &plotOption=1) | |
This is the constructor for the base class DomainSolver. | |
virtual | ~DomainSolver () |
Destructor. | |
virtual int | adaptGrids (GridFunction &gf0, int numberOfGridFunctionsToUpdate=0, realCompositeGridFunction *cgf=NULL, realCompositeGridFunction *uWork=NULL) |
virtual int | addArtificialDissipation (realCompositeGridFunction &u, real dt) |
virtual int | addArtificialDissipation (realMappedGridFunction &u, real dt, int grid) |
virtual int | addConstraintEquation (Parameters ¶meters, Oges &solver, realCompositeGridFunction &coeff, realCompositeGridFunction &ucur, realCompositeGridFunction &rhs, const int &numberOfComponents) |
virtual void | addForcing (realMappedGridFunction &dvdt, const realMappedGridFunction &u, int iparam[], real rparam[], realMappedGridFunction &dvdtImplicit=Overture::nullRealMappedGridFunction(), realMappedGridFunction *referenceFrameVelocity=NULL) |
virtual int | addGrids () |
virtual int | advance (real &tFinal) |
virtual void | advanceAdamsPredictorCorrector (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceAdamsPredictorCorrectorNew (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
Advance using an Adams predictor corrector method (new way) | |
virtual void | advanceADI (real &t, real &dt, int &numberOfSubSteps, int &init, int initialStep) |
void | advanceForwardEulerNew (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
Advance using an "forward-Euler" method (new way) | |
virtual void | advanceImplicitMultiStep (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceImplicitMultiStepNew (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
Generic advance routine that uses the separate time sub-step functions. | |
virtual int | advanceLineSolve (LineSolve &lineSolve, const int grid, const int direction, realCompositeGridFunction &u0, realMappedGridFunction &f, realMappedGridFunction &residual, const bool refactor, const bool computeTheResidual=false) |
virtual void | advanceMidPoint (real &t0, real &dt0, int &numberOfSubSteps, int initialStep) |
virtual void | advanceNewton (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceSecondOrderSystem (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceSteadyStateRungeKutta (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceTrapezoidal (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | advanceVariableTimeStepAdamsPredictorCorrector (real &t0, real &dt0, int &numberOfSubSteps, int &init, int initialStep) |
virtual void | allSpeedImplicitTimeStep (GridFunction &gf, real &t, real &dt0, int &numberOfTimeSteps, const real &nextTimeToPrint) |
virtual int | applyBoundaryConditions (GridFunction &cgf, const int &option=-1, int grid_=-1, GridFunction *puOld=NULL, const real &dt=-1.) |
virtual int | applyBoundaryConditions (const real &t, realMappedGridFunction &u, realMappedGridFunction &gridVelocity, const int &grid, const int &option=-1, realMappedGridFunction *puOld=NULL, realMappedGridFunction *pGridVelocityOld=NULL, const real &dt=-1.) |
virtual int | applyBoundaryConditionsForImplicitTimeStepping (GridFunction &cgf) |
virtual int | applyBoundaryConditionsForImplicitTimeStepping (realMappedGridFunction &u, realMappedGridFunction &uL, realMappedGridFunction &gridVelocity, real t, int scalarSystem, int grid) |
virtual int | assignInitialConditions (int gfIndex) |
Assign initial conditions. | |
virtual int | applyFilter (int gfIndex) |
This function applies a spatial filter to the solution in gf[gfIndex]. | |
virtual int | assignInterfaceBoundaryConditions (GridFunction &cgf, const int &option=-1, int grid_=-1, GridFunction *puOld=NULL, const real &dt=-1.) |
virtual void | assignTestProblem (GridFunction &gf) |
virtual void | bodyForcingCleanup () |
This routine is called when DomainSolver is finished and can be used to clean up memory. | |
virtual int | boundaryConditionPredictor (const BoundaryConditionPredictorEnum bcpOption, const AdamsPCData &adamsData, const int orderOfExtrapolation, const int mNew, const int mCur, const int mOld, realCompositeGridFunction *puga=NULL, realCompositeGridFunction *pugb=NULL, realCompositeGridFunction *pugc=NULL, realCompositeGridFunction *pugd=NULL) |
Apply operations required before applying the boundary conditions. E.g. extrapolate the pressure in time for fourth-order INS. | |
virtual int | buildAdaptiveGridOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various general options. | |
virtual int | buildAmrGridsForInitialConditions () |
Build the AMR hierarchy of grids for the initial conditions. | |
virtual int | buildForcingOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various forcing options. | |
virtual int | buildGeneralOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various general options. | |
virtual int | buildGrid (Mapping *&newMapping, int newGridNumber, IntegerArray &sharedBoundaryCondition) |
virtual int | buildOutputOptionsDialog (DialogData &dialog) |
Build the output options dialog. | |
virtual void | buildImplicitSolvers (CompositeGrid &cg) |
virtual int | buildMovingGridOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various general options. | |
virtual int | buildPlotOptionsDialog (DialogData &dialog) |
Build the plot options dialog. | |
virtual int | buildRunTimeDialog () |
Build the run time dialog. This dialog appears while a Domain solver is time stepping. | |
virtual int | buildTimeSteppingDialog (DialogData &dialog) |
Build the dialog that shows the various options for time stepping. | |
void | checkArrays (const aString &label) |
void | checkSolution (const realGridCollectionFunction &u, const aString &title, bool printResults=false) |
int | checkSolution (realMappedGridFunction &u, const aString &title, bool printResults, int grid, real &maxVal, bool printResultsOnFailure=false) |
virtual void | cleanupInitialConditions () |
Cleanup routines after the initial conditions have been assigned. | |
virtual int | computeBodyForcing (GridFunction &gf, const real &tForce) |
Compute the body forcing such as drag models, wake models and heat sources. | |
virtual void | computeNumberOfStepsAndAdjustTheTimeStep (const real &t, const real &tFinal, const real &nextTimeToPrint, int &numberOfSubSteps, real &dtNew, const bool &adjustTimeStep=true) |
virtual void | correctMovingGrids (const real t1, const real t2, GridFunction &cgf1, GridFunction &cgf2) |
Corrector step for moving grids. | |
const int & | debug () const |
virtual void | determineErrors (GridFunction &cgf, const aString &label=nullString) |
virtual void | determineErrors (realCompositeGridFunction &u, realMappedGridFunction **gridVelocity, const real &t, const int options, RealArray &err, const aString &label=nullString) |
virtual void | determineErrors (realMappedGridFunction &v, const real &t) |
virtual void | displayBoundaryConditions (FILE *file=stdout) |
virtual int | displayParameters (FILE *file=stdout) |
Display DomainSolver parameters. | |
virtual int | endTimeStep (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
virtual int | endTimeStepFE (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
virtual int | endTimeStepIM (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
virtual int | endTimeStepPC (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
virtual int | endTimeStepAF (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
virtual void | eulerStep (const real &t1, const real &t2, const real &t3, const real &dt0, GridFunction &cgf1, GridFunction &cgf2, GridFunction &cgf3, realCompositeGridFunction &ut, realCompositeGridFunction &uti, int stepNumber, int &numberOfSubSteps) |
void | extrapolateInterpolationNeighbours (GridFunction &gf, const Range &C) |
Extrapolate interpolation neighbours. | |
virtual int | fixupUnusedPoints (realCompositeGridFunction &u) |
virtual void | formMatrixForImplicitSolve (const real &dt0, GridFunction &cgf1, GridFunction &cgf0) |
virtual int | getAmrErrorFunction (realCompositeGridFunction &u, real t, intCompositeGridFunction &errorFlag, realCompositeGridFunction &error) |
virtual int | getAmrErrorFunction (realCompositeGridFunction &u, real t, realCompositeGridFunction &error, bool computeOnFinestLevel=false) |
virtual realCompositeGridFunction & | getAugmentedSolution (GridFunction &gf0, realCompositeGridFunction &v) |
const aString & | getClassName () const |
virtual int | getAdaptiveGridOption (const aString &answer, DialogData &dialog) |
: Look for a general option in the string "answer" | |
virtual int | getForcingOption (const aString &command, DialogData &dialog) |
: Look for a forcing option in the string "answer" | |
virtual int | getGeneralOption (const aString &answer, DialogData &dialog) |
: Look for a general option in the string "answer" | |
virtual void | getGridInfo (real &totalNumberOfGridPoints, real dsMin[3], real dsAve[3], real dsMax[3], real &maxMax, real &maxMin, real &minMin) |
Evaluate the min and max grid spacing, total number of grid points etc. | |
virtual void | getGridVelocity (GridFunction &gf0, const real &tGV) |
virtual int | getInitialConditions (const aString &command=nullString, DialogData *interface=NULL, GUIState *guiState=NULL, DialogState *dialogState=NULL) |
Determine the type of initial conditions to assign. | |
virtual int | getInterfaceDataOptions (GridFaceDescriptor &info, int &interfaceDataOptions) const |
Return the interface data required for a given type of interface. | |
int | getMaterialProperties (GridFunction &solution, realCompositeGridFunction &matProp) |
Evaluate the variable material parameters (for plotting for example). | |
real | getMovingGridMaximumRelativeCorrection () |
Return the maximum relative change in the moving grid correction scheme. This is usually only an issue for "light" bodies. | |
bool | getMovingGridCorrectionHasConverged () |
Return true if the correction steps for moving grids have converged. This is usually only an issue for "light" bodies. | |
virtual int | getMovingGridOption (const aString &answer, DialogData &dialog) |
: Look for a general option in the string "answer" | |
const aString & | getName () const |
virtual int | getOutputOption (const aString &command, DialogData &dialog) |
: Look for an output option in the string "answer" | |
const aString & | getPdeName () const |
virtual int | getPlotOption (const aString &answer, DialogData &dialog) |
: Look for a plot option in the string "answer" | |
virtual int | getResidual (real t, real dt, GridFunction &cgf, realCompositeGridFunction &residual) |
Compute the residual for "steady state" solvers. | |
int | getResidualInfo (real t0, const realCompositeGridFunction &residual, real &maximumResidual, real &maximuml2, FILE *file=NULL) |
Compute the max and l2 residuals and optionally output the info to a file. | |
virtual void | getSolutionBounds (const realMappedGridFunction &u, realArray &uMin, realArray &uMax, real &uvMax) |
virtual int | getTimeDependentBoundaryConditions (MappedGrid &mg, real t, int grid=0, int side0=-1, int axis0=-1, ForcingTypeEnum forcingType=computeForcing) |
virtual int | getTimeDerivativeOfBoundaryValues (GridFunction &gf0, const real &t, const int &grid, int side=-1, int axis=-1) |
virtual real | getTimeStep (GridFunction &gf) |
virtual real | getTimeStep (MappedGrid &mg, realMappedGridFunction &u, realMappedGridFunction &gridVelocity, const Parameters::TimeSteppingMethod &timeSteppingMethod, const int &grid) |
int | getTimeStepAndNumberOfSubSteps (GridFunction &cgf, int stepNumber, int &numberOfSubSteps, real &dt) |
Compute a new time step and the number sub-steps to reach the next time to print. | |
virtual void | getTimeSteppingEigenvalue (MappedGrid &mg, realMappedGridFunction &u, realMappedGridFunction &gridVelocity, real &reLambda, real &imLambda, const int &grid) |
virtual int | getTimeSteppingOption (const aString &command, DialogData &dialog) |
virtual void | getUt (GridFunction &cgf, const real &t, RealCompositeGridFunction &ut, real tForce) |
virtual int | getUt (const realMappedGridFunction &v, const realMappedGridFunction &gridVelocity, realMappedGridFunction &dvdt, int iparam[], real rparam[], realMappedGridFunction &dvdtImplicit=Overture::nullRealMappedGridFunction(), MappedGrid *pmg2=NULL, const realMappedGridFunction *pGridVelocity2=NULL) |
virtual void | implicitSolve (const real &dt0, GridFunction &cgf1, GridFunction &cgf0) |
virtual int | initializeInterfaces (GridFunction &cgf) |
virtual int | initializeSolution () |
virtual int | initializeTimeStepping (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | initializeTimeSteppingFE (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | initializeTimeSteppingIM (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | initializeTimeSteppingPC (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | initializeTimeSteppingAF (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | initializeTurbulenceModels (GridFunction &cgf) |
virtual int | interfaceRightHandSide (InterfaceOptionsEnum option, int interfaceDataOptions, GridFaceDescriptor &info, GridFaceDescriptor &gfd, int gfIndex, real t) |
virtual int | interpolate (GridFunction &cgf, const Range &R=nullRange) |
virtual int | interpolateAndApplyBoundaryConditions (GridFunction &cgf, GridFunction *uOld=NULL, const real &dt=-1.) |
virtual bool | isImplicitMatrixSingular (realCompositeGridFunction &uL) |
virtual int | jetInflow (GridFunction &cgf) |
virtual void | moveGrids (const real &t1, const real &t2, const real &t3, const real &dt0, GridFunction &cgf1, GridFunction &cgf2, GridFunction &cgf3) |
virtual bool | movingGridProblem () const |
virtual int | newAdaptiveGridBuilt (CompositeGrid &cg, realCompositeGridFunction &u, bool updateSolution) |
const int & | numberOfComponents () const |
virtual int | output (GridFunction &gf0, int stepNumber) |
virtual void | outputHeader () |
Output the main header banner that includes info about the grid and parameters. | |
virtual int | outputProbes (GridFunction &gf0, int stepNumber) |
output probe information at a given time | |
virtual void | outputSolution (realCompositeGridFunction &u, const real &t, const aString &label=nullString, int printOption=0) |
virtual void | outputSolution (const realMappedGridFunction &u, const real &t) |
virtual int | parabolicInflow (GridFunction &cgf) |
virtual int | plot (const real &t, const int &optionIn, real &tFinal) |
virtual int | printMemoryUsage (FILE *file=stdout) |
Output information about the memory usage. | |
void | printP (const char *format,...) const |
Domain solver print function with a prefix identifier string. | |
virtual int | printStatistics (FILE *file=stdout) |
Output timing statistics. | |
virtual void | printTimeStepInfo (const int &step, const real &t, const real &cpuTime) |
virtual int | project (GridFunction &cgf) |
virtual int | readRestartFile (realCompositeGridFunction &v, real &t, const aString &restartFileName=nullString) |
virtual int | readRestartFile (GridFunction &cgf, const aString &restartFileName=nullString) |
virtual int | saveSequenceInfo (real t0, const realCompositeGridFunction &residual) |
Save sequence info (such as the norm of the residual) into the time history arrays. | |
virtual int | saveSequencesToShowFile () |
Save sequence info to the show file. | |
virtual int | saveRestartFile (const GridFunction &cgf, const aString &restartFileName) |
virtual void | saveShow (GridFunction &gf0) |
Save a solution in the show file. | |
virtual void | saveShowFileComments (Ogshow &show) |
Save comments in the show file. | |
virtual int | setBoundaryConditionsInteractively (const aString &answer, const IntegerArray &originalBoundaryCondition) |
virtual int | setDefaultDataForBoundaryConditions () |
virtual int | setFinalTime (const real &tFinal) |
Set the time to integrate to. | |
virtual void | setInterfacesAtPastTimes (const real &t1, const real &t2, const real &t3, const real &dt0, GridFunction &cgf1, GridFunction &cgf2, GridFunction &cgf3) |
Assign interface positions for "negative" times. | |
virtual int | setInterfaceBoundaryCondition (GridFaceDescriptor &info) |
Setup an interface boundary condition. | |
void | setName (const aString &name) |
void | setNameOfGridFile (const aString &name) |
Provide the name of the file from which the overlapping grid was read. | |
virtual int | setOgesBoundaryConditions (GridFunction &cgf, IntegerArray &boundaryConditions, RealArray &boundaryConditionData, const int imp) |
virtual int | setParametersInteractively (bool runSetupOnExit=true) |
Assign run-time parameters for the DomainSolver. | |
virtual int | setPlotTitle (const real &t, const real &dt) |
Set the plot titles for interactive plotting. | |
virtual void | setSensitivity (GUIState &dialog, bool trueOrFalse) |
virtual int | setSolverParameters (const aString &command=nullString, DialogData *interface=NULL) |
Prompt for changes in the solver parameters. | |
virtual void | setup (const real &time=0.) |
Setup routine. | |
virtual int | setupGridFunctions () |
Allocate and initialize grid functions, based on the time-stepping method. | |
virtual int | setupPde (aString &reactionName, bool restartChosen, IntegerArray &originalBoundaryCondition) |
A virtual function to setup the PDE to be solved. | |
virtual int | setupUserDefinedForcing () |
virtual int | setupUserDefinedInitialConditions () |
virtual int | setupUserDefinedMaterialProperties () |
Interactively choose material properties (e.g. rho,mu,lambda for elasticity) | |
virtual int | setVariableBoundaryValues (const real &t, GridFunction &gf0, const int &grid, int side0=-1, int axis0=-1, ForcingTypeEnum forcingType=computeForcing) |
Assign the right-hand-side for variable boundary conditions. | |
virtual int | setVariableMaterialProperties (GridFunction &gf, const real &t) |
Assign variable material properties: user-defined or "body-force" regions. | |
virtual real | sizeOf (FILE *file=NULL) const |
virtual void | smoothVelocity (GridFunction &cgf, const int numberOfSmooths) |
virtual int | solve () |
Solve equations to time tFinal,. | |
virtual void | solveForTimeIndependentVariables (GridFunction &cgf, bool updateSolutionDependentEquations=false) |
: Solve for the pressure given the velocity. | |
virtual int | startTimeStep (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function). | |
virtual int | startTimeStepFE (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function). | |
virtual int | startTimeStepIM (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function). | |
virtual int | startTimeStepPC (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function). | |
virtual int | startTimeStepAF (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function) for an approximate factorization method. | |
virtual void | takeOneStep (real &t, real &dt, int stepNumber, int &numberOfSubSteps) |
Advance one time-step. This function is used by the multi-physics solver Cgmp. | |
virtual int | takeTimeStep (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a single time step (a time sub-step function). | |
virtual int | takeTimeStepFE (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a single time step (a time sub-step function). | |
virtual int | takeTimeStepIM (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a single time step (a time sub-step function). | |
virtual int | takeTimeStepPC (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a single time step (a time sub-step function). | |
virtual int | takeTimeStepAF (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a time step using the approximate factored scheme. | |
virtual int | timeIndependentBoundaryConditions (GridFunction &cgf) |
virtual void | initializeFactorization () |
virtual int | tracking (GridFunction &gf0, int stepNumber) |
const bool & | twilightZoneFlow () const |
virtual int | userDefinedBoundaryValues (const real &t, GridFunction &gf0, const int &grid, int side0=-1, int axis0=-1, ForcingTypeEnum forcingType=computeForcing) |
Assign user specific values for boundary conditions. | |
virtual void | userDefinedCleanup () |
This routine is called when DomainSolver is finished and can be used to clean up memory. | |
virtual int | userDefinedGrid (GridFunction &gfct, Mapping *&newMapping, int newGridNumber, IntegerArray &sharedBoundaryCondition) |
virtual int | userDefinedForcing (realCompositeGridFunction &f, GridFunction &gf, const real &tForce) |
User defined forcing. Compute a user defined forcing that will be added to the right-hand side of the equations. This function is called to actually evaluate the user defined forcing The function setupUserDefinedForcing is first called to assign the option and parameters. Rewrite or add new options to this function and to setupUserDefinedForcing to supply your own forcing option. | |
virtual void | userDefinedForcingCleanup () |
This routine is called when DomainSolver is finished and can be used to clean up memory. | |
virtual int | userDefinedInitialConditions (CompositeGrid &cg, realCompositeGridFunction &u) |
virtual void | userDefinedInitialConditionsCleanup () |
virtual int | userDefinedMaterialProperties (GridFunction &gf) |
Assign the user defined material properties. | |
virtual void | userDefinedMaterialPropertiesCleanup () |
This routine is called when DomainSolver is finished and can be used to clean up memory. | |
virtual int | userDefinedOutput (GridFunction &gf, int stepNumber) |
virtual int | updateForAdaptiveGrids (CompositeGrid &cg) |
virtual int | updateForMovingGrids (GridFunction &cgf) |
Update the DomainSolver after grids have moved or have been adapted. | |
virtual int | updateForNewTimeStep (GridFunction &gf, const real &dt) |
Update the geometry arrays. | |
virtual int | updateGeometryArrays (GridFunction &cgf) |
Update geometry arrays, solution at old times etc. after the time step has changed. | |
virtual int | updateToMatchGrid (CompositeGrid &cg) |
virtual int | updateToMatchNewGrid (CompositeGrid &cgNew, IntegerArray &changes, IntegerArray &sharedBoundaryCondition, GridFunction &gf0) |
virtual int | updateStateVariables (GridFunction &cgf, int stage=-1) |
Ths function is used to update state-variables. For example, the visco plastic viscosity. | |
virtual void | updateTimeIndependentVariables (CompositeGrid &cg0, GridFunction &cgf) |
virtual int | updateVariableTimeInterpolation (int newGrid, GridFunction &cgf) |
virtual int | updateWorkSpace (GridFunction &gf0) |
virtual int | variableTimeStepBoundaryInterpolation (int grid, GridFunction &cgf) |
virtual void | writeParameterSummary (FILE *file) |
realCompositeGridFunction & | p () const |
realCompositeGridFunction & | px () const |
realCompositeGridFunction & | rL () const |
realCompositeGridFunction & | pL () const |
realCompositeGridFunction & | rho () const |
realCompositeGridFunction & | gam () const |
Static Public Member Functions | |
static int | getBounds (const realCompositeGridFunction &u, RealArray &uMin, RealArray &uMax, real &uvMax) |
static int | getOriginalBoundaryConditions (CompositeGrid &cg, IntegerArray &originalBoundaryCondition) |
Save the original boundary conditions from the CompositeGrid. | |
Public Attributes | |
CompositeGrid & | cg |
OgesParameters | pressureSolverParameters |
OgesParameters | implicitTimeStepSolverParameters |
CompositeGridOperators | finiteDifferenceOperators |
real | dt |
int | numberOfStepsTaken |
Parameters & | parameters |
GridFunction | gf [maximumNumberOfGridFunctionsToUse] |
int | current |
int | movieFrame |
aString | movieFileName |
int | numberOfGridFunctionsToUse |
int | numberOfExtraFunctionsToUse |
int | totalNumberOfArrays |
realCompositeGridFunction | fn [maximumNumberOfExtraFunctionsToUse] |
RealArray | variableDt |
RealArray | variableTime |
realArray * | ui |
RealArray | tv |
RealArray | tvb |
RealArray | tv0 |
realCompositeGridFunction | coeff |
int | numberOfImplicitSolvers |
Oges * | implicitSolver |
realCompositeGridFunction * | implicitCoeff |
Oges * | poisson |
realCompositeGridFunction | pressureRightHandSide |
realCompositeGridFunction | poissonCoefficients |
realCompositeGridFunction * | pp |
realCompositeGridFunction * | ppx |
realCompositeGridFunction * | prL |
realCompositeGridFunction * | ppL |
realCompositeGridFunction * | prho |
realCompositeGridFunction * | pgam |
realCompositeGridFunction * | pvIMS |
realCompositeGridFunction * | pwIMS |
realCompositeGridFunction * | previousPressure |
realCompositeGridFunction * | puLinearized |
realMappedGridFunction * | pGridVelocityLinearized |
LineSolve * | pLineSolve |
bool | gridHasMaterialInterfaces |
realCompositeGridFunction * | pdtVar |
std::vector< real > | hMin |
std::vector< real > | hMax |
std::vector< real > | numberOfGridPoints |
std::vector< real > | dtv |
std::vector< real > | realPartOfEigenvalue |
std::vector< real > | imaginaryPartOfEigenvalue |
int | numberSavedToShowFile |
CG_ApproximateFactorization::FactorList | factors |
Protected Attributes | |
aString | name |
aString | className |
aString | pdeName |
int | restartNumber |
DialogData * | pUniformFlowDialog |
DialogData * | pStepFunctionDialog |
DialogData * | pShowFileDialog |
DialogData * | pTzOptionsDialog |
int | chooseAComponentMenuItem |
int | numberOfPushButtons |
int | numberOfTextBoxes |
int | itemsToPlot |
Friends | |
class | CgSolver |
Base class for a generic PDE solver.
Derive a new CG PDE solver from this base class.
DomainSolver::DomainSolver | ( | Parameters & | par, |
CompositeGrid & | cg_, | ||
GenericGraphicsInterface * | ps = NULL , |
||
Ogshow * | show = NULL , |
||
const int & | plotOption_ = 1 |
||
) |
This is the constructor for the base class DomainSolver.
par | (input) : use this Parameters object. |
cg_ | (input) : use this CompositeGrid. |
ps | (input) : pointer to a graphics object to use. |
show | (input) : pointer to a show file to use. |
plotOption_ | (input) : 1=use plotting, 0=run with no plotting. |
References className, current, Parameters::dbase, dt, gridHasMaterialInterfaces, implicitCoeff, implicitSolver, itemsToPlot, movieFrame, name, numberOfImplicitSolvers, numberOfStepsTaken, numberSavedToShowFile, parameters, pdeName, pdtVar, pgam, pGridVelocityLinearized, pLineSolve, poisson, pp, ppL, ppx, previousPressure, prho, prL, pShowFileDialog, pStepFunctionDialog, pTzOptionsDialog, puLinearized, pUniformFlowDialog, pvIMS, pwIMS, restartNumber, totalNumberOfArrays, and ui.
|
virtual |
Destructor.
References grid, implicitCoeff, implicitSolver, pdtVar, pgam, pGridVelocityLinearized, pLineSolve, poisson, pp, ppL, ppx, previousPressure, prho, prL, puLinearized, pvIMS, pwIMS, and ui.
|
virtual |
References all, assert(), assign(), axis, Parameters::buildErrorEstimator(), GridFunction::cg, cg, Parameters::checkForFloatingPointErrors, checkSolution(), d, Parameters::dbase, debug(), display(), getAmrErrorFunction(), grid, Parameters::gridIsMoving(), gridWasAdded, i, imaginaryPartOfEigenvalue, movingGridProblem(), np, outputSolution(), parameters, printF(), printP(), R, realPartOfEigenvalue, side, GridFunction::t, GridFunction::transform, GridFunction::u, u, updateEquationDomainsForAMR(), updateGeometryArrays(), Parameters::updateToMatchGrid(), updateWorkSpace(), and variableDt.
Referenced by Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgsm::advanceMethodOfLines(), advanceSecondOrderSystem(), buildAmrGridsForInitialConditions(), eulerStep(), takeTimeStepFE(), and takeTimeStepPC().
|
virtual |
References cg, Parameters::dbase, grid, and parameters.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
|
virtual |
|
virtual |
Reimplemented in Cgcns, Cgasf, Cgins, and Cgad.
References printF().
Referenced by Cgsm::advanceFOS(), Cgsm::advanceSOS(), and computeBodyForcing().
|
virtual |
References all, assert(), axis, Parameters::buildErrorEstimator(), buildGrid(), c, GridFunction::cg, cg, createMappings(), current, Parameters::dbase, debug(), gf, grid, gridWasAdded, gridWasChanged, gridWasRemoved, i, n, parameters, printF(), R, ra, refinementWasAdded, refinementWasRemoved, side, u, updateToMatchNewGrid(), and userDefinedGrid().
Referenced by plot().
|
virtual |
Reimplemented in Cgmp.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::adi, advanceAdamsPredictorCorrector(), advanceAdamsPredictorCorrectorNew(), advanceADI(), advanceForwardEulerNew(), advanceImplicitMultiStep(), advanceImplicitMultiStepNew(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), allSpeedImplicitTimeStep(), applyBoundaryConditions(), Parameters::approximateFactorization, assert(), buildRunTimeDialog(), GridFunction::cg, cg, Parameters::checkForFloatingPointErrors, checkSolution(), computeNumberOfStepsAndAdjustTheTimeStep(), current, Parameters::dbase, debug(), Parameters::defaultValue, dt, eulerStep(), fn, Parameters::forwardEuler, get< int >(), getTimeStep(), gf, grid, i, Parameters::implicit, Parameters::implicitAllSpeed, Parameters::implicitAllSpeed2, init, Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), Parameters::isSteadyStateSolver(), Parameters::laxFriedrichs, Parameters::midPoint, Parameters::nonMethodOfLines, numberOfStepsTaken, output(), parameters, plot(), printF(), printTimeStepInfo(), Parameters::rKutta, saveSequenceInfo(), saveSequencesToShowFile(), saveShow(), Controller::saveToShowFile(), MovingGrids::saveToShowFile(), Parameters::secondOrderSystemTimeStepping, Parameters::setGridIsImplicit(), Parameters::steadyStateNewton, Parameters::steadyStateRungeKutta, GridFunction::t, Parameters::trapezoidal, GridFunction::u, u, updateForNewTimeStep(), and Parameters::variableTimeStepAdamsPredictorCorrector.
Referenced by solve().
|
virtual |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, adaptGrids(), addArtificialDissipation(), all, assert(), assign(), axis, boundaryConditionPredictor(), c, GridFunction::cg, cg, checkArrays(), Parameters::checkForFloatingPointErrors, checkSolution(), computeBodyForcing(), computeNumberOfStepsAndAdjustTheTimeStep(), GridFunction::conservativeToPrimitive(), correctMovingGrids(), current, Parameters::dbase, debug(), delta, determineErrors(), dimension, display(), dt, dtb, dtp, e, fn, GridFunction::form, GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getMovingGridCorrectionHasConverged(), getMovingGridMaximumRelativeCorrection(), getTimeStep(), getUt(), gf, grid, Parameters::gridIsMoving(), GridFunction::gridVelocityTime, i, I1, I2, I3, interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), isRectangular, m, moveGrids(), movingGridProblem(), N(), n, numberOfComponents(), numberOfStepsTaken, ok, orderOfAccuracy, orderOfPredictorCorrector, orderOfTimeExtrapolationForPressure, output(), outputSolution(), OV_ABORT(), parameters, pc, poisson, pp, predictPressureAndVelocity, previousPressure, GridFunction::primitiveToConservative(), printF(), regridFrequency, saveSequenceInfo(), side, solveForTimeIndependentVariables(), GridFunction::t, tc, twilightZoneFlow(), GridFunction::u, u, u0, uc, ue, updateForMovingGrids(), updateOpt, updateStateVariables(), GridFunction::updateToMatchGrid(), Parameters::useConservativeVariables(), and V.
Referenced by advance(), and takeOneStep().
|
virtual |
Advance using an Adams predictor corrector method (new way)
References AdvanceOptions::correctionIterationsHaveConverged, Parameters::dbase, debug(), endTimeStep(), initializeTimeStepping(), AdvanceOptions::numberOfCorrectorSteps, parameters, printF(), startTimeStep(), and takeTimeStep().
Referenced by advance().
|
virtual |
void DomainSolver::advanceForwardEulerNew | ( | real & | t0, |
real & | dt0, | ||
int & | numberOfSubSteps, | ||
int & | init, | ||
int | initialStep | ||
) |
Advance using an "forward-Euler" method (new way)
References Parameters::dbase, debug(), endTimeStep(), getTimeStepAndNumberOfSubSteps(), gf, initializeTimeStepping(), AdvanceOptions::numberOfCorrectorSteps, parameters, printF(), startTimeStep(), and takeTimeStep().
Referenced by advance().
|
virtual |
References Parameters::adamsBashforth2, addArtificialDissipation(), all, applyBoundaryConditions(), applyBoundaryConditionsForImplicitTimeStepping(), assert(), assign(), axis, boundaryConditionPredictor(), c, GridFunction::cg, cg, checkArrays(), Parameters::checkForFloatingPointErrors, checkSolution(), computeBodyForcing(), Parameters::computeImplicitTermsSeparately, correctMovingGrids(), Parameters::crankNicolson, current, Parameters::dbase, debug(), delta, determineErrors(), dimension, display(), Parameters::doNotComputeImplicitTerms, dt, AdamsPCData::dtb, dtb, AdamsPCData::dtp, dtp, e, fixupUnusedPoints(), fn, GridFunction::form, formMatrixForImplicitSolve(), Parameters::getGridIsImplicit(), GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getMovingGridCorrectionHasConverged(), getMovingGridMaximumRelativeCorrection(), getResidual(), getUt(), gf, grid, Parameters::gridIsMoving(), i, I1, I2, I3, Parameters::implicit, implicitSolve(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), isRectangular, m, AdamsPCData::mab0, AdamsPCData::mab1, AdamsPCData::mab2, maxNorm(), moveGrids(), movingGridProblem(), N(), n, AdamsPCData::nab0, AdamsPCData::nab1, AdamsPCData::nab2, AdamsPCData::nab3, AdamsPCData::ndt0, numberOfComponents(), numberOfStepsTaken, ok, orderOfAccuracy, orderOfPredictorCorrector, orderOfTimeExtrapolationForPressure, output(), OV_ABORT(), parameters, pc, poisson, pp, predictPressure, previousPressure, printF(), residual(), saveSequenceInfo(), side, solveForTimeIndependentVariables(), GridFunction::t, tc, twilightZoneFlow(), GridFunction::u, u, u0, uc, updateForMovingGrids(), updateOpt, updateStateVariables(), Parameters::useConservativeVariables(), and V.
Referenced by advance(), and takeOneStep().
|
virtual |
Generic advance routine that uses the separate time sub-step functions.
This advance routine uses the function startTimeStep, takeTimeStep and endTimeStep
t0 | (input) : current time |
dt0 | (input) : current time step |
References AdvanceOptions::correctionIterationsHaveConverged, Parameters::dbase, debug(), endTimeStep(), initializeTimeStepping(), AdvanceOptions::numberOfCorrectorSteps, parameters, printF(), startTimeStep(), and takeTimeStep().
Referenced by advance().
|
virtual |
|
virtual |
References current, Parameters::dbase, debug(), determineErrors(), eulerStep(), fn, gf, m1, m2, output(), and parameters.
Referenced by advance().
|
virtual |
References all, applyBoundaryConditionsForImplicitTimeStepping(), assert(), axis, Parameters::backwardEuler, GridFunction::cg, Parameters::crankNicolson, current, Parameters::dbase, debug(), dimension, e, fn, formMatrixForImplicitSolve(), getIndex(), getUt(), gf, grid, I1, I2, I3, implicitSolve(), implicitSolver, maxNorm(), N(), numberOfComponents(), numberOfStepsTaken, ok, parameters, printF(), residual(), rhs(), saveSequenceInfo(), solveForTimeIndependentVariables(), GridFunction::t, Parameters::trapezoidal, and GridFunction::u.
Referenced by advance(), and Cgcns::project().
|
virtual |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, adaptGrids(), addArtificialDissipation(), all, assert(), assign(), axis, c, GridFunction::cg, cg, checkArrays(), Parameters::checkForFloatingPointErrors, checkSolution(), computeNumberOfStepsAndAdjustTheTimeStep(), GridFunction::conservativeToPrimitive(), correctMovingGrids(), current, Parameters::dbase, debug(), determineErrors(), dimension, display(), dt, dtb, dtp, e, fn, GridFunction::form, GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getTimeStep(), getUt(), gf, grid, Parameters::gridIsMoving(), GridFunction::gridVelocityTime, i, I1, I2, I3, interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), isRectangular, J1, J2, J3, m, moveGrids(), movingGridProblem(), N(), n, numberOfComponents(), numberOfStepsTaken, ok, orderOfAccuracy, orderOfPredictorCorrector, orderOfTimeExtrapolationForPressure, output(), outputSolution(), OV_ABORT(), parameters, pc, poisson, pp, previousPressure, GridFunction::primitiveToConservative(), printF(), regridFrequency, saveSequenceInfo(), side, solveForTimeIndependentVariables(), GridFunction::t, tc, twilightZoneFlow(), GridFunction::u, u, u0, uc, updateForMovingGrids(), updateOpt, updateStateVariables(), GridFunction::updateToMatchGrid(), Parameters::useConservativeVariables(), and V.
Referenced by advance().
|
virtual |
References advanceLineSolve(), assert(), GridFunction::cg, cg, current, Parameters::dbase, debug(), determineErrors(), dirichlet, display(), f, fn, GridFunction::form, getGridVelocity(), getIndex(), getUt(), gf, grid, I1, I2, I3, interpolateAndApplyBoundaryConditions(), Parameters::lineImplicit, N(), n, numberOfComponents(), numberOfStepsTaken, output(), outputSolution(), parameters, pc, pdtVar, pLineSolve, GridFunction::primitiveToConservative(), printF(), residual(), saveSequenceInfo(), Parameters::slipWall, solveForTimeIndependentVariables(), GridFunction::t, twilightZoneFlow(), GridFunction::u, u, u0, uc, Parameters::useConservativeVariables(), V, vc, and wc.
Referenced by advance().
|
virtual |
References all, applyBoundaryConditionsForImplicitTimeStepping(), assert(), axis, Parameters::backwardEuler, CF, cf, GridFunction::cg, cg, coeff, Parameters::crankNicolson, current, Parameters::dbase, debug(), dimension, dt, fn, formMatrixForImplicitSolve(), getIndex(), getUt(), gf, grid, i, i1, I1, i2, I2, i3, I3, implicitSolve(), implicitSolver, n, numberOfComponents(), numberOfStepsTaken, output(), parameters, RHS, rhs(), s, saveSequenceInfo(), scale, solveForTimeIndependentVariables(), GridFunction::t, Parameters::trapezoidal, GridFunction::u, and u.
Referenced by advance(), and takeOneStep().
|
virtual |
References applyBoundaryConditions(), assert(), c, GridFunction::cg, cg, current, Parameters::dbase, debug(), determineErrors(), display(), dtv, e, fixupUnusedPoints(), fn, getGridVelocity(), getIndex(), getUt(), gf, grid, I1, I2, I3, m, m1, N(), n, numberOfComponents(), numberOfStepsTaken, output(), outputSolution(), parameters, GridFunction::primitiveToConservative(), R, saveSequenceInfo(), GridFunction::t, tv, tv0, tvb, twilightZoneFlow(), GridFunction::u, u, ui, updateVariableTimeInterpolation(), Parameters::useConservativeVariables(), variableDt, variableTime, Parameters::variableTimeStepAdamsPredictorCorrector, and variableTimeStepBoundaryInterpolation().
Referenced by advance().
|
virtual |
|
virtual |
Reimplemented in Cgsm, and Cgasf.
References assignInterfaceBoundaryConditions(), GridFunction::cg, GridFunction::conservativeToPrimitive(), GridFunction::conservativeVariables, Parameters::dbase, GridFunction::form, form, Parameters::forwardEuler, GridFunction::getGridVelocity(), getTimeDependentBoundaryConditions(), grid, GridFunction::gridVelocityTime, Parameters::isMovingGridProblem(), Parameters::midPoint, parameters, GridFunction::primitiveToConservative(), setVariableBoundaryValues(), GridFunction::t, Parameters::thereAreTimeDependentUserBoundaryConditions(), GridFunction::u, and userDefinedBoundaryValues().
Referenced by advance(), advanceImplicitMultiStep(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::applyBoundaryConditions(), applyBoundaryConditionsForImplicitTimeStepping(), interpolateAndApplyBoundaryConditions(), Cgins::project(), project(), smoothVelocity(), and takeTimeStepIM().
|
virtual |
|
virtual |
References applyBoundaryConditions(), GridFunction::cg, current, Parameters::dbase, Parameters::getGridIsImplicit(), GridFunction::getGridVelocity(), gf, grid, parameters, GridFunction::t, and GridFunction::u.
Referenced by advanceImplicitMultiStep(), advanceNewton(), advanceTrapezoidal(), and takeTimeStepIM().
|
virtual |
|
virtual |
This function applies a spatial filter to the solution in gf[gfIndex].
gfIndex | : use this grid function |
References GridFunctionFilter::applyFilter(), assert(), cg, Parameters::dbase, debug(), GridFunctionFilter::explicitFilter, extrapolateInterpolationNeighbours(), GridFunctionFilter::filterFrequency, GridFunctionFilter::filterType, gf, numberOfComponents(), numberOfGridFunctionsToUse, numberOfStepsTaken, GridFunctionFilter::orderOfFilter, OV_ABORT(), parameters, printF(), and u.
Referenced by Cgsm::advanceSOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::getTimeSteppingOption(), getTimeSteppingOption(), and takeTimeStep().
|
virtual |
Assign initial conditions.
This routine actually assigns the initial conditions into gf[current].u based on the parameters setup in getInitialConditions. (input) : assign gf[gfIndex] at time gf[gfIndex].t
Reimplemented in Cgsm.
References assert(), c, GridFunction::cg, cg, Parameters::dbase, debug(), Parameters::defaultValue, display(), dx, FOR_3, ForAllComponents, getIndex(), Parameters::getKnownSolution(), gf, grid, i1, I1, i2, I2, i3, I3, Parameters::knownSolutionInitialCondition, n, numberOfComponents(), ok, parameters, printF(), Parameters::readInitialConditionFromShowFile, Parameters::stepFunctionInitialCondition, GridFunction::t, Parameters::twilightZoneFunctionInitialCondition, GridFunction::u, u, U, Parameters::uniformInitialCondition, Parameters::userDefinedInitialCondition, userDefinedInitialConditions(), x, xab, and XSTEP.
Referenced by Cgsm::assignInitialConditions(), buildAmrGridsForInitialConditions(), and getInitialConditions().
|
virtual |
Referenced by applyBoundaryConditions().
|
virtual |
|
virtual |
This routine is called when DomainSolver is finished and can be used to clean up memory.
|
virtual |
Apply operations required before applying the boundary conditions. E.g. extrapolate the pressure in time for fourth-order INS.
mNew,mCur,mOld | (input) : index into gf[] of the new, current and old solutions. |
puga,pugb,pugc,pugd | (input) : previous values are stored in the ghost points of these grid functions. |
References assert(), axis, GridFunction::cg, Parameters::dbase, debug(), determineErrors(), display(), AdamsPCData::dtb, dtb, AdamsPCData::dtp, dtp, e, getClassName(), getIndex(), gf, grid, I1, I2, I3, includeGhost, isRectangular, AdamsPCData::ndt0, ok, orderOfAccuracy, orderOfPredictorCorrector, outputSolution(), parameters, pc, predictPressureAndVelocity, printF(), side, GridFunction::t, twilightZoneFlow(), GridFunction::u, u, u0, uc, ue, and V.
Referenced by advanceAdamsPredictorCorrector(), and advanceImplicitMultiStep().
|
virtual |
Build the dialog that shows the various general options.
dialog | (input) : graphics dialog to use. |
References assert(), Parameters::dbase, and parameters.
Referenced by setParametersInteractively().
|
virtual |
Build the AMR hierarchy of grids for the initial conditions.
This is done after the DomainSolvers have been created since we may need truncation error info and boundary condition info.
References adaptGrids(), all, assert(), assignInitialConditions(), GridFunction::cg, cg, GridFunction::conservativeToPrimitive(), current, Parameters::dbase, display(), e, fn, GridFunction::form, GridFunction::getGridVelocity(), getGridVelocity(), getTimeStep(), getUt(), gf, GridFunction::gridVelocityTime, interpolateAndApplyBoundaryConditions(), Parameters::isMovingGridProblem(), movingGridProblem(), parameters, GridFunction::primitiveVariables, printF(), Parameters::readInitialConditionFromShowFile, GridFunction::t, GridFunction::u, u, updateForAdaptiveGrids(), and GridFunction::updateGridVelocityArrays().
Referenced by Cgsm::setup(), and setup().
|
virtual |
Build the dialog that shows the various forcing options.
dialog | (input) : graphics dialog to use. |
Reimplemented in Cgsm.
Referenced by setParametersInteractively().
|
virtual |
Build the dialog that shows the various general options.
dialog | (input) : graphics dialog to use. |
Reimplemented in Cgsm.
References assert(), cg, Parameters::checkForFloatingPointErrors, Parameters::dbase, and parameters.
Referenced by buildRunTimeDialog(), and setParametersInteractively().
|
virtual |
References all, assert(), axis, GridFunction::cg, cg, current, Parameters::dbase, debug(), dir, eps, gf, grid, i, mapPointer, n, parameters, printF(), R, r, ra, side, u, and x.
Referenced by addGrids().
|
virtual |
|
virtual |
Build the dialog that shows the various general options.
dialog | (input) : graphics dialog to use. |
References assert(), Parameters::dbase, MovingGrids::getNumberOfDeformingBodies(), MovingGrids::getNumberOfMatrixMotionBodies(), MovingGrids::getNumberOfRigidBodies(), and parameters.
Referenced by buildRunTimeDialog(), and setParametersInteractively().
|
virtual |
Build the output options dialog.
dialog | (input) : graphics dialog to use. |
References assert(), Parameters::dbase, and parameters.
Referenced by setParametersInteractively().
|
virtual |
Build the plot options dialog.
dialog | (input) : graphics dialog to use. |
Reimplemented in Cgsm.
References assert(), Parameters::dbase, Parameters::isSteadyStateSolver(), and parameters.
Referenced by Cgmp::buildRunTimeDialog(), buildRunTimeDialog(), and setParametersInteractively().
|
virtual |
Build the run time dialog. This dialog appears while a Domain solver is time stepping.
Reimplemented in Cgsm, and Cgmp.
References assert(), buildGeneralOptionsDialog(), buildMovingGridOptionsDialog(), buildPlotOptionsDialog(), buildTimeSteppingDialog(), cg, chooseAComponentMenuItem, current, Parameters::dbase, getAugmentedSolution(), getClassName(), gf, i, Parameters::isSteadyStateSolver(), j, n, numberOfComponents(), numberOfPushButtons, numberOfTextBoxes, parameters, Parameters::setPdeParameters(), Parameters::steadyStateNewton, Parameters::steadyStateRungeKutta, GridFunction::u, u, and v.
Referenced by advance().
|
virtual |
Build the dialog that shows the various options for time stepping.
dialog | (input) : graphics dialog to use. |
Dialog Menu Options:
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, Cgad, and Cgmp.
References assert(), Parameters::dbase, Parameters::numberOfTimeSteppingMethods, parameters, and Parameters::steadyStateRungeKutta.
Referenced by buildRunTimeDialog(), Cgmp::buildTimeSteppingDialog(), Cgad::buildTimeSteppingDialog(), Cgcns::buildTimeSteppingDialog(), Cgasf::buildTimeSteppingDialog(), Cgins::buildTimeSteppingDialog(), and setParametersInteractively().
void DomainSolver::checkArrays | ( | const aString & | label | ) |
References totalNumberOfArrays.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), eulerStep(), initializeTimeSteppingPC(), moveGrids(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgins::solveForTimeIndependentVariables(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), and Cgins::updatePressureEquation().
void DomainSolver::checkSolution | ( | const realGridCollectionFunction & | u, |
const aString & | title, | ||
bool | printResults = false |
||
) |
References cg, grid, and printP().
Referenced by adaptGrids(), advance(), advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), Cgcns::applyBoundaryConditions(), checkSolution(), getInitialConditions(), getUt(), interpolateAndApplyBoundaryConditions(), Cgins::project(), smoothVelocity(), Cgins::solveForTimeIndependentVariables(), takeTimeStepIM(), and takeTimeStepPC().
int DomainSolver::checkSolution | ( | realMappedGridFunction & | u, |
const aString & | title, | ||
bool | printResults, | ||
int | grid, | ||
real & | maxVal, | ||
bool | printResultsOnFailure = false |
||
) |
|
virtual |
Cleanup routines after the initial conditions have been assigned.
References Parameters::dbase, and parameters.
Referenced by setup().
|
virtual |
Compute the body forcing such as drag models, wake models and heat sources.
Compute the body forcings such as drag models, wake models and heat sources that are added to the right-hand side of the equations. This function is called to actually evaluate the forcing. The function setupBodyForcing is first called to assign the option and parameters. The forcing is saved in the realCompositeGridFunction bodyForce found in the data-base.
gf | (input) : current solution |
tForce | (input) : evaluate the forcing at this time. |
References addBoundaryForce, addForcing(), assert(), assign(), axis, GridFunction::cg, cg, Parameters::dbase, debug(), dir, dt, TimeFunction::eval(), f, FOR_3D, forcingType, TimeFunction::get(), getIndex(), grid, i1, I1, i2, I2, i3, I3, isRectangular, mg, numberOfComponents(), ok, OV_ABORT(), parameters, pc, printF(), profileFactor, profileType, rad, GridFunction::t, tc, GridFunction::u, u, uc, uLocal, Controller::updateControl(), userDefinedForcing(), vc, wc, xab, XC, xe, xv, ye, and ze.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), eulerStep(), Cgins::initializeSolution(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
Reimplemented in Cgsm.
References Parameters::dbase, debug(), Parameters::isSteadyStateSolver(), OV_ABORT(), parameters, and printF().
Referenced by advance(), advanceAdamsPredictorCorrector(), advanceSecondOrderSystem(), eulerStep(), getTimeStepAndNumberOfSubSteps(), and Cgmp::solve().
|
virtual |
Corrector step for moving grids.
This function is called at the corrector step to update the moving grids. For example, in a predictor corrector type algorithm we may want to correct the forces and torques on bodies since the solution can depend on these (For INS the pressure BC depends on the acceleration on the boundary ).
t1,cgf1 | (input) : solution at the old time |
t2,cgf2 | (input) : solution at the new time (these are valid values) |
References Parameters::dbase, and parameters.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), eulerStep(), Cgasf::initializeSolution(), Cgins::initializeSolution(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
inline |
References Parameters::dbase, and parameters.
Referenced by adaptGrids(), addArtificialDissipation(), Cgad::addForcing(), Cgins::addForcing(), Cgcns::addForcing(), Cgins::addForcingToPressureEquation(), Cgasf::addForcingToPressureEquation(), addGrids(), advance(), Cgsm::advance(), advanceAdamsPredictorCorrector(), advanceAdamsPredictorCorrectorNew(), Cgad::advanceADI(), advanceForwardEulerNew(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), advanceImplicitMultiStepNew(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgcns::applyBoundaryConditions(), Cgad::applyBoundaryConditions(), Cgasf::applyBoundaryConditions(), Cgins::applyBoundaryConditions(), Cgad::applyBoundaryConditionsForImplicitTimeStepping(), Cgins::applyBoundaryConditionsForImplicitTimeStepping(), applyFilter(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), Cgsm::assignInitialConditions(), assignInitialConditions(), Cgmp::assignInterfaceBoundaryConditions(), Cgmp::assignInterfaceRightHandSide(), Cgmp::assignInterfaceRightHandSideOld(), Cgins::assignLineSolverBoundaryConditions(), Cgsm::assignParabolicInitialConditions(), Cgins::assignPressureRHS(), Cgsm::assignSpecialInitialConditions(), Cgsm::assignTwilightZoneInitialConditions(), boundaryConditionPredictor(), buildGrid(), Cgins::buildImplicitSolvers(), Cgsm::buildInputOutputOptionsDialog(), Cgsm::buildRunTimeDialog(), Cgsm::checkDisplacementAndStress(), Cgmp::checkInterfaceForConvergence(), computeBodyForcing(), Cgsm::computeNumberOfStepsAndAdjustTheTimeStep(), computeNumberOfStepsAndAdjustTheTimeStep(), Cgins::determineErrors(), determineErrors(), Cgsm::endTimeStep(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), eulerStep(), fixupUnusedPoints(), Cgasf::formAllSpeedPressureEquation(), Cgad::formMatrixForImplicitSolve(), Cgcns::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), getAmrErrorFunction(), Cgsm::getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getInitialConditions(), getInitialConditions(), Cgsm::getInputOutputOption(), Cgcns::getInterfaceDataOptions(), Cgins::getInterfaceDataOptions(), Cgsm::getInterfaceDataOptions(), Cgmp::getInterfaceResiduals(), Cgmp::getInterfaceResidualsOld(), Cgins::getLineSolverBoundaryConditions(), Cgsm::getMaxDivAndCurl(), Cgmp::getTimeStep(), Cgsm::getTimeStep(), getTimeStep(), getTimeStepAndNumberOfSubSteps(), Cgcns::getTimeSteppingEigenvalue(), Cgad::getTimeSteppingEigenvalue(), Cgasf::getTimeSteppingEigenvalue(), Cgins::getTimeSteppingEigenvalue(), Cgad::getUt(), Cgcns::getUt(), Cgasf::getUt(), Cgins::getUt(), Cgsm::getVelocityAndStress(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), Cgsm::initializeInterfaces(), initializeSolution(), Cgsm::initializeTimeStepping(), initializeTimeSteppingFE(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgins::initializeTurbulenceModels(), Cgins::insImplicitMatrix(), Cgmp::interfaceProjection(), interpolateAndApplyBoundaryConditions(), jetInflow(), Cgins::lineSolverBoundaryConditions(), moveGrids(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), parabolicInflow(), Cgsm::plot(), Cgsm::printMemoryUsage(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), Cgins::project(), project(), readRestartFile(), saveRestartFile(), saveSequencesToShowFile(), Cgsm::saveShow(), saveShow(), setInterfacesAtPastTimes(), Cgad::setOgesBoundaryConditions(), Cgins::setOgesBoundaryConditions(), setup(), setupGridFunctions(), setVariableBoundaryValues(), smoothVelocity(), Cgmp::solve(), Cgsm::solve(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Cgins::solveForTimeIndependentVariables(), Cgsm::startTimeStep(), startTimeStepFE(), Cgsm::takeTimeStep(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), Cgins::updateDivergenceDamping(), Cgsm::updateForNewTimeStep(), Cgad::updateGeometryArrays(), Cgcns::updateGeometryArrays(), Cgasf::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgsm::updateGeometryArrays(), Cgins::updatePressureEquation(), Cgcns::updateStateVariables(), Cgins::updateStateVariables(), updateToMatchNewGrid(), and userDefinedForcing().
|
virtual |
Reimplemented in Cgins.
References GridFunction::conservativeToPrimitive(), GridFunction::conservativeVariables, GridFunction::form, form, GridFunction::gridVelocity, numberOfComponents(), GridFunction::primitiveToConservative(), GridFunction::t, and GridFunction::u.
Referenced by advanceAdamsPredictorCorrector(), Cgad::advanceADI(), advanceImplicitMultiStep(), advanceMidPoint(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), boundaryConditionPredictor(), eulerStep(), initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), interpolateAndApplyBoundaryConditions(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), printTimeStepInfo(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
These next loops need to be fixed for parallel
Reimplemented in Cgins.
References assert(), c, cg, Parameters::dbase, debug(), display(), e, ee, getBounds(), getIndex(), Parameters::getKnownSolution(), grid, Parameters::gridIsMoving(), i1, I1, i2, I2, i3, I3, isRectangular, lpNorm(), mask, maskLocal, maxNorm(), n, numberOfComponents(), outputSolution(), parameters, r, tc, u, uc, uLocal, Parameters::useConservativeVariables(), ut(), ux, uy, uz, v, vc, vt, wc, x, and xv.
|
virtual |
References printF().
|
virtual |
References assert(), axis, Parameters::bcNames, cg, Parameters::checkForValidBoundaryCondition(), Parameters::dbase, getName(), grid, Parameters::icNames, Parameters::noInterface, parameters, and side.
Referenced by displayParameters(), and outputHeader().
|
virtual |
Display DomainSolver parameters.
file | (input) : output info to this file. |
References Parameters::buildErrorEstimator(), cg, Parameters::checkForFloatingPointErrors, Parameters::dbase, Reactions::debug, displayBoundaryConditions(), Parameters::displayPdeParameters(), Parameters::getGridIsImplicit(), getName(), Parameters::getTimeSteppingName(), grid, Parameters::gridIsMoving(), implicitTimeStepSolverParameters, Parameters::isMovingGridProblem(), MovingGrids::movingGridOption(), MovingGrids::movingGridOptionName(), parameters, Parameters::polynomial, and Parameters::trigonometric.
Referenced by setParametersInteractively(), Cgins::setSolverParameters(), and setSolverParameters().
|
virtual |
End an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
Reimplemented in Cgsm.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::approximateFactorization, Parameters::dbase, endTimeStepAF(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), Parameters::forwardEuler, Parameters::implicit, parameters, and printF().
Referenced by advanceAdamsPredictorCorrectorNew(), advanceForwardEulerNew(), and advanceImplicitMultiStepNew().
|
virtual |
End an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
Referenced by endTimeStep().
|
virtual |
End an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
References assert(), current, Parameters::dbase, debug(), dt, dtb, dtp, fixupUnusedPoints(), fn, gf, Parameters::isAdaptiveGridProblem(), m, output(), parameters, printF(), printP(), saveSequenceInfo(), and u.
Referenced by endTimeStep().
|
virtual |
End an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
References assert(), current, Parameters::dbase, debug(), dtb, dtp, fixupUnusedPoints(), fn, getResidual(), gf, Parameters::implicit, m, movingGridProblem(), output(), parameters, printF(), printP(), residual(), saveSequenceInfo(), and u.
Referenced by endTimeStep().
|
virtual |
End an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
References assert(), current, Parameters::dbase, debug(), dtb, dtp, fixupUnusedPoints(), fn, gf, m, movingGridProblem(), output(), parameters, printF(), printP(), saveSequenceInfo(), and u.
Referenced by endTimeStep().
|
virtual |
References adaptGrids(), all, assert(), axis, GridFunction::cg, checkArrays(), checkForSymmetry(), computeBodyForcing(), computeNumberOfStepsAndAdjustTheTimeStep(), GridFunction::conservativeToPrimitive(), correctMovingGrids(), d, Parameters::dbase, debug(), determineErrors(), display(), dt, GridFunction::form, getAugmentedSolution(), GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getTimeStep(), getUt(), grid, Parameters::gridIsMoving(), GridFunction::gridVelocity, GridFunction::gridVelocityTime, i1, I1, i2, I2, i3, I3, interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), mask, moveGrids(), movingGridProblem(), N(), numberOfComponents(), numberOfStepsTaken, outputSolution(), OV_ABORT(), parameters, GridFunction::primitiveToConservative(), printF(), printP(), regridFrequency, solveForTimeIndependentVariables(), GridFunction::t, twilightZoneFlow(), GridFunction::u, updateForMovingGrids(), updateOpt, GridFunction::updateToMatchGrid(), Parameters::useConservativeVariables(), and v.
Referenced by advance(), advanceMidPoint(), and takeOneStep().
void DomainSolver::extrapolateInterpolationNeighbours | ( | GridFunction & | gf, |
const Range & | C | ||
) |
Extrapolate interpolation neighbours.
References GridFunction::cg, Parameters::dbase, grid, parameters, GridFunction::t, GridFunction::u, and u.
Referenced by Cgsm::advanceFOS(), Cgsm::advanceSOS(), and applyFilter().
|
virtual |
References Parameters::dbase, debug(), n, and parameters.
Referenced by advanceImplicitMultiStep(), advanceVariableTimeStepAdamsPredictorCorrector(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), interpolateAndApplyBoundaryConditions(), and Cgins::project().
|
virtual |
Reimplemented in Cgins, Cgcns, and Cgad.
Referenced by advanceImplicitMultiStep(), advanceNewton(), advanceTrapezoidal(), initializeTimeSteppingIM(), and takeTimeStepIM().
|
inline |
|
virtual |
: Look for a general option in the string "answer"
answer | (input) : check this command |
References Parameters::buildErrorEstimator(), cg, Parameters::dbase, OV_ABORT(), parameters, printF(), printP(), and update().
Referenced by setParametersInteractively().
|
virtual |
References assert(), Parameters::buildErrorEstimator(), cg, Parameters::dbase, debug(), getIndex(), grid, I1, I2, I3, mask, maskLocal, maxNorm(), mg, ok, and parameters.
Referenced by adaptGrids(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), newAdaptiveGridBuilt(), and tracking().
|
virtual |
References assert(), Parameters::buildErrorEstimator(), cg, Parameters::dbase, display(), grid, parameters, printF(), ue, and userDefinedErrorEstimator().
|
virtual |
Reimplemented in Cgins, Cgsm, and Cgcns.
References all, assign(), GridFunction::cg, cg, current, Parameters::dbase, dimension, ec, fn, getAmrErrorFunction(), getIndex(), gf, grid, I1, I2, I3, includeGhost, Parameters::isAdaptiveGridProblem(), isRectangular, mask, mg, N(), n, ok, parameters, residual(), Parameters::steadyStateRungeKutta, GridFunction::t, GridFunction::u, u, u0, uLocal, ur, and x.
Referenced by buildRunTimeDialog(), eulerStep(), output(), plot(), and takeTimeStepFE().
|
static |
const aString & DomainSolver::getClassName | ( | ) | const |
References className.
Referenced by boundaryConditionPredictor(), buildRunTimeDialog(), getInterfaceDataOptions(), outputHeader(), outputProbes(), Cgmp::printStatistics(), printStatistics(), Cgmp::printTimeStepInfo(), and setup().
|
virtual |
: Look for a forcing option in the string "answer"
answer | (input) : check this command |
Reimplemented in Cgsm.
Referenced by setParametersInteractively().
|
virtual |
: Look for a general option in the string "answer"
answer | (input) : check this command |
Reimplemented in Cgsm.
References cg, Parameters::checkForFloatingPointErrors, Parameters::dbase, implicitTimeStepSolverParameters, parameters, pressureSolverParameters, and printF().
Referenced by plot(), and setParametersInteractively().
|
virtual |
Evaluate the min and max grid spacing, total number of grid points etc.
References axis, c, cg, Parameters::dbase, dtv, FOR_3D, getIndex(), grid, hMax, hMin, i1, I1, i2, I2, i3, I3, maskLocal, numberOfGridPoints, ok, and parameters.
Referenced by outputHeader(), and Cgsm::printMemoryUsage().
|
virtual |
References Parameters::dbase, and parameters.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), buildAmrGridsForInitialConditions(), eulerStep(), initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
Determine the type of initial conditions to assign.
command | (input) : optionally supply a command to execute. Attempt to execute the command and then return. The return value is 0 if the command was executed, 1 otherwise. |
interface | (input) : use this dialog. If command=="build dialog", fill in the dialog and return. |
guiState | (input) : use this GUIState if provided. |
dialogState | (input) : add items found here to the dialog. |
Reimplemented in Cgsm.
References addPrefix(), all, assert(), assign(), assignInitialConditions(), c, center, GridFunction::cg, cg, Parameters::checkForFloatingPointErrors, checkSolution(), current, Parameters::dbase, debug(), Parameters::defaultValue, equationDomainList, ForAllComponents, getIndex(), gf, grid, ListOfEquationDomains::gridDomainNumberList, i, I1, I2, I3, if(), includeGhost, Parameters::inputParameterValues(), Parameters::isAdaptiveGridProblem(), isDifferent(), Parameters::isMovingGridProblem(), Parameters::knownSolutionInitialCondition, n, name, nc, Parameters::noInitialConditionChosen, numberOfComponents(), ok, parameters, pc, printF(), pShowFileDialog, pStepFunctionDialog, pTzOptionsDialog, pUniformFlowDialog, Parameters::readInitialConditionFromRestartFile, Parameters::readInitialConditionFromShowFile, readRestartFile(), Parameters::setTwilightZoneFunction(), Parameters::setTwilightZoneParameters(), setupUserDefinedInitialConditions(), Parameters::showfileForcing, side, Parameters::spinDownInitialCondition, Parameters::stepFunctionInitialCondition, GridFunction::t, Parameters::twilightZoneFunctionInitialCondition, GridFunction::u, u, uc, uLocal, Parameters::uniformInitialCondition, updateEquationDomainsForAMR(), Parameters::updateToMatchGrid(), Parameters::userDefinedInitialCondition, vc, and wc.
Referenced by Cgsm::getInitialConditions(), and setParametersInteractively().
|
virtual |
Return the interface data required for a given type of interface.
info | (input) : the descriptor for the interface. |
interfaceDataOptions | (output) : a list of items from Parameters::InterfaceDataEnum that define which data to get (or which data were set). Multiple items are chosen by bit-wise or of the different options |
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
References axis, GridFaceDescriptor::axis, Parameters::dbase, getClassName(), GridFaceDescriptor::grid, grid, Parameters::heatFluxInterface, Parameters::heatFluxInterfaceData, OV_ABORT(), parameters, Parameters::positionInterfaceData, printP(), side, GridFaceDescriptor::side, Parameters::tractionInterface, and Parameters::tractionInterfaceData.
int DomainSolver::getMaterialProperties | ( | GridFunction & | gf, |
realCompositeGridFunction & | matPropValues | ||
) |
Evaluate the variable material parameters (for plotting for example).
This function fills in a grid function with the variable material properties.
gf | (input) : current solution |
matPropValues | (output) : holds the values of the material properties. |
References all, assert(), GridFunction::cg, cg, GridMaterialProperties::constantMaterialProperties, Parameters::dbase, e, FOR_3D, getIndex(), GridMaterialProperties::getMaterialFormat(), GridMaterialProperties::getMaterialIndexArray(), GridMaterialProperties::getMaterialValuesArray(), grid, i1, I1, i2, I2, i3, I3, isRectangular, m, mask, maskLocal, materialFormat, mg, ok, parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), tz, and GridMaterialProperties::variableMaterialProperties.
Referenced by Cgsm::plot(), and plot().
bool DomainSolver::getMovingGridCorrectionHasConverged | ( | ) |
Return true if the correction steps for moving grids have converged. This is usually only an issue for "light" bodies.
References Parameters::dbase, and parameters.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), takeTimeStepIM(), and takeTimeStepPC().
real DomainSolver::getMovingGridMaximumRelativeCorrection | ( | ) |
Return the maximum relative change in the moving grid correction scheme. This is usually only an issue for "light" bodies.
References Parameters::dbase, and parameters.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
: Look for a general option in the string "answer"
answer | (input) : check this command |
References cg, Parameters::dbase, MovingGrids::getDeformingBody(), MovingGrids::getMatrixMotionBody(), MovingGrids::getNumberOfDeformingBodies(), MovingGrids::getNumberOfMatrixMotionBodies(), MovingGrids::getNumberOfRigidBodies(), MovingGrids::getRigidBody(), parameters, printF(), update(), MatrixMotion::update(), DeformingBodyMotion::update(), and RigidBodyMotion::update().
Referenced by plot(), and setParametersInteractively().
const aString & DomainSolver::getName | ( | ) | const |
References name.
Referenced by Cgsm::advanceFOS(), Cgsm::advanceSOS(), Cgins::assignPressureRHS(), Cgins::buildImplicitSolvers(), displayBoundaryConditions(), displayParameters(), Cgsm::getGeneralOption(), Cgmp::getInterfaceResidualsOld(), Cgmp::getTimeStep(), getTimeStep(), Cgmp::initializeInterfaces(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), output(), outputHeader(), outputProbes(), Cgmp::plot(), printP(), Cgmp::printStatistics(), printStatistics(), Cgmp::printTimeStepInfo(), Cgsm::setBoundaryCondition(), setParametersInteractively(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), and writeParameterSummary().
|
static |
Save the original boundary conditions from the CompositeGrid.
cg | (input) : CompositeGrid. |
originalBoundaryCondition | (input) : save boundary conditions in this array, originalBoundaryCondition(0:1,0:2,0:ngd-1), ngd= number of grids. |
References all, axis, boundaryCondition(), dimension, display(), grid, printF(), and side.
Referenced by setParametersInteractively(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), and Cgsm::setupPde().
|
virtual |
: Look for an output option in the string "answer"
answer | (input) : check this command |
References cg, Parameters::dbase, n, parameters, printF(), ProbeInfo::update(), and Parameters::updateShowFile().
Referenced by setParametersInteractively().
const aString & DomainSolver::getPdeName | ( | ) | const |
References pdeName.
|
virtual |
: Look for a plot option in the string "answer"
answer | (input) : check this command |
Reimplemented in Cgsm.
References Parameters::dbase, parameters, and printF().
Referenced by Cgmp::plot(), plot(), and setParametersInteractively().
|
virtual |
Compute the residual for "steady state" solvers.
t | (input): current time |
dt | (input): current global time step – is this used ? |
cgf | (input): holds solution to compute the residual from |
residual | (output): residual |
Reimplemented in Cgins.
References printF().
Referenced by advanceImplicitMultiStep(), and endTimeStepIM().
int DomainSolver::getResidualInfo | ( | real | t0, |
const realCompositeGridFunction & | residual, | ||
real & | maximumResidual, | ||
real & | maximuml2, | ||
FILE * | file = NULL |
||
) |
Compute the max and l2 residuals and optionally output the info to a file.
t0 | (input) : current time (used in the output to the file). |
residual | (input) : holds the residual. |
maximumResidual | (output) : maximum residual over all components |
maximuml2 | (output) : maximum l2-residual over all components |
file | (output) : if file!=NULL then output info about the residuals to this file. |
References Parameters::dbase, dt, Parameters::isSteadyStateSolver(), maxNorm(), N(), n, and parameters.
Referenced by Cgins::getAugmentedSolution(), and saveSequenceInfo().
|
virtual |
References Parameters::dbase, getIndex(), I1, I2, I3, mg, n, numberOfComponents(), parameters, and u.
|
virtual |
References a0, assert(), axis, Parameters::bcType(), Parameters::bcVariesInSpace(), c, computeForcing, Parameters::dbase, dta, Parameters::getBoundaryData(), Parameters::getComponents(), getGhostIndex(), EquationDomain::getPDE(), Parameters::getTimeDependenceBoundaryConditionParameters(), grid, ListOfEquationDomains::gridDomainNumberList, Ig1, Ig2, Ig3, includeGhost, maskLocal, n, ok, omega, Parameters::parabolicInflowOscillating, Parameters::parabolicInflowRamped, parameters, Parameters::ramped, Parameters::rampInflow, side, ta, TIMEPAR, u0, uc, and Parameters::uniformInflowOscillating.
Referenced by Cgcns::applyBoundaryConditions(), Cgsm::applyBoundaryConditions(), applyBoundaryConditions(), Cgcns::applyBoundaryConditionsForImplicitTimeStepping(), and getTimeDerivativeOfBoundaryValues().
|
virtual |
References GridFunction::cg, computeTimeDerivativeOfForcing, getTimeDependentBoundaryConditions(), grid, mg, parameters, setVariableBoundaryValues(), Parameters::thereAreTimeDependentUserBoundaryConditions(), and userDefinedBoundaryValues().
Referenced by Cgasf::gridAccelerationBC(), and Cgins::gridAccelerationBC().
|
virtual |
Reimplemented in Cgsm, and Cgmp.
References GridFunction::cg, cg, Parameters::dbase, debug(), dtp, Parameters::getGridIsImplicit(), GridFunction::getGridVelocity(), getName(), grid, Parameters::implicit, Parameters::isMovingGridProblem(), OV_ABORT(), parameters, printF(), Parameters::steadyStateNewton, GridFunction::t, GridFunction::u, variableDt, and Parameters::variableTimeStepAdamsPredictorCorrector.
Referenced by advance(), advanceAdamsPredictorCorrector(), advanceSecondOrderSystem(), Cgasf::allSpeedImplicitTimeStep(), buildAmrGridsForInitialConditions(), eulerStep(), getTimeStepAndNumberOfSubSteps(), Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), and initializeSolution().
|
virtual |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::adi, Parameters::dbase, debug(), e, eps, Parameters::forwardEuler, getTimeSteppingEigenvalue(), Parameters::implicit, Parameters::implicitAllSpeed, Parameters::midPoint, parameters, printF(), Parameters::rKutta, Parameters::steadyStateNewton, Parameters::steadyStateRungeKutta, and Parameters::variableTimeStepAdamsPredictorCorrector.
int DomainSolver::getTimeStepAndNumberOfSubSteps | ( | GridFunction & | cgf, |
int | stepNumber, | ||
int & | numberOfSubSteps, | ||
real & | dt | ||
) |
Compute a new time step and the number sub-steps to reach the next time to print.
This function is usually called from within the subStep loop. NOTE: this function also changes the "dt" variable in the data-base. (input) : current solution (input) : current subStep number (output): the number of sub-steps to take to reach the nextTimeToPrint (input/output) : on input the current time step, on output the new time step.
References computeNumberOfStepsAndAdjustTheTimeStep(), GridFunction::conservativeToPrimitive(), Parameters::dbase, debug(), getTimeStep(), Parameters::isAdaptiveGridProblem(), parameters, printF(), regridFrequency, GridFunction::t, and Parameters::useConservativeVariables().
Referenced by advanceForwardEulerNew().
|
virtual |
Reimplemented in Cgins, Cgasf, Cgad, and Cgcns.
References assert(), Parameters::dbase, equationDomainList, getIndex(), grid, ListOfEquationDomains::gridDomainNumberList, I1, I2, I3, and parameters.
Referenced by getTimeStep().
|
virtual |
Reimplemented in Cgsm, Cgins, Cgasf, Cgmp, Cgad, and Cgcns.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, applyFilter(), assert(), Parameters::backwardEuler, cg, Parameters::crankNicolson, Parameters::dbase, GridFunctionFilter::explicitFilter, GridFunctionFilter::filterCoefficient, GridFunctionFilter::filterFrequency, GridFunctionFilter::filterType, Parameters::forwardEuler, Parameters::getGridIsImplicit(), grid, i, Parameters::implicit, Parameters::implicitAllSpeed, Parameters::lineImplicit, mg, Parameters::midPoint, Parameters::notImplicit, GridFunctionFilter::numberOfFilterIterations, GridFunctionFilter::orderOfFilter, parameters, printF(), Parameters::rKutta, Parameters::setGridIsImplicit(), Parameters::steadyStateNewton, Parameters::steadyStateRungeKutta, GridFunctionFilter::update(), and Parameters::variableTimeStepAdamsPredictorCorrector.
Referenced by Cgcns::getTimeSteppingOption(), Cgad::getTimeSteppingOption(), Cgmp::getTimeSteppingOption(), Cgasf::getTimeSteppingOption(), Cgins::getTimeSteppingOption(), plot(), and setParametersInteractively().
|
virtual |
Reimplemented in Cgsm.
References GridFunction::cg, Parameters::checkForFloatingPointErrors, checkSolution(), Parameters::dbase, GridFunction::form, GridFunction::getGridVelocity(), grid, numberOfStepsTaken, parameters, GridFunction::primitiveToConservative(), GridFunction::primitiveVariables, GridFunction::u, and Parameters::useConservativeVariables().
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), buildAmrGridsForInitialConditions(), eulerStep(), Cgcns::initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
|
virtual |
Reimplemented in Cgins, Cgcns, and Cgad.
References printF().
Referenced by advanceImplicitMultiStep(), advanceNewton(), advanceTrapezoidal(), and takeTimeStepIM().
|
virtual |
Reimplemented in Cgins.
References Parameters::dbase, and parameters.
Referenced by Cgins::initializeFactorization().
|
virtual |
|
virtual |
Reimplemented in Cgins, Cgasf, and Cgcns.
References Parameters::bcVariesInSpace(), cg, GridFunction::conservativeToPrimitive(), current, Parameters::dbase, debug(), determineErrors(), dt, form, getGridVelocity(), getTimeStep(), gf, grid, i, initializeTurbulenceModels(), interpolateAndApplyBoundaryConditions(), Parameters::isMovingGridProblem(), numberOfGridFunctionsToUse, parameters, GridFunction::primitiveToConservative(), printF(), project(), setVariableMaterialProperties(), GridFunction::t, timeIndependentBoundaryConditions(), GridFunction::u, u, uc, updateToMatchGrid(), and Parameters::updateTurbulenceModels().
Referenced by Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), and setup().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
Reimplemented in Cgsm.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::approximateFactorization, current, Parameters::dbase, Parameters::forwardEuler, gf, Parameters::implicit, initializeTimeSteppingAF(), initializeTimeSteppingFE(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), output(), parameters, and printF().
Referenced by advanceAdamsPredictorCorrectorNew(), advanceForwardEulerNew(), and advanceImplicitMultiStepNew().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
References Parameters::approximateFactorization, assert(), Parameters::doNotComputeImplicitTerms, fn, init, CG_ApproximateFactorization::parallelBC, and printF().
Referenced by initializeTimeStepping().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
References assert(), Parameters::dbase, debug(), dt, AdamsPCData::dtb, dtb, AdamsPCData::dtp, dtp, Parameters::forwardEuler, init, AdamsPCData::mab0, AdamsPCData::mab1, AdamsPCData::mab2, AdamsPCData::nab0, AdamsPCData::nab1, AdamsPCData::nab2, AdamsPCData::nab3, AdamsPCData::ndt0, parameters, and printF().
Referenced by initializeTimeStepping().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
References all, assert(), assign(), axis, c, GridFunction::cg, cg, Parameters::crankNicolson, Parameters::dbase, debug(), determineErrors(), display(), Parameters::doNotComputeImplicitTerms, dt, AdamsPCData::dtb, dtb, AdamsPCData::dtp, dtp, e, fn, GridFunction::form, formMatrixForImplicitSolve(), GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getUt(), gf, grid, Parameters::gridIsMoving(), i, I1, I2, I3, Parameters::implicit, init, Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), isRectangular, m, AdamsPCData::mab0, AdamsPCData::mab1, AdamsPCData::mab2, moveGrids(), movingGridProblem(), N(), n, AdamsPCData::nab0, AdamsPCData::nab1, AdamsPCData::nab2, AdamsPCData::nab3, AdamsPCData::ndt0, numberOfComponents(), numberOfStepsTaken, ok, orderOfAccuracy, orderOfPredictorCorrector, orderOfTimeExtrapolationForPressure, parameters, pc, poisson, pp, previousPressure, printF(), side, GridFunction::t, GridFunction::u, u, uc, updateStateVariables(), Parameters::useConservativeVariables(), and V.
Referenced by initializeTimeStepping().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, all, assert(), assign(), axis, c, GridFunction::cg, cg, checkArrays(), Parameters::dbase, debug(), determineErrors(), display(), dtb, dtp, e, fn, GridFunction::form, GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getUt(), gf, grid, Parameters::gridIsMoving(), i, I1, I2, I3, init, Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), isRectangular, m, moveGrids(), movingGridProblem(), N(), n, numberOfComponents(), numberOfStepsTaken, ok, orderOfAccuracy, orderOfPredictorCorrector, orderOfTimeExtrapolationForPressure, parameters, pc, poisson, pp, previousPressure, printF(), side, GridFunction::t, GridFunction::u, u, uc, updateStateVariables(), Parameters::useConservativeVariables(), and V.
Referenced by initializeTimeStepping().
|
virtual |
Reimplemented in Cgins.
Referenced by initializeSolution().
|
virtual |
|
virtual |
References GridFunction::conservativeToPrimitive(), Parameters::dbase, Parameters::getDerivedFunction(), Parameters::interpolateConservativeVariables, Parameters::interpolatePrimitiveAndPressure, Parameters::interpolatePrimitiveVariables, parameters, GridFunction::primitiveToConservative(), GridFunction::t, GridFunction::u, and u.
Referenced by Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgasf::allSpeedImplicitTimeStep(), Cgins::getLineSolverBoundaryConditions(), Cgins::initializeTurbulenceModels(), interpolateAndApplyBoundaryConditions(), Cgins::lineSolverBoundaryConditions(), Cgins::project(), and smoothVelocity().
|
virtual |
References applyBoundaryConditions(), assert(), GridFunction::cg, Parameters::checkForFloatingPointErrors, checkSolution(), Parameters::dbase, debug(), determineErrors(), display(), fixupUnusedPoints(), get< int >(), grid, interpolate(), outputSolution(), parameters, GridFunction::t, GridFunction::u, and updateStateVariables().
Referenced by Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), Cgsm::advanceMethodOfLines(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), buildAmrGridsForInitialConditions(), eulerStep(), initializeSolution(), takeTimeStepFE(), takeTimeStepPC(), and updateToMatchNewGrid().
|
virtual |
Reimplemented in Cgcns.
Referenced by Cgins::formMatrixForImplicitSolve().
|
virtual |
References axis, Parameters::bcType(), c, center, GridFunction::cg, cg, Parameters::dbase, debug(), Parameters::getBoundaryData(), getGhostIndex(), grid, I1, I2, I3, Ig1, Ig2, Ig3, Parameters::jetInflow, Parameters::jetInflowOscillating, Parameters::jetInflowRamped, Parameters::jetInflowUserDefinedTimeDependence, n, parameters, printF(), and side.
Referenced by timeIndependentBoundaryConditions().
|
virtual |
References assert(), GridFunction::cg, checkArrays(), Parameters::dbase, debug(), display(), grid, Parameters::gridIsMoving(), Parameters::isMovingGridProblem(), ogen(), parameters, printF(), setInterfacesAtPastTimes(), and GridFunction::t.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), Cgasf::allSpeedImplicitTimeStep(), eulerStep(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
inlinevirtual |
References Parameters::isMovingGridProblem(), and parameters.
Referenced by adaptGrids(), advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), Cgasf::allSpeedImplicitTimeStep(), buildAmrGridsForInitialConditions(), endTimeStepIM(), endTimeStepPC(), eulerStep(), Cgasf::formAllSpeedPressureEquation(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgasf::solveForAllSpeedPressure(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), Cgins::updateForMovingGrids(), updateForMovingGrids(), and updateToMatchNewGrid().
|
virtual |
References Parameters::buildErrorEstimator(), cg, Parameters::dbase, getAmrErrorFunction(), Parameters::isAdaptiveGridProblem(), parameters, printF(), and Parameters::updateToMatchGrid().
Referenced by tracking().
|
inline |
References Parameters::dbase, and parameters.
Referenced by Cgad::addForcing(), Cgasf::addForcingToPressureEquation(), Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceNewton(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgcns::applyBoundaryConditions(), Cgad::applyBoundaryConditions(), Cgasf::applyBoundaryConditions(), Cgins::applyBoundaryConditions(), Cgcns::applyBoundaryConditionsForImplicitTimeStepping(), Cgad::applyBoundaryConditionsForImplicitTimeStepping(), applyFilter(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), assignInitialConditions(), Cgins::assignLineSolverBoundaryConditions(), Cgsm::assignParabolicInitialConditions(), Cgins::assignPressureRHS(), Cgsm::assignSpecialInitialConditions(), Cgsm::assignTwilightZoneInitialConditions(), Cgad::buildImplicitSolvers(), Cgmp::buildRunTimeDialog(), buildRunTimeDialog(), Cgsm::checkDisplacementAndStress(), computeBodyForcing(), Cgsm::computeDissipation(), Cgins::determineErrors(), determineErrors(), eulerStep(), Cgasf::formAllSpeedPressureEquation(), Cgcns::formImplicitTimeSteppingMatrix(), Cgcns::formMatrixForImplicitSolve(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getInitialConditions(), getInitialConditions(), Cgmp::getInterfaceResiduals(), Cgins::getLineSolverBoundaryConditions(), Cgsm::getMaxDivAndCurl(), getSolutionBounds(), Cgasf::getTimeSteppingEigenvalue(), Cgad::getUt(), Cgcns::getUt(), Cgasf::getUt(), Cgsm::getVelocityAndStress(), Cgsm::initializeKnownSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgins::insImplicitMatrix(), Cgins::lineSolverBoundaryConditions(), outputProbes(), Cgsm::outputResults(), Cgmp::plot(), plot(), Cgsm::printMemoryUsage(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgsm::saveSequencesToShowFile(), Cgsm::saveShow(), setInterfaceBoundaryCondition(), Cgad::setOgesBoundaryConditions(), Cgsm::setupGridFunctions(), Cgad::setupPde(), Cgsm::setupUserDefinedForcing(), setupUserDefinedForcing(), Cgad::setupUserDefinedInitialConditions(), Cgsm::setupUserDefinedInitialConditions(), setupUserDefinedInitialConditions(), setupUserDefinedMaterialProperties(), Cgsm::solve(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), Cgins::updatePressureEquation(), Cgsm::userDefinedForcing(), userDefinedForcing(), Cgad::userDefinedInitialConditions(), Cgsm::userDefinedInitialConditions(), userDefinedInitialConditions(), userDefinedMaterialProperties(), userDefinedOutput(), and Cgad::writeParameterSummary().
|
virtual |
References c, GridFunction::cg, Parameters::dbase, getAugmentedSolution(), getName(), grid, n, outputProbes(), parameters, setName(), GridFunction::t, tracking(), u, userDefinedOutput(), and v.
Referenced by advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), advanceImplicitMultiStep(), advanceMidPoint(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), Cgsm::getEnergy(), Cgsm::getErrors(), initializeTimeStepping(), outputHeader(), Cgsm::outputResults(), Cgmp::printStatistics(), printStatistics(), and userDefinedOutput().
|
virtual |
Output the main header banner that includes info about the grid and parameters.
References assert(), c, cg, Parameters::dbase, displayBoundaryConditions(), equationDomainList, getClassName(), getGridInfo(), EquationDomain::getName(), getName(), EquationDomain::getPDE(), grid, EquationDomain::gridList, hMax, hMin, name, numberOfGridPoints, output(), parameters, Parameters::pdeName, pdeName, poisson, pressureSolverParameters, Parameters::trigonometric, and writeParameterSummary().
Referenced by Cgsm::setup(), and setup().
|
virtual |
output probe information at a given time
References adcBoussinesq, assert(), axis, bb, ProbeInfo::boundingBox, ProbeInfo::boundingBoxGrid, c, center, GridFunction::cg, cg, className, Parameters::dbase, ProbeInfo::dbase, dimension, dir, dx, ProbeInfo::file, ProbeInfo::fileName, FOR_3D, getClassName(), GridFunction::getGridVelocity(), getIndex(), getName(), ProbeInfo::grid, grid, Parameters::gridIsMoving(), i, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, ProbeInfo::iv, j, J1, J2, J3, mg, name, normal, numberOfComponents(), ProbeInfo::numberOfLayers, ProbeInfo::numberOfTimes, ok, OV_ABORT(), parameters, pc, ProbeInfo::pdb, printF(), ProbeInfo::probeAtGridPoint, ProbeInfo::probeAtLocation, ProbeInfo::probeBoundingBox, ProbeInfo::probeRegion, ProbeInfo::probeType, rx, side, GridFunction::t, tc, ProbeInfo::times, GridFunction::u, u, uc, uLocal, UX22, UX22R, UX23, UY22, UY22R, UY23, UZ23, UZ23R, vc, wc, x, xab, xBounds, XC, XC0, XC1, XC2, and xv.
Referenced by output(), and Cgsm::outputResultsAfterEachTimeStep().
|
virtual |
Reimplemented in Cgins.
References axis, c, cg, Parameters::dbase, getIndex(), grid, i1, I1, i2, I2, i3, I3, mask, n, Parameters::numberOfGhostPointsNeeded(), ok, parameters, and x.
Referenced by adaptGrids(), Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), Cgsm::advanceMethodOfLines(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceVariableTimeStepAdamsPredictorCorrector(), boundaryConditionPredictor(), determineErrors(), eulerStep(), Cgcns::getUt(), interpolateAndApplyBoundaryConditions(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), project(), takeTimeStepFE(), and takeTimeStepPC().
|
virtual |
References printF().
|
inline |
References pp.
Referenced by Cgasf::allSpeedImplicitTimeStep(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignSpecialInitialConditions(), Cgasf::formAllSpeedPressureEquation(), Cgsm::getForcing(), Cgsm::getInitialConditions(), Cgcns::getTimeSteppingEigenvalue(), printMemoryUsage(), Cgmp::printStatistics(), printStatistics(), Cgins::project(), Cgasf::setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Cgins::solveForTimeIndependentVariables(), Cgins::updateToMatchGrid(), and Cgsm::userDefinedBoundaryValues().
|
virtual |
References a, all, assert(), axis, Parameters::bcType(), blasiusFData, blasiusFPData, Parameters::blasiusProfile, c, c2, center, GridFunction::cg, cg, Parameters::dbase, debug(), dir, display(), dx, FOR_3D, Parameters::getBoundaryData(), getGhostIndex(), grid, Parameters::howManyBcTypes(), i, i1, I1, i2, I2, i3, I3, Ig1, Ig2, Ig3, includeGhost, isRectangular, j, mask, maskLocal, n, Parameters::noSlipWall, ok, Parameters::parabolicInflow, Parameters::parabolicInflowOscillating, Parameters::parabolicInflowRamped, Parameters::parabolicInflowUserDefinedTimeDependence, parameters, Parameters::penaltyBoundaryCondition, printF(), PROFILE3, r, side, u, u0, VERTEX0, VERTEX1, VERTEX2, VERTEX20, VERTEX21, x, and xab.
Referenced by timeIndependentBoundaryConditions().
|
inline |
References ppL.
Referenced by Cgasf::addAllSpeedImplicitForcing(), Cgasf::addForcing(), Cgasf::allSpeedImplicitTimeStep(), Cgasf::formAllSpeedPressureEquation(), Cgasf::getTimeSteppingEigenvalue(), Cgasf::getUt(), Cgasf::initializeSolution(), Cgasf::solveForAllSpeedPressure(), and Cgasf::updateToMatchGrid().
|
virtual |
recompute augmented solution
Reimplemented in Cgmp.
References addGrids(), assert(), GridFunction::cg, chooseAComponentMenuItem, current, Parameters::dbase, dt, getAugmentedSolution(), getGeneralOption(), getMaterialProperties(), getMovingGridOption(), getPlotOption(), getTimeSteppingOption(), gf, Parameters::isSteadyStateSolver(), itemsToPlot, Parameters::maximumNumberOfOutputFiles, movieFileName, movieFrame, n, name, numberOfComponents(), parameters, printF(), saveRestartFile(), Parameters::setPdeParameters(), setPlotTitle(), setSensitivity(), GridFunction::u, u, Parameters::updateShowFile(), and v.
Referenced by advance().
|
virtual |
Output information about the memory usage.
This information is normally printed at the end of the run.
file | (input) : output to this file. |
Reimplemented in Cgsm.
References GridFunction::cg, cg, coeff, current, Parameters::dbase, finiteDifferenceOperators, fn, gf, grid, i, implicitSolver, maximumNumberOfGridFunctionsToUse, np, numberOfGridPoints, numberOfImplicitSolvers, p(), parameters, pLineSolve, poisson, poissonCoefficients, pp, pressureRightHandSide, LineSolve::sizeOf(), and sizeOf().
Referenced by printStatistics().
void DomainSolver::printP | ( | const char * | format, |
... | |||
) | const |
Domain solver print function with a prefix identifier string.
implementation of a "printf" function that adds a prefix string to identify the DomainSolver (and only prints on processor 0)
References getName(), and printF().
Referenced by adaptGrids(), Cgsm::advance(), Cgsm::advanceFOS(), Cgsm::advanceMethodOfLines(), Cgcns::applyBoundaryConditions(), Cgad::applyBoundaryConditions(), Cgins::applyBoundaryConditions(), Cgad::applyBoundaryConditionsForImplicitTimeStepping(), Cgins::applyBoundaryConditionsForImplicitTimeStepping(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignInitialConditions(), Cgsm::assignSpecialInitialConditions(), checkSolution(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), eulerStep(), getAdaptiveGridOption(), Cgsm::getErrors(), Cgad::getInterfaceDataOptions(), Cgcns::getInterfaceDataOptions(), Cgasf::getInterfaceDataOptions(), Cgins::getInterfaceDataOptions(), Cgsm::getInterfaceDataOptions(), getInterfaceDataOptions(), Cgmp::getInterfaceResidualsOld(), Cgsm::getTimeStep(), Cgcns::getUt(), Cgins::getUt(), Cgad::implicitSolve(), Cgins::implicitSolve(), Cgsm::outputResults(), printStatistics(), setInterfaceBoundaryCondition(), Cgad::setOgesBoundaryConditions(), Cgins::setOgesBoundaryConditions(), Cgins::setup(), Cgsm::takeTimeStep(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), Cgsm::updateGeometryArrays(), Cgad::userDefinedInitialConditionsCleanup(), and Cgsm::userDefinedInitialConditionsCleanup().
|
virtual |
Output timing statistics.
This information is normally printed at the end of the run.
file | (input) : output to this file. |
Reimplemented in Cgmp.
References Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, GridFunction::cg, cg, current, Parameters::dbase, getClassName(), getName(), gf, grid, i, Parameters::implicit, implicitSolver, Parameters::isAdaptiveGridProblem(), m, np, numberOfGridPoints, numberOfImplicitSolvers, output(), p(), parameters, poisson, printF(), printMemoryUsage(), printP(), s, and GridFunction::t.
Referenced by main(), and Cgsm::solve().
|
virtual |
Reimplemented in Cgsm, Cgins, Cgasf, Cgmp, and Cgcns.
References checkArrays(), current, Parameters::dbase, debug(), determineErrors(), dt, getBounds(), gf, i, Parameters::isSteadyStateSolver(), n, numberOfComponents(), outputSolution(), parameters, and uc.
Referenced by advance().
|
virtual |
Reimplemented in Cgins, and Cgcns.
References applyBoundaryConditions(), GridFunction::cg, Parameters::dbase, debug(), Parameters::isAxisymmetric(), outputSolution(), parameters, poisson, printF(), ProjectVelocity::projectVelocity(), ProjectVelocity::setCompare3Dto2D(), ProjectVelocity::setIsAxisymmetric(), ProjectVelocity::setNumberOfSmoothsPerProjectionIteration(), ProjectVelocity::setPoissonSolver(), ProjectVelocity::setVelocityComponent(), GridFunction::u, and updateToMatchGrid().
Referenced by initializeSolution().
|
inline |
|
virtual |
References GridFunction::cg, cg, GridFunction::get(), Parameters::get(), parameters, GridFunction::t, and GridFunction::u.
Referenced by getInitialConditions(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), and Cgsm::setupPde().
|
virtual |
References debug(), GridFunction::get(), Parameters::get(), parameters, and GridFunction::t.
|
inline |
References prho.
Referenced by Cgasf::addAllSpeedImplicitForcing(), Cgins::addForcing(), Cgasf::addForcing(), Cgasf::addForcingToPressureEquation(), Cgsm::advance(), Cgsm::advanceFOS(), Cgsm::advanceSOS(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), Cgsm::assignParabolicInitialConditions(), Cgsm::assignSpecialInitialConditions(), Cgsm::assignTwilightZoneInitialConditions(), Cgsm::Cgsm(), Cgsm::checkDisplacementAndStress(), Cgins::computeTurbulenceQuantities(), Cgasf::formAllSpeedPressureEquation(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getInitialConditions(), Cgsm::getTimeStep(), Cgasf::getUt(), Cgsm::getVelocityAndStress(), Cgsm::userDefinedForcing(), and Cgsm::userDefinedInitialConditions().
|
inline |
References prL.
Referenced by Cgasf::addAllSpeedImplicitForcing(), Cgasf::addForcing(), Cgasf::allSpeedImplicitTimeStep(), Cgasf::formAllSpeedPressureEquation(), Cgasf::getTimeSteppingEigenvalue(), Cgasf::getUt(), Cgasf::initializeSolution(), Cgasf::solveForAllSpeedPressure(), and Cgasf::updateToMatchGrid().
|
virtual |
References debug(), parameters, GridFunction::put(), Parameters::put(), and GridFunction::t.
Referenced by plot(), and saveShow().
|
virtual |
Save sequence info (such as the norm of the residual) into the time history arrays.
t0 | (input) : current time. |
residual | (input) : holds the residual (when appropriate). |
References all, Parameters::dbase, getResidualInfo(), parameters, and R.
Referenced by advance(), advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), endTimeStepFE(), endTimeStepIM(), and endTimeStepPC().
|
virtual |
Save sequence info to the show file.
Reimplemented in Cgsm.
References Parameters::dbase, debug(), N(), name, parameters, printF(), and S.
Referenced by advance(), and saveShow().
|
virtual |
Save a solution in the show file.
gf0 | (input) : save this grid function. |
Reimplemented in Cgsm, and Cgmp.
References all, assert(), axis, Parameters::axisymmetric, boundaryCondition(), GridFunction::cg, Parameters::dbase, debug(), dimension, dt, eps, Parameters::getDerivedFunction(), getIndex(), grid, i, I1, I2, I3, includeGhost, Parameters::isAxisymmetric(), Parameters::isMovingGridProblem(), Parameters::isSteadyStateSolver(), mask, n, numberSavedToShowFile, ok, parameters, pc, printF(), restartNumber, Parameters::saveParametersToShowFile(), saveRestartFile(), saveSequencesToShowFile(), saveShowFileComments(), Controller::saveToShowFile(), MovingGrids::saveToShowFile(), side, GridFunction::t, tc, GridFunction::u, u, uc, uy, v, V, vc, wc, x, y, and z.
Referenced by advance(), and takeTimeStepFE().
|
virtual |
Save comments in the show file.
show | (input) : show file. |
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
References i, parameters, and Parameters::pdeName.
Referenced by saveShow().
|
virtual |
References assert(), axis, Parameters::bcNames, cg, Parameters::dbase, grid, i, n, parameters, printF(), S, Parameters::setBoundaryConditionValues(), and side.
Referenced by setParametersInteractively().
|
virtual |
References axis, cg, grid, parameters, Parameters::setDefaultDataForABoundaryCondition(), and side.
|
virtual |
Set the time to integrate to.
tFinal_ | (input) : integrate to this time this final time. |
References Parameters::dbase, and parameters.
|
virtual |
Setup an interface boundary condition.
This function is used when solving the interface equations by iteration. It will setup the interface conditions that should be used. For example, on a heatFlux interface the interface BC may be Dirichlet, Neumann or mixed. This choice is determined by cgmp.
info | (input) : contains the info on which interface to set. |
References GridFaceDescriptor::a, assert(), axis, GridFaceDescriptor::axis, GridFunction::cg, cg, Parameters::dbase, Parameters::dirichletInterface, gf, GridFaceDescriptor::grid, grid, Parameters::heatFluxInterface, GridFaceDescriptor::interfaceBC, mixedCoeff, mixedNormalCoeff, numberOfComponents(), parameters, printF(), printP(), side, GridFaceDescriptor::side, tc, and Parameters::tractionInterface.
|
virtual |
Assign interface positions for "negative" times.
Some time-steppers take an initial step or two backwards. We need to set appropriate locations for any interfaces for these past times.
t1,cgf1 | (input): grid and solution at time t1 |
t2,cgf2 | (input): grid velocity is taken from this time |
cgf3 | (input) : this will hold the new grid and solution |
References axis, GridFunction::cg, cg, Parameters::dbase, debug(), display(), dt, ForBoundary, Parameters::getBoundaryData(), GridFunction::getGridVelocity(), grid, Parameters::gridIsMoving(), I1, I2, I3, includeGhost, mg, ok, parameters, side, Parameters::tractionAndHeatFluxInterface, Parameters::tractionInterface, uc, and x.
Referenced by moveGrids().
void DomainSolver::setNameOfGridFile | ( | const aString & | name | ) |
Provide the name of the file from which the overlapping grid was read.
References Parameters::dbase, and parameters.
Referenced by main().
|
virtual |
Reimplemented in Cgins, and Cgad.
References GridFunction::cg, and cg.
|
virtual |
Assign run-time parameters for the DomainSolver.
This is the main function for assigning PDE parameters during the initialization stage.
runSetupOnExit | (input) : if true, run the setup function on exit. |
kkc 0701025 first set generic data
kkc 0701025 now call functions that may be virtual
Reimplemented in Cgmp.
References assert(), axis, buildAdaptiveGridOptionsDialog(), buildForcingOptionsDialog(), buildGeneralOptionsDialog(), buildMovingGridOptionsDialog(), buildOutputOptionsDialog(), buildPlotOptionsDialog(), buildTimeSteppingDialog(), GridFunction::cg, cg, Parameters::checkForFloatingPointErrors, className, current, Parameters::dbase, Reactions::debug, defaultValue, Parameters::defaultValue, Parameters::defineBoundaryConditions(), displayParameters(), equationDomainList, SurfaceEquation::faceList, getAdaptiveGridOption(), getForcingOption(), getGeneralOption(), getInitialConditions(), getMovingGridOption(), getName(), getOriginalBoundaryConditions(), getOutputOption(), getPlotOption(), getTimeSteppingOption(), gf, grid, ListOfEquationDomains::gridDomainNumberList, i, Parameters::isMovingGridProblem(), Parameters::maximumNumberOfOutputFiles, n, name, SurfaceEquation::numberOfSurfaceEquationVariables, Parameters::openLogFiles(), parameters, printF(), pTzOptionsDialog, setBoundaryConditionsInteractively(), Parameters::setParameters(), Parameters::setPdeParameters(), Parameters::setTwilightZoneParameters(), setup(), Parameters::setupBodyForcing(), setupPde(), setupUserDefinedForcing(), setupUserDefinedMaterialProperties(), Parameters::setUserDefinedParameters(), side, surfaceEquation, GridFunction::u, u, update(), Controller::update(), Parameters::updateShowFile(), and Parameters::updateToMatchGrid().
Referenced by main(), Cgmp::setParametersInteractively(), and Cgsm::setParametersInteractively().
|
virtual |
Set the plot titles for interactive plotting.
t | (input) : current time |
dt | (input) : current time step |
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
References Parameters::dbase, and parameters.
Referenced by plot().
|
virtual |
References n, numberOfPushButtons, and numberOfTextBoxes.
Referenced by Cgmp::plot(), Cgsm::plot(), and plot().
|
virtual |
Prompt for changes in the solver parameters.
This dialog is available at start-up and also during run-time.
command | (input) : optionally supply a command to execute. Attempt to execute the command and then return. The return value is 0 if the command was executed, 1 otherwise. |
interface | (input) : use this dialog. If command=="build dialog", fill in the dialog and return. |
Reimplemented in Cgins.
References addPrefix(), assert(), Parameters::dbase, displayParameters(), if(), parameters, and printF().
Referenced by Cgmp::buildRunTimeDialog(), and Cgmp::plot().
|
virtual |
Setup routine.
The function is called after the parameters have been assigned (called by setParametersInteractively). It will setup the problem and call setupGridFunctions() to allocate grid functions. This function will output the header information that summarizes the problem being solved and the values of the various parameters.
time | (input) : current time. |
Reimplemented in Cgsm, and Cgmp.
References assert(), axis, Parameters::bcType(), buildAmrGridsForInitialConditions(), cg, cleanupInitialConditions(), GridFunction::createGridVelocity(), current, Parameters::dbase, debug(), Parameters::defaultValue, finiteDifferenceOperators, getClassName(), gf, grid, Parameters::gridIsMoving(), i, Parameters::implicitAllSpeed, implicitSolver, implicitTimeStepSolverParameters, initializeSolution(), Parameters::isMovingGridProblem(), Parameters::noInitialConditionChosen, numberOfImplicitSolvers, outputHeader(), Parameters::parabolicInflow, parameters, pc, poisson, pressureSolverParameters, printF(), GridFunction::setParameters(), Parameters::setTwilightZoneFunction(), setupGridFunctions(), Parameters::setUserDefinedParameters(), setVariableMaterialProperties(), side, GridFunction::t, tc, GridFunction::u, u, uc, Parameters::updatePDEparameters(), and userDefinedInitialConditionsCleanup().
Referenced by setParametersInteractively().
|
virtual |
Allocate and initialize grid functions, based on the time-stepping method.
This function is called by DomainSolver::setup (DomainSolver.C)
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::adi, all, Parameters::approximateFactorization, assert(), assign(), c, cg, current, Parameters::dbase, debug(), dt, fn, Parameters::forwardEuler, gf, grid, Parameters::gridIsMoving(), i, Parameters::implicit, Parameters::implicitAllSpeed, Parameters::isMovingGridProblem(), m, maximumNumberOfGridFunctionsToUse, Parameters::midPoint, movieFrame, numberOfExtraFunctionsToUse, numberOfGridFunctionsToUse, numberOfStepsTaken, operators, parameters, prho, printF(), Parameters::rKutta, GridFunction::setParameters(), Parameters::steadyStateNewton, Parameters::steadyStateRungeKutta, GridFunction::t, tol, totalNumberOfArrays, Parameters::trapezoidal, GridFunction::u, u, GridFunction::updateToMatchGrid(), updateWorkSpace(), variableDt, variableTime, and Parameters::variableTimeStepAdamsPredictorCorrector.
Referenced by setup(), Cgad::setupGridFunctions(), Cgcns::setupGridFunctions(), Cgasf::setupGridFunctions(), and Cgins::setupGridFunctions().
|
virtual |
A virtual function to setup the PDE to be solved.
This function is called at the very start in order to setup the equations to be solved etc.
reactionName | (input) : |
restartChosen | (input) : |
originalBoundaryCondition | (input) : |
Reimplemented in Cgsm, Cgins, Cgasf, Cgmp, Cgcns, and Cgad.
Referenced by setParametersInteractively().
|
virtual |
Reimplemented in Cgsm.
References Parameters::dbase, gx, gy, gz, m, n, noForcing, numberOfComponents(), parameters, printF(), tc, uc, and vc.
Referenced by setParametersInteractively().
|
virtual |
Reimplemented in Cgsm, and Cgad.
References assert(), d, Parameters::dbase, Parameters::defaultValue, Parameters::inputParameterValues(), n, numberOfComponents(), parameters, printF(), tc, uc, and vc.
Referenced by getInitialConditions().
|
virtual |
Interactively choose material properties (e.g. rho,mu,lambda for elasticity)
This function is called after choosing 'user defined material properties'. The function that actually evaluate the material properties is userDefinedMaterialProperties.
References Parameters::dbase, m, numberOfComponents(), parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), tc, uc, and vc.
Referenced by setParametersInteractively().
|
virtual |
Assign the right-hand-side for variable boundary conditions.
t | (input) : current time. |
gf0 | (input) : holds the current solution. |
grid | (input): the component grid we are assigning. |
forcingType | (input) : if forcingType==computeForcing then return the rhs for the boundary condition; if forcingType==computeTimeDerivativeOfForcing then return the first time derivative of the forcing. |
References addBoundaryForce, assert(), axis, boundaryDataHasBeenInitialized, Parameters::dbase, debug(), dir, TimeFunction::eval(), FOR_3D, ForBoundary, TimeFunction::get(), Parameters::getBoundaryData(), getIndex(), grid, Parameters::gridIsMoving(), i1, i2, i3, includeGhost, isRectangular, mg, ok, OV_ABORT(), parameters, pc, printF(), profileFactor, profileType, rad, side, tc, GridFunction::u, u, uc, uLocal, vc, wc, xab, XC, xe, xv, ye, and ze.
Referenced by applyBoundaryConditions(), getTimeDerivativeOfBoundaryValues(), and timeIndependentBoundaryConditions().
|
virtual |
Assign variable material properties: user-defined or "body-force" regions.
This function fills in the arrays that hold the material properties on the grids. The material properties can vary in different regions. These regions are the same regions
gf | (input) : current solution |
t | (input) : current time (not currently used ?) |
References addBoundaryForce, assert(), axis, GridFunction::cg, cg, Parameters::dbase, dir, display(), e, FOR_3D, forcingType, getIndex(), GridMaterialProperties::getMaterialIndexArray(), GridMaterialProperties::getMaterialValuesArray(), grid, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, m, mask, maskLocal, materialFormat, mg, ok, OV_ABORT(), parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), profileFactor, profileType, rad, GridMaterialProperties::setMaterialFormat(), tz, userDefinedMaterialProperties(), GridMaterialProperties::variableMaterialProperties, xab, XC, xe, xv, ye, and ze.
Referenced by initializeSolution(), Cgsm::setup(), and setup().
|
virtual |
References coeff, fn, gam, grid, i, and rho.
Referenced by Cgsm::printMemoryUsage(), and printMemoryUsage().
|
virtual |
References applyBoundaryConditions(), cg, Parameters::checkForFloatingPointErrors, checkSolution(), Parameters::dbase, debug(), getIndex(), grid, I1, I2, I3, interpolate(), N(), Parameters::noSlipWall, ok, orderOfAccuracy, outflow, parameters, printF(), GridFunction::u, u, and v.
Referenced by Cgins::project().
|
virtual |
Solve equations to time tFinal,.
Reimplemented in Cgsm, and Cgmp.
References advance(), Parameters::dbase, and parameters.
Referenced by main().
|
virtual |
: Solve for the pressure given the velocity.
updateSolutionDependentEquations | (input) : update the equations as needed if they depend on the current solution. |
Reimplemented in Cgins, and Cgasf.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), eulerStep(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
Start an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
currentGF | (output) : points to the grid-function holding the current solution (time t0) |
nextGF | (output) : points to the grid-function holding the new solution (time t0+dt0) |
numberOfCorrectorSteps | (output) : return the number of corrector steps that will be used. |
Reimplemented in Cgsm.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::approximateFactorization, Parameters::dbase, Parameters::forwardEuler, Parameters::implicit, parameters, printF(), startTimeStepAF(), startTimeStepFE(), startTimeStepIM(), and startTimeStepPC().
Referenced by advanceAdamsPredictorCorrectorNew(), advanceForwardEulerNew(), and advanceImplicitMultiStepNew().
|
virtual |
Start an individual time step (a time sub-step function) for an approximate factorization method.
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
currentGF | (output) : points to the grid-function holding the current solution (time t0) |
nextGF | (output) : points to the grid-function holding the new solution (time t0+dt0) |
advanceOptions.numberOfCorrectorSteps | (output) : return the number of corrector steps that will be used. |
References AdamsPCData::dtb, grid, AdvanceOptions::gridChanges, AdvanceOptions::noChangeToGrid, AdvanceOptions::numberOfCorrectorSteps, Parameters::twilightZoneFunctionInitialCondition, and u.
Referenced by startTimeStep().
|
virtual |
Start an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
currentGF | (output) : points to the grid-function holding the current solution (time t0) |
nextGF | (output) : points to the grid-function holding the new solution (time t0+dt0) |
advanceOptions.numberOfCorrectorSteps | (output) : return the number of corrector steps that will be used. |
References assert(), Parameters::dbase, debug(), dt, AdvanceOptions::gridChanges, Parameters::isAdaptiveGridProblem(), AdvanceOptions::newAmrGrid, AdvanceOptions::noChangeToGrid, AdvanceOptions::numberOfCorrectorSteps, parameters, and regridFrequency.
Referenced by startTimeStep().
|
virtual |
Start an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
currentGF | (output) : points to the grid-function holding the current solution (time t0) |
nextGF | (output) : points to the grid-function holding the new solution (time t0+dt0) |
advanceOptions.numberOfCorrectorSteps | (output) : return the number of corrector steps that will be used. |
References assert(), Parameters::dbase, AdvanceOptions::gridChanges, AdvanceOptions::noChangeToGrid, AdvanceOptions::numberOfCorrectorSteps, and parameters.
Referenced by startTimeStep().
|
virtual |
Start an individual time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
currentGF | (output) : points to the grid-function holding the current solution (time t0) |
nextGF | (output) : points to the grid-function holding the new solution (time t0+dt0) |
advanceOptions.numberOfCorrectorSteps | (output) : return the number of corrector steps that will be used. |
References Parameters::adamsBashforth2, assert(), Parameters::dbase, AdvanceOptions::gridChanges, AdvanceOptions::noChangeToGrid, AdvanceOptions::numberOfCorrectorSteps, and parameters.
Referenced by startTimeStep().
|
virtual |
Advance one time-step. This function is used by the multi-physics solver Cgmp.
t | (input) : current time. |
dt | (input) : time step. |
stepNumber | (input) : current counter for the step number. |
numberOfSubSteps | (input) : number of sub-steps to take. |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceTrapezoidal(), current, Parameters::dbase, eulerStep(), fn, Parameters::forwardEuler, get< int >(), gf, Parameters::implicit, init, parameters, printF(), and Parameters::trapezoidal.
|
virtual |
Take a single time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
advanceOptions | (input) : additional options that adjust the behaviour of this function. advanceOptions.takeTimeStepOption can be used to not apply or only apply the boundary conditions. |
Reimplemented in Cgsm.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, applyFilter(), Parameters::approximateFactorization, current, Parameters::dbase, Parameters::forwardEuler, Parameters::implicit, parameters, printF(), takeTimeStepAF(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
Referenced by advanceAdamsPredictorCorrectorNew(), advanceForwardEulerNew(), advanceImplicitMultiStepNew(), and takeTimeStepFE().
|
virtual |
Take a time step using the approximate factored scheme.
kkc 091215 : initial version.
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
advanceOptions | (input) : additional options that adjust the behaviour of this function. advanceOptions.takeTimeStepOption can be used to not apply or only apply the boundary conditions. |
References A_3D, A_4D, all, Parameters::approximateFactorization, assert(), axis, c, GridFunction::cg, cg, AdvanceOptions::correctionIterationsHaveConverged, GridFunction::dbase, delta, display(), AdamsPCData::dtb, dtb, EXTRAP_2, EXTRAP_5, fn, GET_LOCAL_INTERPOLATION_POINTS, getGhostIndex(), GridFunction::getGridVelocity(), getIndex(), grid, i, i1, I1, i2, I2, i3, I3, Ig1, Ig2, Ig3, mask, maskLocal, maskp, OV_ABORT(), OV_APP_TO_PTR_3D, OV_APP_TO_PTR_4D, OV_GET_LOCAL_ARRAY, OV_GET_LOCAL_ARRAY_FROM, CG_ApproximateFactorization::parallelBC, pc, printF(), side, GridFunction::t, GridFunction::u, u, and uc.
Referenced by takeTimeStep().
|
virtual |
Take a single time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
advanceOptions | (input) : additional options that adjust the behaviour of this function. advanceOptions.takeTimeStepOption can be used to not apply or only apply the boundary conditions. |
References adaptGrids(), all, AdvanceOptions::applyBoundaryConditionsOnly, assert(), GridFunction::cg, checkArrays(), checkForSymmetry(), computeBodyForcing(), correctMovingGrids(), d, Parameters::dbase, debug(), determineErrors(), display(), dt, dtb, dtp, fn, GridFunction::form, Parameters::forwardEuler, getAugmentedSolution(), GridFunction::getGridVelocity(), getGridVelocity(), getIndex(), getUt(), gf, grid, AdvanceOptions::gridChanges, Parameters::gridIsMoving(), GridFunction::gridVelocity, GridFunction::gridVelocityTime, i1, I1, i2, I2, i3, I3, interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), maskDecode(), moveGrids(), movingGridProblem(), N(), AdvanceOptions::newAmrGrid, AdvanceOptions::noChangeToGrid, numberOfComponents(), numberOfStepsTaken, outputSolution(), OV_ABORT(), parameters, GridFunction::primitiveToConservative(), printF(), printP(), regridFrequency, rigidBodyBoundaryProjection(), saveShow(), solveForTimeIndependentVariables(), GridFunction::t, AdvanceOptions::takeStepAndApplyBoundaryConditions, AdvanceOptions::takeStepButDoNotApplyBoundaryConditions, takeTimeStep(), AdvanceOptions::takeTimeStepOption, twilightZoneFlow(), GridFunction::u, updateForMovingGrids(), updateOpt, GridFunction::updateToMatchGrid(), Parameters::useConservativeVariables(), ut(), and v.
Referenced by takeTimeStep().
|
virtual |
Take a single time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
advanceOptions | (input) : additional options that adjust the behaviour of this function. advanceOptions.takeTimeStepOption can be used to not apply or only apply the boundary conditions. advanceOptions.correctionIterationsHaveConverged (output) is set to true if the correction iterations have converged (e.g. for moving grids) |
References addArtificialDissipation(), applyBoundaryConditions(), applyBoundaryConditionsForImplicitTimeStepping(), assert(), c, GridFunction::cg, cg, checkArrays(), Parameters::checkForFloatingPointErrors, checkSolution(), computeBodyForcing(), Parameters::computeImplicitTermsSeparately, AdvanceOptions::correctionIterationsHaveConverged, correctMovingGrids(), Parameters::crankNicolson, Parameters::dbase, debug(), delta, determineErrors(), dimension, display(), Parameters::doNotComputeImplicitTerms, dtb, dtp, e, fn, formMatrixForImplicitSolve(), Parameters::getGridIsImplicit(), getGridVelocity(), getIndex(), getMovingGridCorrectionHasConverged(), getMovingGridMaximumRelativeCorrection(), getUt(), gf, grid, I1, I2, I3, Parameters::implicit, implicitSolve(), Parameters::isAdaptiveGridProblem(), maxNorm(), moveGrids(), movingGridProblem(), N(), n, numberOfComponents(), numberOfStepsTaken, ok, OV_ABORT(), parameters, pc, poisson, printF(), printP(), solveForTimeIndependentVariables(), GridFunction::t, tc, twilightZoneFlow(), GridFunction::u, u, u0, updateForMovingGrids(), updateOpt, updateStateVariables(), and Parameters::useConservativeVariables().
Referenced by takeTimeStep().
|
virtual |
Take a single time step (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
correction | (input) : for predictor corrector methods this indicates the correction step number. |
advanceOptions | (input) : additional options that adjust the behaviour of this function. advanceOptions.takeTimeStepOption can be used to not apply or only apply the boundary conditions. advanceOptions.correctionIterationsHaveConverged (output) is set to true if the correction iterations have converged (e.g. for moving grids) |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, adaptGrids(), addArtificialDissipation(), all, assert(), axis, c, GridFunction::cg, cg, checkArrays(), Parameters::checkForFloatingPointErrors, checkSolution(), computeBodyForcing(), AdvanceOptions::correctionIterationsHaveConverged, correctMovingGrids(), Parameters::dbase, debug(), delta, determineErrors(), dimension, display(), dt, dtb, dtp, e, fn, GridFunction::form, getGridVelocity(), getIndex(), getMovingGridCorrectionHasConverged(), getMovingGridMaximumRelativeCorrection(), getUt(), gf, grid, GridFunction::gridVelocityTime, I1, I2, I3, interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), J1, J2, J3, moveGrids(), movingGridProblem(), N(), numberOfComponents(), numberOfStepsTaken, ok, outputSolution(), OV_ABORT(), parameters, pc, poisson, GridFunction::primitiveToConservative(), printF(), printP(), regridFrequency, side, solveForTimeIndependentVariables(), GridFunction::t, tc, twilightZoneFlow(), GridFunction::u, u, u0, uc, updateForMovingGrids(), updateOpt, GridFunction::updateToMatchGrid(), Parameters::useConservativeVariables(), and V.
Referenced by takeTimeStep().
|
virtual |
References GridFunction::cg, grid, jetInflow(), parabolicInflow(), setVariableBoundaryValues(), GridFunction::t, and userDefinedBoundaryValues().
Referenced by initializeSolution(), and Cgsm::setup().
|
virtual |
References assert(), GridFunction::cg, cg, current, Parameters::dbase, GridFunction::form, getAmrErrorFunction(), gf, grid, gridWasAdded, gridWasChanged, gridWasRemoved, i, mg, newAdaptiveGridBuilt(), parameters, refinementWasAdded, refinementWasRemoved, GridFunction::u, updateToMatchNewGrid(), and userDefinedGrid().
Referenced by output().
|
inline |
References Parameters::dbase, and parameters.
Referenced by Cgasf::addForcingToPressureEquation(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), advanceImplicitMultiStep(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgcns::applyBoundaryConditions(), Cgins::applyBoundaryConditions(), Cgad::applyBoundaryConditionsForImplicitTimeStepping(), Cgins::applyBoundaryConditionsForImplicitTimeStepping(), Cgins::assignLineSolverBoundaryConditions(), boundaryConditionPredictor(), eulerStep(), Cgcns::getAugmentedSolution(), Cgins::getLineSolverBoundaryConditions(), Cgins::lineSolverBoundaryConditions(), Cgins::setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), Cgad::updateGeometryArrays(), and Cgins::updateGeometryArrays().
|
virtual |
Reimplemented in Cgsm.
References GridFunction::cg, cg, current, Parameters::dbase, fn, gf, i, Parameters::isMovingGridProblem(), numberOfExtraFunctionsToUse, numberOfGridFunctionsToUse, parameters, GridFunction::u, and GridFunction::updateToMatchGrid().
Referenced by buildAmrGridsForInitialConditions(), and Cgsm::updateForAdaptiveGrids().
|
virtual |
Update the DomainSolver after grids have moved or have been adapted.
Reimplemented in Cgins.
References GridFunction::cg, Parameters::dbase, Parameters::isAdaptiveGridProblem(), Parameters::isMovingGridProblem(), movingGridProblem(), parameters, GridFunction::u, updateGeometryArrays(), and GridFunction::updateGridVelocityArrays().
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), Cgasf::allSpeedImplicitTimeStep(), eulerStep(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
virtual |
|
virtual |
Update geometry arrays, solution at old times etc. after the time step has changed.
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
Referenced by adaptGrids(), updateForMovingGrids(), Cgad::updateGeometryArrays(), Cgcns::updateGeometryArrays(), Cgasf::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgsm::updateGeometryArrays(), and updateToMatchNewGrid().
|
virtual |
Ths function is used to update state-variables. For example, the visco plastic viscosity.
cgf | (input/output) |
stage | (input) : -1, 0 or 1 |
If stage equals -1 then update state variables at all points.
This function is used at two different stages for each time step. In the first stage, (stage=0) the function is called after the solution has been advanced (but before boundary conditions have been applied) to update any equilibrium state variables (and to limit any reacting species variables). Update all points of state variables that may be needed to apply the boundary conditions.
In the second stage, (stage=1) the function is called after the boundary conditions have been applied. Make sure that the state variables have been updated at all points after this step.
Reimplemented in Cgins, and Cgcns.
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), interpolateAndApplyBoundaryConditions(), and takeTimeStepIM().
|
virtual |
Reimplemented in Cgins.
Referenced by updateToMatchNewGrid().
|
virtual |
Reimplemented in Cgins, Cgasf, Cgcns, and Cgad.
References Parameters::dbase, parameters, pdtVar, and Parameters::steadyStateRungeKutta.
Referenced by initializeSolution(), project(), Cgad::updateToMatchGrid(), Cgcns::updateToMatchGrid(), Cgasf::updateToMatchGrid(), Cgins::updateToMatchGrid(), and updateToMatchNewGrid().
|
virtual |
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, all, assert(), axis, c, GridFunction::cg, cg, current, Parameters::dbase, debug(), display(), fn, Parameters::forwardEuler, gf, grid, gridWasAdded, gridWasRemoved, i, Parameters::implicit, Parameters::implicitAllSpeed, interpolateAndApplyBoundaryConditions(), j, mask, Parameters::midPoint, movingGridProblem(), numberOfGridFunctionsToUse, parameters, printF(), refinementWasAdded, refinementWasRemoved, side, GridFunction::u, u, updateGeometryArrays(), updateTimeIndependentVariables(), Parameters::updateToMatchGrid(), updateToMatchGrid(), updateWorkSpace(), v, variableDt, and x.
Referenced by addGrids(), and tracking().
|
virtual |
References GridFunction::cg, grid, m, R, tv, tv0, GridFunction::u, u, and ui.
Referenced by advanceVariableTimeStepAdamsPredictorCorrector().
|
virtual |
References cg, grid, and GridFunction::u.
Referenced by adaptGrids(), setupGridFunctions(), and updateToMatchNewGrid().
|
virtual |
Assign user specific values for boundary conditions.
The user may fill in the boundaryData array with right-hand-side values for boundary conditions. The user is also required to provide the time derivative of the boundary values.
t | (input) : current time. |
gf0 | (input) : the current solution. |
grid | (input): the component grid we are assigning. |
forcingType | (input) : if forcingType==computeForcing then return the rhs for the boundary condition; if forcingType==computeTimeDerivativeOfForcing then return the first time derivative of the forcing. |
Reimplemented in Cgsm.
References assert(), axis, Parameters::bcType(), c, cg, computeForcing, d, Parameters::dbase, dx, f, FOR_3D, ExternalBoundaryData::getBoundaryData(), Parameters::getBoundaryData(), Controller::getControl(), getGhostIndex(), Parameters::getUserBoundaryConditionParameters(), grid, Parameters::gridIsMoving(), i1, i2, i3, Ig1, Ig2, Ig3, includeGhost, mg, normal, Parameters::noSlipWall, ok, OV_ABORT(), Parameters::parabolicInflowUserDefinedTimeDependence, parameters, pc, printF(), rad, scale, SHEAR, SHEAR_T, side, Parameters::slipWall, tc, GridFunction::u, u, u0, uc, uLocal, Parameters::userBcType(), V, vc, wc, X1, xab, and y.
Referenced by applyBoundaryConditions(), getTimeDerivativeOfBoundaryValues(), and timeIndependentBoundaryConditions().
|
virtual |
This routine is called when DomainSolver is finished and can be used to clean up memory.
References Parameters::dbase, parameters, printF(), userDefinedForcingCleanup(), and userDefinedMaterialPropertiesCleanup().
|
virtual |
User defined forcing. Compute a user defined forcing that will be added to the right-hand side of the equations. This function is called to actually evaluate the user defined forcing The function setupUserDefinedForcing is first called to assign the option and parameters. Rewrite or add new options to this function and to setupUserDefinedForcing to supply your own forcing option.
/f (input/output) : add to this forcing function /gf (input) : current solution
tForce | : evaluate the forcing at this time. |
/Return values: 0=success, non-zero=failure.
/NOTE: 2011/08/04 - in the new version we just set f rather than adding to it.
References assert(), axis, GridFunction::cg, cg, Parameters::dbase, debug(), dir, dt, FOR_3D, getIndex(), grid, i1, I1, i2, I2, i3, I3, isRectangular, m, mg, n, noForcing, numberOfComponents(), ok, parameters, pc, printF(), rad, GridFunction::t, tc, GridFunction::u, u, uc, uLocal, vc, wc, xab, XC, and xv.
Referenced by computeBodyForcing().
|
virtual |
This routine is called when DomainSolver is finished and can be used to clean up memory.
Reimplemented in Cgsm.
References Parameters::dbase, and parameters.
Referenced by userDefinedCleanup().
|
virtual |
References a, axis, c, GridFunction::cg, cg, current, Parameters::dbase, gf, i, i1, I1, i2, I2, I3, m, n, ns, parameters, r, side, GridFunction::u, u, v, and x.
Referenced by addGrids(), and tracking().
|
virtual |
Reimplemented in Cgsm, and Cgad.
References a, a0, assert(), bb, c, cosTheta, d, Parameters::dbase, delta, dx, e, eps, gam(), getIndex(), grid, h, i1, I1, i2, I2, i3, I3, initialConditionsFromAProfile(), m, n, numberOfComponents(), ok, parameters, printF(), rad, S, scale, sigma, sinTheta, tc, theta, u0, uc, vc, VS, wc, X1, xab, y, and z.
Referenced by assignInitialConditions().
|
virtual |
This routine is called when DomainSolver is finished with the initial conditions and can be used to clean up memory.
Reimplemented in Cgsm, and Cgad.
References Parameters::dbase, parameters, and printF().
Referenced by setup(), Cgad::userDefinedInitialConditionsCleanup(), and Cgsm::userDefinedInitialConditionsCleanup().
|
virtual |
Assign the user defined material properties.
Rewrite or add new options to this function and to setupUserDefinedMaterialProperties to define new options.
References c, GridFunction::cg, cg, Parameters::dbase, getIndex(), GridMaterialProperties::getMaterialFormat(), GridMaterialProperties::getMaterialIndexArray(), GridMaterialProperties::getMaterialValuesArray(), grid, I1, I2, I3, m, maskLocal, materialFormat, numberOfComponents(), ok, OV_ABORT(), parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), and GridMaterialProperties::variableMaterialProperties.
Referenced by setVariableMaterialProperties().
|
virtual |
This routine is called when DomainSolver is finished and can be used to clean up memory.
References Parameters::dbase, parameters, and printF().
Referenced by userDefinedCleanup().
|
virtual |
References axis, GridFunction::cg, cg, Parameters::dbase, RigidBodyMotion::getDensity(), RigidBodyMotion::getMass(), RigidBodyMotion::getPosition(), RigidBodyMotion::getVelocity(), grid, i1, i2, i3, mask, mg, n, numberOfComponents(), ok, output(), parameters, GridFunction::t, GridFunction::u, and u.
Referenced by output(), and Cgsm::outputResultsAfterEachTimeStep().
|
virtual |
References a2, assert(), GridFunction::cg, grid, i, n, tv, tv0, GridFunction::u, u, and ui.
Referenced by advanceVariableTimeStepAdamsPredictorCorrector().
|
virtual |
Reimplemented in Cgsm, Cgins, Cgasf, Cgcns, and Cgad.
References Parameters::adamsBashforth2, Parameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector4, Parameters::approximateFactorization, cg, Parameters::dbase, Parameters::defaultInterpolationType, Parameters::fixedReferenceFrame, Parameters::getGridIsImplicit(), getName(), Parameters::getTimeSteppingName(), grid, Parameters::gridIsMoving(), Parameters::implicit, implicitTimeStepSolverParameters, Parameters::interpolateConservativeVariables, Parameters::interpolatePrimitiveAndPressure, Parameters::interpolatePrimitiveVariables, Parameters::isAxisymmetric(), Parameters::isMovingGridProblem(), MovingGrids::movingGridOption(), MovingGrids::movingGridOptionName(), Parameters::noTurbulenceModel, parameters, Parameters::rigidBodyReferenceFrame, Parameters::rKutta, Parameters::SpalartAllmaras, Parameters::trigonometric, Parameters::turbulenceModelName, and Parameters::variableTimeStepAdamsPredictorCorrector.
Referenced by outputHeader(), Cgad::writeParameterSummary(), Cgcns::writeParameterSummary(), Cgasf::writeParameterSummary(), Cgins::writeParameterSummary(), and Cgsm::writeParameterSummary().
|
friend |
CompositeGrid& DomainSolver::cg |
Referenced by adaptGrids(), addArtificialDissipation(), Cgcns::addConstraintEquation(), Cgins::addForcing(), addGrids(), advance(), Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgins::applyBoundaryConditions(), Cgsm::applyBoundaryConditions(), applyFilter(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), Cgsm::assignInitialConditions(), assignInitialConditions(), Cgins::assignLineSolverBoundaryConditions(), Cgsm::assignParabolicInitialConditions(), Cgins::assignPressureRHS(), Cgsm::assignSpecialInitialConditions(), Cgcns::assignTestProblem(), Cgasf::assignTestProblem(), Cgsm::assignTwilightZoneInitialConditions(), buildAmrGridsForInitialConditions(), buildGeneralOptionsDialog(), Cgsm::buildGeneralOptionsDialog(), buildGrid(), Cgmp::buildRunTimeDialog(), buildRunTimeDialog(), Cgsm::buildVariableDissipation(), Cgad::Cgad(), Cgasf::Cgasf(), Cgcns::Cgcns(), Cgsm::checkDisplacementAndStress(), checkSolution(), computeBodyForcing(), Cgsm::computeDissipation(), Cgins::computeTurbulenceQuantities(), Cgins::determineErrors(), determineErrors(), displayBoundaryConditions(), displayParameters(), Cgasf::formAllSpeedPressureEquation(), Cgad::formMatrixForImplicitSolve(), Cgcns::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), getAdaptiveGridOption(), getAmrErrorFunction(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), getGeneralOption(), Cgsm::getGeneralOption(), getGridInfo(), getInitialConditions(), Cgsm::getInputOutputOption(), Cgmp::getInterfaceResiduals(), Cgins::getLineSolverBoundaryConditions(), getMaterialProperties(), Cgsm::getMaxDivAndCurl(), getMovingGridOption(), getOutputOption(), Cgsm::getPlotOption(), Cgins::getResidual(), Cgmp::getTimeStep(), Cgsm::getTimeStep(), getTimeStep(), Cgsm::getTimeSteppingOption(), getTimeSteppingOption(), Cgsm::getVelocityAndStress(), Cgmp::initializeInterfaces(), Cgsm::initializeInterfaces(), Cgsm::initializeKnownSolution(), Cgsm::initializeRadiationBoundaryConditions(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgins::initializeTurbulenceModels(), Cgcns::isImplicitMatrixSingular(), jetInflow(), Cgins::lineSolverBoundaryConditions(), newAdaptiveGridBuilt(), outputHeader(), outputProbes(), Cgsm::outputResults(), Cgsm::outputResultsAfterEachTimeStep(), Cgins::outputSolution(), outputSolution(), parabolicInflow(), Cgmp::plot(), Cgsm::plot(), Cgsm::printMemoryUsage(), printMemoryUsage(), Cgmp::printStatistics(), printStatistics(), Cgmp::printTimeStepInfo(), Cgins::printTimeStepInfo(), Cgcns::project(), Cgins::project(), readRestartFile(), Cgmp::saveShow(), Cgsm::saveShow(), Cgsm::setBoundaryCondition(), setBoundaryConditionsInteractively(), setDefaultDataForBoundaryConditions(), setInterfaceBoundaryCondition(), setInterfacesAtPastTimes(), Cgad::setOgesBoundaryConditions(), Cgins::setOgesBoundaryConditions(), setOgesBoundaryConditions(), setParametersInteractively(), Cgins::setup(), Cgsm::setup(), setup(), Cgad::setupGridFunctions(), Cgcns::setupGridFunctions(), Cgasf::setupGridFunctions(), Cgins::setupGridFunctions(), Cgsm::setupGridFunctions(), setupGridFunctions(), Cgsm::setupGrids(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), Cgsm::setupPde(), setVariableMaterialProperties(), smoothVelocity(), Cgmp::solve(), Cgsm::solve(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Cgins::solveForTimeIndependentVariables(), takeTimeStepIM(), takeTimeStepPC(), tracking(), updateForAdaptiveGrids(), Cgcns::updateGeometryArrays(), Cgasf::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgsm::updateGeometryArrays(), Cgins::updatePressureEquation(), Cgcns::updateStateVariables(), updateToMatchNewGrid(), updateWorkSpace(), userDefinedBoundaryValues(), userDefinedForcing(), userDefinedGrid(), userDefinedMaterialProperties(), userDefinedOutput(), Cgsm::usingPMLBoundaryConditions(), and writeParameterSummary().
|
protected |
Referenced by buildRunTimeDialog(), and plot().
|
protected |
realCompositeGridFunction DomainSolver::coeff |
Referenced by advanceTrapezoidal(), Cgasf::formAllSpeedPressureEquation(), Cgcns::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), Cgins::getResidual(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), Cgins::insImplicitMatrix(), printMemoryUsage(), Cgasf::setupGridFunctions(), and Cgins::updatePressureEquation().
int DomainSolver::current |
Referenced by Cgsm::addDissipation(), addGrids(), advance(), Cgmp::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgsm::applyBoundaryConditions(), applyBoundaryConditionsForImplicitTimeStepping(), buildAmrGridsForInitialConditions(), buildGrid(), Cgmp::buildRunTimeDialog(), buildRunTimeDialog(), Cgsm::checkDisplacementAndStress(), Cgsm::computeDissipation(), DomainSolver(), Cgsm::endTimeStep(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getInitialConditions(), getInitialConditions(), Cgsm::getMaxDivAndCurl(), Cgmp::getTimeStep(), Cgsm::getTimeStep(), Cgsm::getVelocityAndStress(), Cgins::initializeFactorization(), Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeSolution(), Cgsm::initializeTimeStepping(), initializeTimeStepping(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), Cgsm::outputResultsAfterEachTimeStep(), Cgmp::plot(), plot(), printMemoryUsage(), printStatistics(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), Cgsm::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), Cgsm::saveShow(), setParametersInteractively(), Cgins::setSolverParameters(), Cgsm::setup(), setup(), Cgad::setupGridFunctions(), Cgcns::setupGridFunctions(), Cgasf::setupGridFunctions(), Cgins::setupGridFunctions(), Cgsm::setupGridFunctions(), setupGridFunctions(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), Cgsm::setupPde(), Cgmp::solve(), Cgsm::solve(), Cgsm::startTimeStep(), takeOneStep(), Cgsm::takeTimeStep(), takeTimeStep(), tracking(), updateForAdaptiveGrids(), Cgsm::updateForNewTimeStep(), Cgins::updateToMatchGrid(), updateToMatchNewGrid(), and userDefinedGrid().
real DomainSolver::dt |
Referenced by Cgsm::addDissipation(), Cgins::addForcing(), advance(), Cgsm::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), Cgsm::advanceMethodOfLines(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceTrapezoidal(), Cgasf::allSpeedImplicitTimeStep(), Cgcns::applyBoundaryConditions(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgmp::assignInterfaceBoundaryConditions(), Cgmp::checkInterfaceForConvergence(), computeBodyForcing(), Cgsm::computeDissipation(), DomainSolver(), endTimeStepFE(), eulerStep(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), Cgsm::getEnergy(), getResidualInfo(), Cgmp::getTimeStep(), Cgsm::getTimeStep(), Cgcns::getUt(), Cgsm::getUt(), Cgsm::getUtFOS(), Cgsm::getUtSOS(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeSolution(), initializeTimeSteppingFE(), initializeTimeSteppingIM(), Cgins::insImplicitMatrix(), Cgmp::interfaceProjection(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), Cgmp::plot(), plot(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), Cgins::project(), Cgmp::saveShow(), Cgsm::saveShow(), saveShow(), setInterfacesAtPastTimes(), Cgmp::setupAdvance(), setupGridFunctions(), Cgmp::solve(), Cgsm::solve(), Cgasf::solveForAllSpeedPressure(), Cgins::solveForTimeIndependentVariables(), startTimeStepFE(), Cgsm::takeTimeStep(), takeTimeStepFE(), takeTimeStepPC(), Cgins::updateDivergenceDamping(), Cgsm::updateForNewTimeStep(), Cgins::updatePressureEquation(), userDefinedForcing(), and Cgsm::writeParameterSummary().
std::vector<real> DomainSolver::dtv |
CG_ApproximateFactorization::FactorList DomainSolver::factors |
Referenced by Cgins::initializeFactorization().
CompositeGridOperators DomainSolver::finiteDifferenceOperators |
Referenced by printMemoryUsage(), and setup().
realCompositeGridFunction DomainSolver::fn[maximumNumberOfExtraFunctionsToUse] |
Referenced by advance(), advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), Cgsm::advanceMethodOfLines(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), buildAmrGridsForInitialConditions(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), Cgcns::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), Cgcns::initializeSolution(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), printMemoryUsage(), Cgins::project(), Cgsm::setupGridFunctions(), setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), takeOneStep(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), updateForAdaptiveGrids(), and updateToMatchNewGrid().
GridFunction DomainSolver::gf[maximumNumberOfGridFunctionsToUse] |
Referenced by Cgins::addForcing(), Cgins::addForcingToPressureEquation(), addGrids(), advance(), Cgsm::advance(), Cgmp::advance(), advanceAdamsPredictorCorrector(), Cgad::advanceADI(), advanceForwardEulerNew(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgsm::applyBoundaryConditions(), applyBoundaryConditionsForImplicitTimeStepping(), applyFilter(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), Cgsm::assignInitialConditions(), assignInitialConditions(), Cgmp::assignInterfaceBoundaryConditions(), Cgsm::assignParabolicInitialConditions(), Cgsm::assignSpecialInitialConditions(), Cgsm::assignTwilightZoneInitialConditions(), boundaryConditionPredictor(), buildAmrGridsForInitialConditions(), buildGrid(), Cgmp::buildRunTimeDialog(), buildRunTimeDialog(), Cgsm::checkDisplacementAndStress(), Cgsm::computeDissipation(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getInitialConditions(), getInitialConditions(), Cgmp::getInterfaceResiduals(), Cgsm::getMaxDivAndCurl(), Cgsm::getUtFOS(), Cgsm::getUtSOS(), Cgsm::getVelocityAndStress(), Cgins::initializeFactorization(), Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeSolution(), Cgsm::initializeTimeStepping(), initializeTimeStepping(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgmp::interfaceProjection(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), Cgsm::outputResultsAfterEachTimeStep(), Cgmp::plot(), Cgsm::plot(), plot(), Cgsm::printMemoryUsage(), printMemoryUsage(), printStatistics(), Cgcns::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), Cgins::project(), setInterfaceBoundaryCondition(), setParametersInteractively(), Cgins::setSolverParameters(), Cgsm::setup(), setup(), Cgmp::setupAdvance(), Cgad::setupGridFunctions(), Cgcns::setupGridFunctions(), Cgasf::setupGridFunctions(), Cgins::setupGridFunctions(), Cgsm::setupGridFunctions(), setupGridFunctions(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), Cgsm::setupPde(), Cgmp::solve(), Cgsm::solve(), Cgasf::solveForAllSpeedPressure(), takeOneStep(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), tracking(), updateForAdaptiveGrids(), Cgsm::updateForNewTimeStep(), Cgins::updateToMatchGrid(), updateToMatchNewGrid(), and userDefinedGrid().
bool DomainSolver::gridHasMaterialInterfaces |
Referenced by Cgsm::advance(), Cgsm::advanceFOS(), Cgsm::advanceSOS(), Cgmp::assignInterfaceBoundaryConditions(), Cgmp::assignInterfaceRightHandSide(), Cgmp::assignInterfaceRightHandSideOld(), Cgsm::Cgsm(), DomainSolver(), Cgmp::getInterfaceResiduals(), Cgmp::getInterfaceResidualsOld(), Cgmp::initializeInterfaceBoundaryConditions(), Cgmp::initializeInterfaces(), and Cgmp::interfaceProjection().
std::vector<real> DomainSolver::hMax |
Referenced by getGridInfo(), and outputHeader().
std::vector<real> DomainSolver::hMin |
std::vector<real> DomainSolver::imaginaryPartOfEigenvalue |
Referenced by adaptGrids(), Cgsm::advanceFOS(), Cgad::Cgad(), Cgcns::Cgcns(), Cgsm::getTimeStep(), Cgcns::getTimeSteppingEigenvalue(), Cgad::getTimeSteppingEigenvalue(), Cgcns::getUt(), Cgsm::setup(), Cgad::updateGeometryArrays(), Cgcns::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgsm::updateGeometryArrays(), Cgad::updateToMatchGrid(), and Cgcns::updateToMatchGrid().
realCompositeGridFunction* DomainSolver::implicitCoeff |
Referenced by DomainSolver(), Cgins::formMatrixForImplicitSolve(), and ~DomainSolver().
Oges* DomainSolver::implicitSolver |
Referenced by advanceNewton(), advanceTrapezoidal(), Cgcns::buildImplicitSolvers(), Cgins::buildImplicitSolvers(), DomainSolver(), Cgasf::formAllSpeedPressureEquation(), Cgad::formMatrixForImplicitSolve(), Cgcns::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), printMemoryUsage(), printStatistics(), Cgins::setSolverParameters(), setup(), Cgad::setupGridFunctions(), Cgasf::setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), and ~DomainSolver().
OgesParameters DomainSolver::implicitTimeStepSolverParameters |
Referenced by displayParameters(), getGeneralOption(), Cgsm::getGeneralOption(), setup(), and writeParameterSummary().
|
protected |
Referenced by DomainSolver(), and plot().
aString DomainSolver::movieFileName |
Referenced by Cgmp::plot(), and plot().
int DomainSolver::movieFrame |
Referenced by DomainSolver(), Cgmp::plot(), plot(), and setupGridFunctions().
|
protected |
Referenced by Cgmp::buildRunTimeDialog(), Cgad::Cgad(), Cgasf::Cgasf(), Cgcns::Cgcns(), Cgins::Cgins(), Cgmp::Cgmp(), Cgsm::Cgsm(), DomainSolver(), Cgsm::getInitialConditions(), getInitialConditions(), getName(), outputHeader(), outputProbes(), Cgmp::plot(), Cgsm::plot(), plot(), Cgsm::saveSequencesToShowFile(), saveSequencesToShowFile(), setName(), setParametersInteractively(), Cgins::setPlotTitle(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), Cgsm::setupPde(), and Cgad::writeParameterSummary().
int DomainSolver::numberOfExtraFunctionsToUse |
Referenced by Cgins::project(), Cgsm::setupGridFunctions(), setupGridFunctions(), and updateForAdaptiveGrids().
int DomainSolver::numberOfGridFunctionsToUse |
std::vector<real> DomainSolver::numberOfGridPoints |
Referenced by getGridInfo(), outputHeader(), printMemoryUsage(), Cgmp::printStatistics(), and printStatistics().
int DomainSolver::numberOfImplicitSolvers |
Referenced by Cgad::buildImplicitSolvers(), Cgcns::buildImplicitSolvers(), Cgins::buildImplicitSolvers(), DomainSolver(), Cgad::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), printMemoryUsage(), printStatistics(), Cgins::setOgesBoundaryConditions(), Cgins::setSolverParameters(), setup(), Cgad::setupGridFunctions(), and Cgasf::setupGridFunctions().
|
protected |
Referenced by Cgmp::buildRunTimeDialog(), Cgsm::buildRunTimeDialog(), buildRunTimeDialog(), and setSensitivity().
int DomainSolver::numberOfStepsTaken |
Referenced by Cgad::addForcing(), Cgins::addForcing(), advance(), advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceNewton(), advanceSecondOrderSystem(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), applyFilter(), DomainSolver(), eulerStep(), Cgad::getUt(), Cgcns::getUt(), Cgins::getUt(), getUt(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), Cgmp::printStatistics(), Cgmp::printTimeStepInfo(), setupGridFunctions(), Cgmp::solve(), takeTimeStepFE(), takeTimeStepIM(), and takeTimeStepPC().
|
protected |
Referenced by Cgmp::buildRunTimeDialog(), Cgsm::buildRunTimeDialog(), buildRunTimeDialog(), and setSensitivity().
int DomainSolver::numberSavedToShowFile |
Referenced by DomainSolver(), Cgmp::saveShow(), Cgsm::saveShow(), and saveShow().
Parameters& DomainSolver::parameters |
Referenced by adaptGrids(), Cgasf::addAllSpeedImplicitForcing(), addArtificialDissipation(), Cgad::addForcing(), Cgins::addForcing(), Cgasf::addForcing(), Cgcns::addForcing(), Cgins::addForcingToPressureEquation(), Cgasf::addForcingToPressureEquation(), addGrids(), advance(), Cgsm::advance(), Cgmp::advance(), advanceAdamsPredictorCorrector(), advanceAdamsPredictorCorrectorNew(), Cgad::advanceADI(), advanceForwardEulerNew(), Cgsm::advanceFOS(), advanceImplicitMultiStep(), advanceImplicitMultiStepNew(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Cgsm::advanceMethodOfLines(), advanceMidPoint(), advanceNewton(), advanceSecondOrderSystem(), Cgsm::advanceSOS(), advanceSteadyStateRungeKutta(), advanceTrapezoidal(), advanceVariableTimeStepAdamsPredictorCorrector(), Cgasf::allSpeedImplicitTimeStep(), Cgcns::applyBoundaryConditions(), Cgad::applyBoundaryConditions(), Cgasf::applyBoundaryConditions(), Cgins::applyBoundaryConditions(), Cgsm::applyBoundaryConditions(), applyBoundaryConditions(), Cgcns::applyBoundaryConditionsForImplicitTimeStepping(), Cgad::applyBoundaryConditionsForImplicitTimeStepping(), Cgins::applyBoundaryConditionsForImplicitTimeStepping(), applyBoundaryConditionsForImplicitTimeStepping(), applyFilter(), Cgsm::assignAnnulusEigenfunction(), Cgsm::assignBoundaryConditions(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Cgsm::assignGaussianPulseInitialConditions(), Cgsm::assignHempInitialConditions(), Cgsm::assignInitialConditions(), assignInitialConditions(), Cgmp::assignInterfaceBoundaryConditions(), Cgmp::assignInterfaceRightHandSide(), Cgmp::assignInterfaceRightHandSideOld(), Cgins::assignLineSolverBoundaryConditions(), Cgsm::assignParabolicInitialConditions(), Cgins::assignPressureRHS(), Cgsm::assignSpecialInitialConditions(), Cgcns::assignTestProblem(), Cgasf::assignTestProblem(), Cgsm::assignTwilightZoneInitialConditions(), boundaryConditionPredictor(), buildAdaptiveGridOptionsDialog(), buildAmrGridsForInitialConditions(), Cgsm::buildForcingOptionsDialog(), buildGeneralOptionsDialog(), Cgsm::buildGeneralOptionsDialog(), buildGrid(), Cgad::buildImplicitSolvers(), Cgcns::buildImplicitSolvers(), Cgins::buildImplicitSolvers(), Cgsm::buildInputOutputOptionsDialog(), Cgmp::buildModel(), buildMovingGridOptionsDialog(), buildOutputOptionsDialog(), buildPlotOptionsDialog(), Cgsm::buildPlotOptionsDialog(), Cgmp::buildRunTimeDialog(), Cgsm::buildRunTimeDialog(), buildRunTimeDialog(), Cgmp::buildTimeSteppingDialog(), Cgad::buildTimeSteppingDialog(), Cgcns::buildTimeSteppingDialog(), Cgins::buildTimeSteppingDialog(), buildTimeSteppingDialog(), Cgsm::buildTimeSteppingDialog(), Cgmp::Cgmp(), Cgsm::Cgsm(), Cgsm::checkDisplacementAndStress(), Cgmp::checkInterfaceForConvergence(), checkSolution(), cleanupInitialConditions(), Cgins::computeAxisymmetricDivergence(), computeBodyForcing(), Cgsm::computeDissipation(), Cgsm::computeNumberOfStepsAndAdjustTheTimeStep(), computeNumberOfStepsAndAdjustTheTimeStep(), Cgasf::computeSource(), Cgins::computeTurbulenceQuantities(), correctMovingGrids(), debug(), Cgins::determineErrors(), determineErrors(), displayBoundaryConditions(), displayParameters(), DomainSolver(), endTimeStep(), endTimeStepFE(), endTimeStepIM(), endTimeStepPC(), eulerStep(), extrapolateInterpolationNeighbours(), fixupUnusedPoints(), Cgasf::formAllSpeedPressureEquation(), Cgcns::formImplicitTimeSteppingMatrix(), Cgins::formImplicitTimeSteppingMatrix(), Cgad::formMatrixForImplicitSolve(), Cgcns::formMatrixForImplicitSolve(), Cgins::formMatrixForImplicitSolve(), getAdaptiveGridOption(), getAmrErrorFunction(), Cgcns::getAugmentedSolution(), Cgsm::getAugmentedSolution(), Cgins::getAugmentedSolution(), getAugmentedSolution(), Cgsm::getEnergy(), Cgsm::getErrors(), Cgsm::getForcing(), Cgsm::getForcingOption(), getGeneralOption(), Cgsm::getGeneralOption(), getGridInfo(), getGridVelocity(), Cgsm::getInitialConditions(), getInitialConditions(), Cgsm::getInputOutputOption(), Cgad::getInterfaceDataOptions(), Cgcns::getInterfaceDataOptions(), Cgasf::getInterfaceDataOptions(), Cgins::getInterfaceDataOptions(), Cgsm::getInterfaceDataOptions(), getInterfaceDataOptions(), Cgmp::getInterfaceResiduals(), Cgmp::getInterfaceResidualsOld(), Cgins::getLineSolverBoundaryConditions(), getMaterialProperties(), Cgsm::getMaxDivAndCurl(), Cgsm::getMethodName(), getMovingGridCorrectionHasConverged(), getMovingGridMaximumRelativeCorrection(), getMovingGridOption(), getOutputOption(), getPlotOption(), Cgsm::getPlotOption(), Cgins::getResidual(), getResidualInfo(), getSolutionBounds(), getTimeDependentBoundaryConditions(), getTimeDerivativeOfBoundaryValues(), Cgsm::getTimeStep(), getTimeStep(), getTimeStepAndNumberOfSubSteps(), Cgcns::getTimeSteppingEigenvalue(), Cgad::getTimeSteppingEigenvalue(), Cgasf::getTimeSteppingEigenvalue(), Cgins::getTimeSteppingEigenvalue(), getTimeSteppingEigenvalue(), Cgcns::getTimeSteppingOption(), Cgad::getTimeSteppingOption(), Cgmp::getTimeSteppingOption(), Cgasf::getTimeSteppingOption(), Cgins::getTimeSteppingOption(), Cgsm::getTimeSteppingOption(), getTimeSteppingOption(), Cgad::getUt(), Cgcns::getUt(), Cgasf::getUt(), Cgins::getUt(), Cgsm::getUt(), getUt(), Cgsm::getVelocityAndStress(), Cgasf::gridAccelerationBC(), Cgins::gridAccelerationBC(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), Cgins::initializeFactorization(), initializeFactorization(), Cgmp::initializeInterfaceBoundaryConditions(), Cgmp::initializeInterfaces(), Cgsm::initializeInterfaces(), Cgsm::initializeKnownSolution(), Cgcns::initializeSolution(), Cgasf::initializeSolution(), Cgins::initializeSolution(), initializeSolution(), initializeTimeStepping(), initializeTimeSteppingFE(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), Cgins::initializeTurbulenceModels(), Cgins::insImplicitMatrix(), Cgmp::interfaceProjection(), interpolate(), interpolateAndApplyBoundaryConditions(), Cgcns::isImplicitMatrixSingular(), jetInflow(), Cgins::lineSolverBoundaryConditions(), Cgasf::maxMachNumber(), moveGrids(), movingGridProblem(), Cgmp::multiDomainAdvance(), Cgmp::multiDomainAdvanceNew(), newAdaptiveGridBuilt(), numberOfComponents(), output(), outputHeader(), outputProbes(), Cgsm::outputResults(), Cgsm::outputResultsAfterEachTimeStep(), Cgins::outputSolution(), outputSolution(), parabolicInflow(), Cgmp::plot(), Cgsm::plot(), plot(), Cgmp::plotDomainQuantities(), Cgsm::printMemoryUsage(), printMemoryUsage(), Cgmp::printStatistics(), printStatistics(), Cgcns::printTimeStepInfo(), Cgmp::printTimeStepInfo(), Cgasf::printTimeStepInfo(), Cgins::printTimeStepInfo(), printTimeStepInfo(), Cgcns::project(), Cgins::project(), project(), readRestartFile(), saveRestartFile(), Cgsm::saveSequenceInfo(), saveSequenceInfo(), Cgsm::saveSequencesToShowFile(), saveSequencesToShowFile(), Cgmp::saveShow(), Cgsm::saveShow(), saveShow(), Cgad::saveShowFileComments(), Cgcns::saveShowFileComments(), Cgasf::saveShowFileComments(), Cgins::saveShowFileComments(), Cgsm::saveShowFileComments(), saveShowFileComments(), Cgsm::setBoundaryCondition(), setBoundaryConditionsInteractively(), setDefaultDataForBoundaryConditions(), setFinalTime(), setInterfaceBoundaryCondition(), setInterfacesAtPastTimes(), setNameOfGridFile(), Cgad::setOgesBoundaryConditions(), Cgins::setOgesBoundaryConditions(), setParametersInteractively(), Cgad::setPlotTitle(), Cgcns::setPlotTitle(), Cgasf::setPlotTitle(), Cgins::setPlotTitle(), Cgsm::setPlotTitle(), setPlotTitle(), Cgins::setSolverParameters(), setSolverParameters(), Cgins::setup(), Cgsm::setup(), setup(), Cgad::setupGridFunctions(), Cgcns::setupGridFunctions(), Cgasf::setupGridFunctions(), Cgins::setupGridFunctions(), Cgsm::setupGridFunctions(), setupGridFunctions(), Cgsm::setupGrids(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), Cgsm::setupPde(), Cgsm::setupUserDefinedForcing(), setupUserDefinedForcing(), Cgad::setupUserDefinedInitialConditions(), Cgsm::setupUserDefinedInitialConditions(), setupUserDefinedInitialConditions(), setupUserDefinedMaterialProperties(), setVariableBoundaryValues(), setVariableMaterialProperties(), smoothVelocity(), Cgmp::solve(), Cgsm::solve(), solve(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Cgins::solveForTimeIndependentVariables(), startTimeStep(), startTimeStepFE(), startTimeStepIM(), startTimeStepPC(), takeOneStep(), Cgsm::takeTimeStep(), takeTimeStep(), takeTimeStepFE(), takeTimeStepIM(), takeTimeStepPC(), tracking(), twilightZoneFlow(), Cgins::updateDivergenceDamping(), Cgsm::updateForAdaptiveGrids(), updateForAdaptiveGrids(), Cgins::updateForMovingGrids(), updateForMovingGrids(), Cgsm::updateForNewTimeStep(), Cgad::updateGeometryArrays(), Cgcns::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgins::updatePressureEquation(), Cgcns::updateStateVariables(), Cgins::updateStateVariables(), Cgasf::updateToMatchGrid(), updateToMatchGrid(), updateToMatchNewGrid(), Cgsm::userDefinedBoundaryValues(), userDefinedBoundaryValues(), userDefinedCleanup(), Cgsm::userDefinedForcing(), userDefinedForcing(), Cgsm::userDefinedForcingCleanup(), userDefinedForcingCleanup(), userDefinedGrid(), Cgad::userDefinedInitialConditions(), Cgsm::userDefinedInitialConditions(), userDefinedInitialConditions(), Cgad::userDefinedInitialConditionsCleanup(), Cgsm::userDefinedInitialConditionsCleanup(), userDefinedInitialConditionsCleanup(), userDefinedMaterialProperties(), userDefinedMaterialPropertiesCleanup(), userDefinedOutput(), Cgad::writeParameterSummary(), Cgcns::writeParameterSummary(), Cgasf::writeParameterSummary(), Cgins::writeParameterSummary(), Cgsm::writeParameterSummary(), writeParameterSummary(), Cgad::~Cgad(), Cgasf::~Cgasf(), Cgcns::~Cgcns(), Cgins::~Cgins(), Cgmp::~Cgmp(), and Cgsm::~Cgsm().
|
protected |
Referenced by DomainSolver(), getPdeName(), outputHeader(), Cgad::setupPde(), Cgcns::setupPde(), Cgasf::setupPde(), Cgins::setupPde(), and Cgsm::setupPde().
realCompositeGridFunction* DomainSolver::pdtVar |
realCompositeGridFunction* DomainSolver::pgam |
Referenced by DomainSolver(), gam(), Cgasf::initializeSolution(), Cgasf::updateToMatchGrid(), and ~DomainSolver().
realMappedGridFunction* DomainSolver::pGridVelocityLinearized |
Referenced by DomainSolver(), Cgins::formMatrixForImplicitSolve(), Cgins::insImplicitMatrix(), and ~DomainSolver().
LineSolve* DomainSolver::pLineSolve |
Referenced by advanceSteadyStateRungeKutta(), DomainSolver(), printMemoryUsage(), and ~DomainSolver().
Oges* DomainSolver::poisson |
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), Cgins::assignPressureRHS(), DomainSolver(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), outputHeader(), printMemoryUsage(), Cgmp::printStatistics(), printStatistics(), Cgins::project(), project(), Cgins::setSolverParameters(), setup(), Cgins::setupGridFunctions(), Cgins::solveForTimeIndependentVariables(), takeTimeStepIM(), takeTimeStepPC(), Cgins::updatePressureEquation(), and ~DomainSolver().
realCompositeGridFunction DomainSolver::poissonCoefficients |
Referenced by printMemoryUsage().
realCompositeGridFunction* DomainSolver::pp |
Referenced by advanceAdamsPredictorCorrector(), advanceImplicitMultiStep(), advanceSecondOrderSystem(), DomainSolver(), initializeTimeSteppingIM(), initializeTimeSteppingPC(), p(), printMemoryUsage(), Cgasf::setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), Cgins::solveForTimeIndependentVariables(), Cgins::updateToMatchGrid(), and ~DomainSolver().
realCompositeGridFunction * DomainSolver::ppL |
realCompositeGridFunction * DomainSolver::ppx |
Referenced by DomainSolver(), px(), Cgasf::setupGridFunctions(), and ~DomainSolver().
realCompositeGridFunction DomainSolver::pressureRightHandSide |
Referenced by Cgasf::allSpeedImplicitTimeStep(), Cgasf::applyBoundaryConditions(), printMemoryUsage(), Cgasf::setupGridFunctions(), Cgins::setupGridFunctions(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Cgins::solveForTimeIndependentVariables(), and Cgins::updatePressureEquation().
OgesParameters DomainSolver::pressureSolverParameters |
Referenced by getGeneralOption(), Cgsm::getGeneralOption(), outputHeader(), and setup().
realCompositeGridFunction* DomainSolver::previousPressure |
realCompositeGridFunction * DomainSolver::prho |
Referenced by Cgasf::allSpeedImplicitTimeStep(), DomainSolver(), rho(), setupGridFunctions(), and ~DomainSolver().
realCompositeGridFunction* DomainSolver::prL |
|
protected |
Referenced by DomainSolver(), and getInitialConditions().
|
protected |
Referenced by DomainSolver(), and getInitialConditions().
|
protected |
Referenced by DomainSolver(), getInitialConditions(), and setParametersInteractively().
realCompositeGridFunction* DomainSolver::puLinearized |
Referenced by DomainSolver(), Cgins::formMatrixForImplicitSolve(), Cgins::insImplicitMatrix(), and ~DomainSolver().
|
protected |
Referenced by DomainSolver(), and getInitialConditions().
realCompositeGridFunction* DomainSolver::pvIMS |
Referenced by DomainSolver(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), and ~DomainSolver().
realCompositeGridFunction * DomainSolver::pwIMS |
Referenced by DomainSolver(), Cgad::implicitSolve(), Cgcns::implicitSolve(), Cgins::implicitSolve(), and ~DomainSolver().
std::vector<real> DomainSolver::realPartOfEigenvalue |
Referenced by adaptGrids(), Cgsm::advanceFOS(), Cgad::Cgad(), Cgcns::Cgcns(), Cgsm::getTimeStep(), Cgcns::getTimeSteppingEigenvalue(), Cgad::getTimeSteppingEigenvalue(), Cgcns::getUt(), Cgsm::setup(), Cgad::updateGeometryArrays(), Cgcns::updateGeometryArrays(), Cgins::updateGeometryArrays(), Cgsm::updateGeometryArrays(), Cgad::updateToMatchGrid(), and Cgcns::updateToMatchGrid().
|
protected |
Referenced by DomainSolver(), and saveShow().
int DomainSolver::totalNumberOfArrays |
Referenced by checkArrays(), DomainSolver(), and setupGridFunctions().
RealArray DomainSolver::tv |
RealArray DomainSolver::tv0 |
RealArray DomainSolver::tvb |
Referenced by advanceVariableTimeStepAdamsPredictorCorrector().
realArray* DomainSolver::ui |
RealArray DomainSolver::variableDt |
RealArray DomainSolver::variableTime |
Referenced by advanceVariableTimeStepAdamsPredictorCorrector(), and setupGridFunctions().