CG
Version 25
|
#include <Cgsm.h>
Public Member Functions | |
Cgsm (CompositeGrid &cg, GenericGraphicsInterface *ps=NULL, Ogshow *show=NULL, const int &plotOption=1) | |
Constructor for the Cgsm class. | |
~Cgsm () | |
int | addDissipation (int current, real t, real dt, realMappedGridFunction *fields, const Range &C) |
Add in an artificial dissipation. | |
void | advance (int current, real t, real dt) |
Advance one time-step. This function is used by the multi-physics solver Cgmp. | |
void | advanceFOS (int current, real t, real dt, RealCompositeGridFunction *ut=NULL, real tForce=0.) |
Advance the solution as a second-order system. This function will. | |
void | advanceMethodOfLines (int current, real t, real dt) |
Advance one time-step using the method of lines. | |
void | advanceSOS (int current, real t, real dt, RealCompositeGridFunction *ut=NULL, real tForce=0.) |
Advance the solution as a second-order system. This function will. | |
void | applyBoundaryConditions (int option, real dt, int current, int prev) |
High-level apply boundary conditions routine. | |
virtual int | applyBoundaryConditions (GridFunction &cgf, const int &option=-1, int grid_=-1, GridFunction *puOld=NULL, const real &dt=-1.) |
Here is apply BC function from the DomainSolver (used in adaptGrids) | |
int | assignAnnulusEigenfunction (const int gfIndex, const EvaluationOptionsEnum evalOption) |
Assign the annulus eigenfunction initial conditions or evaluate the error. | |
void | assignBoundaryConditions (int option, int grid, real t, real dt, realMappedGridFunction &u, realMappedGridFunction &uOld, int current) |
Apply boundary conditions. | |
void | assignBoundaryConditionsFOS (int option, int grid, real t, real dt, realMappedGridFunction &u, realMappedGridFunction &uOld, int current) |
Apply boundary conditions for the First-Order-System. | |
void | assignBoundaryConditionsSOS (int option, int grid, real t, real dt, realMappedGridFunction &u, realMappedGridFunction &uOld, int current) |
Apply boundary conditions for the second-order-system . | |
int | assignGaussianPulseInitialConditions (int gfIndex) |
Assign the Gaussian Pulse initial conditions. | |
int | assignHempInitialConditions (int gfIndex) |
Assign initial conditions for the Hemp solver. | |
virtual int | assignInitialConditions (int gfIndex) |
Assign initial conditions. | |
void | assignInterfaceBoundaryConditions (int current, real t, real dt) |
int | assignParabolicInitialConditions (int gfIndex) |
Assign "parabolic" initial conditions. | |
int | assignSpecialInitialConditions (int gfIndex, const EvaluationOptionsEnum evalOption) |
Assign "special" initial conditions. | |
int | assignTwilightZoneInitialConditions (int gfIndex) |
Assign twilight zone initial conditions. | |
int | buildRunTimeDialog () |
Build the run time dialog. This dialog appears while a Domain solver is time stepping. | |
int | buildVariableDissipation () |
void | checkArrays (const aString &label) |
void | checkDisplacementAndStress (const int current, real t) |
For the FOS, determine difference between the stress components s11c, .. and the stress computed from the displacement. | |
void | computeDissipation (int current, real t, real dt) |
void | computeNumberOfStepsAndAdjustTheTimeStep (const real &t, const real &tFinal, const real &nextTimeToPlot, int &numberOfSubSteps, real &dtNew, const bool &adjustTimeStep=true) |
virtual realCompositeGridFunction & | getAugmentedSolution (GridFunction &gf0, realCompositeGridFunction &v) |
Interface to the base class function. | |
realCompositeGridFunction & | getAugmentedSolution (int current, realCompositeGridFunction &v, const real t) |
Create a grid function that holds all the things we can plot. | |
bool | getBoundsForPML (MappedGrid &mg, Index Iv[3], int extra=0) |
virtual int | getInterfaceDataOptions (GridFaceDescriptor &info, int &interfaceDataOptions) const |
Return the interface data required for a given type of interface. | |
void | getLocalBoundsAndBoundaryConditions (const realMappedGridFunction &a, IntegerArray &gidLocal, IntegerArray &dimensionLocal, IntegerArray &bcLocal) |
virtual void | getUt (GridFunction &cgf, const real &t, RealCompositeGridFunction &ut, real tForce) |
: compute u.t or u.tt for a method of lines time-stepper | |
void | getUtFOS (GridFunction &cgf, const real &t, RealCompositeGridFunction &ut, real tForce) |
Compute du/dt for the first-order-system. | |
void | getUtSOS (GridFunction &cgf, const real &t, RealCompositeGridFunction &ut, real tForce) |
Compute u.tt for the second-order-system. | |
void | getVelocityAndStress (const int current, real t, realCompositeGridFunction *pv=NULL, int vComponent=0, realCompositeGridFunction *ps=NULL, int sComponent=0, bool computeMaxNorms=true) |
Compute the velocity and stress by differencing the displacements. | |
int | endTimeStep (real &t0, real &dt0, AdvanceOptions &advanceOptions) |
End an individual time step (a time sub-step function). | |
void | getEnergy (int current, real t, real dt) |
void | getErrors (int current, real t, real dt, const aString &label=nullString) |
Determine the errors. | |
int | getForcing (int current, int grid, realArray &u, real t, real dt, int option=0) |
virtual int | getInitialConditions (const aString &command=nullString, DialogData *interface=NULL, GUIState *guiState=NULL, DialogState *dialogState=NULL) |
Determine the type of initial conditions to assign. | |
void | getMaxDivAndCurl (const int current, real t, realCompositeGridFunction *pu=NULL, int component=0, realCompositeGridFunction *pvor=NULL, int vorComponent=0, realCompositeGridFunction *pDensity=NULL, int rhoComponent=0, bool computeMaxNorms=true) |
int | getMethodName (aString &methodName) |
: Return the name used in plot titles and the show file titles. | |
virtual real | getTimeStep (GridFunction &gf) |
void | initializeInterfaces () |
void | initializeKnownSolution () |
int | initializeRadiationBoundaryConditions () |
virtual int | initializeTimeStepping (real &t0, real &dt0) |
Initialize the time stepping (a time sub-step function). | |
virtual int | interfaceRightHandSide (InterfaceOptionsEnum option, int interfaceDataOptions, GridFaceDescriptor &info, GridFaceDescriptor &gfd, int gfIndex, real t) |
int | outputResults (int current, real t, real dt) |
int | outputResultsAfterEachTimeStep (int current, real t, real dt, int stepNumber) |
int | plot (int current, real t, real dt) |
int | printMemoryUsage (FILE *file=stdout) |
Output information about the memory usage. | |
virtual void | printTimeStepInfo (const int &step, const real &t, const real &cpuTime) |
Print time-step information about the current solution in a nicely formatted way. | |
int | project (int numberOfStepsTaken, int current, real t, real dt) |
virtual void | saveShow (GridFunction &gf0) |
Save a solution in the show file. | |
virtual void | saveShowFileComments (Ogshow &show) |
: Set the titles and labels that go on the show file output | |
int | setBoundaryCondition (aString &answer, IntegerArray &originalBoundaryCondition) |
int | setParametersInteractively () |
Set parameters, boundary conditions, forcings, initial conditions etc. that define the problem. | |
virtual int | setPlotTitle (const real &t, const real &dt) |
Set the plot titles for interactive plotting. | |
int | setupGrids () |
Setup and initialization. Build the grid and solution fields. | |
int | setupGridFunctions () |
Setup and initialization. Build the solution fields. | |
virtual int | setupPde (aString &reactionName, bool restartChosen, IntegerArray &originalBoundaryCondition) |
Setup the PDE to be solved. | |
virtual int | setupUserDefinedForcing () |
virtual int | setupUserDefinedInitialConditions () |
void | smoothDivergence (realCompositeGridFunction &u, const int numberOfSmooths) |
int | solve () |
Solve the equations. | |
virtual int | startTimeStep (real &t0, real &dt0, int ¤tGF, int &nextGF, AdvanceOptions &advanceOptions) |
Start an individual time step (a time sub-step function). | |
int | takeTimeStep (real &t0, real &dt0, int correction, AdvanceOptions &advanceOptions) |
Take a single time step (a time sub-step function). | |
virtual int | updateForAdaptiveGrids (CompositeGrid &cg) |
virtual int | updateGeometryArrays (GridFunction &cgf) |
Update geometry arrays when the grid has changed (called by adaptGrids for example). | |
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 int | userDefinedForcing (realArray &f, const realMappedGridFunction &u, int iparam[], real rparam[]) |
virtual void | userDefinedForcingCleanup () |
This routine is called when Cgsm is finished and can be used to clean up memory. | |
virtual int | userDefinedInitialConditions (CompositeGrid &cg, realCompositeGridFunction &u) |
virtual void | userDefinedInitialConditionsCleanup () |
int | updateProjectionEquation () |
bool | usingPMLBoundaryConditions () const |
Public Member Functions inherited from 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. | |
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 (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 | 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 | 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. | |
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 | 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 | 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) |
const aString & | getClassName () const |
virtual int | getAdaptiveGridOption (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) |
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 | 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 (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 | 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 | 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 | 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) |
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 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 | saveRestartFile (const GridFunction &cgf, const aString &restartFileName) |
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 void | setSensitivity (GUIState &dialog, bool trueOrFalse) |
virtual int | setSolverParameters (const aString &command=nullString, DialogData *interface=NULL) |
Prompt for changes in the solver parameters. | |
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 void | solveForTimeIndependentVariables (GridFunction &cgf, bool updateSolutionDependentEquations=false) |
: Solve for the pressure given the velocity. | |
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 | 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 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 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 | 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 | 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) |
realCompositeGridFunction & | p () const |
realCompositeGridFunction & | px () const |
realCompositeGridFunction & | rL () const |
realCompositeGridFunction & | pL () const |
realCompositeGridFunction & | rho () const |
realCompositeGridFunction & | gam () const |
Static Public Member Functions | |
static int | addPrefix (const aString label[], const aString &prefix, aString cmd[], const int maxCommands) |
Static Public Member Functions inherited from DomainSolver | |
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. | |
Protected Member Functions | |
int | buildTimeSteppingDialog (DialogData &dialog) |
: Build the time stepping options dialog. | |
int | getTimeSteppingOption (const aString &answer, DialogData &dialog) |
int | buildForcingOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various forcing options. | |
int | getForcingOption (const aString &command, DialogData &dialog) |
: Look for a forcing option in the string "answer" | |
int | buildGeneralOptionsDialog (DialogData &dialog) |
Build the dialog that shows the various general options. | |
int | getGeneralOption (const aString &answer, DialogData &dialog) |
: Look for a general option in the string "answer" | |
int | buildInputOutputOptionsDialog (DialogData &dialog) |
Build the input-output options dialog. | |
int | getInputOutputOption (const aString &command, DialogData &dialog) |
: Look for an input/output option in the string "answer" | |
int | buildPlotOptionsDialog (DialogData &dialog) |
Build the plot options dialog. | |
int | getPlotOption (const aString &command, DialogData &dialog) |
: Look for a plot option in the string "answer" | |
int | buildParametersDialog (DialogData &dialog) |
int | saveSequenceInfo (real t0, RealArray &sequenceData) |
int | saveSequencesToShowFile () |
Save sequence info to the show file. | |
void | setup (const real &time=0.) |
int | updateForNewTimeStep (GridFunction &cgf, real &dt) |
Update geometry arrays, solution at old times etc. after the time step has changed. | |
void | writeParameterSummary (FILE *file) |
Output run-time parameters for the header. | |
Additional Inherited Members | |
Protected Attributes inherited from DomainSolver | |
aString | name |
aString | className |
aString | pdeName |
int | restartNumber |
DialogData * | pUniformFlowDialog |
DialogData * | pStepFunctionDialog |
DialogData * | pShowFileDialog |
DialogData * | pTzOptionsDialog |
int | chooseAComponentMenuItem |
int | numberOfPushButtons |
int | numberOfTextBoxes |
int | itemsToPlot |
enum Cgsm::ForcingEnum |
Cgsm::Cgsm | ( | CompositeGrid & | cg_, |
GenericGraphicsInterface * | ps_ = NULL , |
||
Ogshow * | show = NULL , |
||
const int & | plotOption_ = 1 |
||
) |
Constructor for the Cgsm class.
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) : plot option |
References artificialDissipation, artificialDissipationInterval, betaGaussianPlaneWave, c1, c2, cgdissipation, cgerrp, cgfn, cgop, checkErrors, DomainSolver::className, compareToReferenceShowFile, computeEnergy, currentFn, cylinderAxisEnd, cylinderAxisStart, cylinderRadius, Parameters::dbase, defaultInitialCondition, divergenceDamping, divUMax, dScale, elementType, forcingOption, frequencyToSaveInShowFile, frequencyToSaveProbes, gaussianChargeSourceParameters, gaussianPulseParameters, gaussianSourceParameters, gradUMax, DomainSolver::gridHasMaterialInterfaces, initialConditionOption, initialTotalEnergy, knownSolution, knownSolutionOption, kx, ky, kz, lambda, lambdaGrid, materialInterfaceOption, movieFrame, mu, muGrid, myid, DomainSolver::name, noForcing, noKnownSolution, normalPlaneMaterialInterface, np, numberLinesForPML, numberOfFunctions, numberOfGaussianChargeSources, numberOfGaussianPulses, numberOfIterationsForInterfaceBC, numberOfSequences, numberOfStepsTaken, omegaForInterfaceIteration, orderOfArtificialDissipation, DomainSolver::parameters, plotChoices, plotDissipation, plotDivergence, plotErrors, plotOptions, plotRho, plotScatteredField, plotStress, plotTotalField, plotVelocity, plotVorticity, pmlErrorOffset, pmlLayerStrength, pmlPower, probeFile, probeFileName, radbcAxis, radbcGrid, radbcSide, radiusForCheckingErrors, referenceShowFileReader, DomainSolver::rho(), runTimeDialog, saveDivergenceInShowFile, saveErrorsInShowFile, saveStressInShowFile, saveVelocityInShowFile, sequenceCount, setupGrids(), showFileFrameForGrid, sizeOfLocalArraysForAdvance, slowStartInterval, structuredElements, totalEnergy, totalNumberOfArrays, useConservative, useStreamMode, useVariableDissipation, variableDissipation, vorUMax, vpml, x0GaussianPlaneWave, x0PlaneMaterialInterface, y0GaussianPlaneWave, and z0GaussianPlaneWave.
Cgsm::~Cgsm | ( | ) |
References cgdissipation, cgerrp, cgfn, cgop, knownSolution, DomainSolver::parameters, probeFile, referenceShowFileReader, runTimeDialog, variableDissipation, and vpml.
int Cgsm::addDissipation | ( | int | current, |
real | t, | ||
real | dt, | ||
realMappedGridFunction * | field, | ||
const Range & | C | ||
) |
Add in an artificial dissipation.
C | (input) : apply to these components. |
References artificialDissipation, DomainSolver::current, d, DomainSolver::dt, getIndex(), I1, I2, I3, mg, n, numberOfTimeLevels, orderOfArtificialDissipation, and u.
|
static |
void Cgsm::advance | ( | int | current, |
real | t, | ||
real | dt | ||
) |
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. Advance the solution one time step. |
References DomainSolver::adaptGrids(), advanceFOS(), advanceSOS(), applyBoundaryConditions(), assert(), assignInterfaceBoundaryConditions(), GridFunction::cg, DomainSolver::cg, cgerrp, cgop, checkArrays(), checkErrors, Parameters::dbase, DomainSolver::debug(), DomainSolver::dt, getErrors(), DomainSolver::gf, DomainSolver::gridHasMaterialInterfaces, I1, I2, I3, DomainSolver::interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), lambda, lambdaGrid, mu, muGrid, n, DomainSolver::numberOfComponents(), numberOfTimeLevels, DomainSolver::outputSolution(), DomainSolver::parameters, DomainSolver::printP(), regridFrequency, DomainSolver::rho(), GridFunction::t, tc, GridFunction::u, u, uc, vc, and wc.
Referenced by solve(), and takeTimeStep().
void Cgsm::advanceFOS | ( | int | current, |
real | t, | ||
real | dt, | ||
RealCompositeGridFunction * | ut = NULL , |
||
real | tForce = 0. |
||
) |
Advance the solution as a second-order system. This function will.
References a, addBoundaryForcing, DomainSolver::addForcing(), artificialDissipation, assert(), axis, bcfOffset, c1, c2, DomainSolver::cg, checkArrays(), GridMaterialProperties::constantMaterialProperties, DomainSolver::current, Parameters::dbase, dbc, DomainSolver::debug(), dir, display(), DomainSolver::dt, dx, DomainSolver::extrapolateInterpolationNeighbours(), f, forcingOption, Parameters::getBoundaryData(), getBoundsForPML(), getErrors(), getForcing(), getIndex(), GridMaterialProperties::getMaterialFormat(), DomainSolver::getName(), DomainSolver::gf, SmParameters::godunov, grid, DomainSolver::gridHasMaterialInterfaces, gridType, SmParameters::hemp, I1, I2, I3, DomainSolver::imaginaryPartOfEigenvalue, Parameters::isAdaptiveGridProblem(), isRectangular, lambda, lambdaGrid, mask, maskLocal, materialFormat, matIndexPtr, matValPtr, mg, mu, muGrid, myid, ndMatProp, noForcing, DomainSolver::numberOfComponents(), numberOfStepsTaken, numberOfTimeLevels, ok, pAddBoundaryForcing, DomainSolver::parameters, pbcf, pbcfOffset, pdbc, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), DomainSolver::printP(), DomainSolver::realPartOfEigenvalue, DomainSolver::rho(), side, sizeOfLocalArraysForAdvance, solidMechanicsGodunov, solidMechanicsHemp, tc, twilightZoneForcing, GridFunction::u, u, uc, uLocal, useConservative, vc, and wc.
Referenced by advance(), getTimeStep(), and getUtFOS().
void Cgsm::advanceMethodOfLines | ( | int | current, |
real | t, | ||
real | dt | ||
) |
Advance one time-step using the method of lines.
current | (input) : index of the current solution |
t | (input) : current time. |
dt | (input) : time step. |
References DomainSolver::adaptGrids(), applyBoundaryConditions(), assert(), GridFunction::cg, DomainSolver::cg, cgerrp, cgop, checkArrays(), checkErrors, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), DomainSolver::dt, DomainSolver::fn, SmParameters::forwardEuler, getErrors(), getUt(), DomainSolver::gf, I1, I2, I3, SmParameters::improvedEuler, DomainSolver::interpolateAndApplyBoundaryConditions(), Parameters::isAdaptiveGridProblem(), n, DomainSolver::numberOfComponents(), numberOfFunctions, numberOfTimeLevels, DomainSolver::outputSolution(), DomainSolver::parameters, printF(), DomainSolver::printP(), regridFrequency, GridFunction::t, tc, GridFunction::u, u, uc, vc, and wc.
Referenced by solve().
void Cgsm::advanceSOS | ( | int | current, |
real | t, | ||
real | dt, | ||
RealCompositeGridFunction * | ut = NULL , |
||
real | tForce = 0. |
||
) |
Advance the solution as a second-order system. This function will.
References DomainSolver::addForcing(), advSM, GridFunctionFilter::applyFilter(), DomainSolver::applyFilter(), artificialDissipation, assert(), c1, c2, DomainSolver::cg, cgdissipation, checkArrays(), computeDissipation(), GridMaterialProperties::constantMaterialProperties, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), display(), DomainSolver::dt, dx, GridFunctionFilter::explicitFilter, DomainSolver::extrapolateInterpolationNeighbours(), f, GridFunctionFilter::filterFrequency, GridFunctionFilter::filterType, forcingOption, getBoundsForPML(), getErrors(), getForcing(), getIndex(), GridMaterialProperties::getMaterialFormat(), DomainSolver::getName(), DomainSolver::gf, grid, DomainSolver::gridHasMaterialInterfaces, gridType, I1, I2, I3, isRectangular, kx, ky, kz, lambda, lambdaGrid, mask, maskLocal, materialFormat, matIndexPtr, matValPtr, mg, SmParameters::modifiedEquationTimeStepping, mu, muGrid, myid, ndMatProp, noForcing, DomainSolver::numberOfComponents(), numberOfStepsTaken, numberOfTimeLevels, ok, orderOfArtificialDissipation, GridFunctionFilter::orderOfFilter, OV_ABORT(), DomainSolver::parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, planeWaveBoundaryForcing, printF(), DomainSolver::rho(), sizeOfLocalArraysForAdvance, tc, twilightZoneForcing, GridFunction::u, u, uc, uLocal, useConservative, useVariableDissipation, variableDissipation, vc, and wc.
Referenced by advance(), and getUtSOS().
void Cgsm::applyBoundaryConditions | ( | int | option, |
real | dt, | ||
int | current, | ||
int | prev | ||
) |
High-level apply boundary conditions routine.
option,: |
References assignBoundaryConditions(), GridFunction::cg, DomainSolver::cg, DomainSolver::current, DomainSolver::getTimeDependentBoundaryConditions(), DomainSolver::gf, grid, DomainSolver::parameters, GridFunction::t, Parameters::thereAreTimeDependentUserBoundaryConditions(), GridFunction::u, and userDefinedBoundaryValues().
Referenced by advance(), advanceMethodOfLines(), applyBoundaryConditions(), initializeTimeStepping(), solve(), and takeTimeStep().
|
virtual |
Here is apply BC function from the DomainSolver (used in adaptGrids)
option,: |
Reimplemented from DomainSolver.
References applyBoundaryConditions(), assert(), DomainSolver::current, DomainSolver::gf, numberOfTimeLevels, GridFunction::u, and u.
int Cgsm::assignAnnulusEigenfunction | ( | const int | gfIndex, |
const EvaluationOptionsEnum | evalOption | ||
) |
Assign the annulus eigenfunction initial conditions or evaluate the error.
gfIndex | (input) : assign gf[gfIndex].u |
evalOption | (input) : computeInitialConditions or computeErrors |
References a, assert(), assignStress, assignVelocities, c, c1, c2, DomainSolver::cg, computeErrors, computeInitialConditions, cost, cosTheta, d, Parameters::dbase, DomainSolver::debug(), ERR, FOR_3D, getEng, getIndex(), DomainSolver::gf, grid, SmParameters::hemp, i1, I1, i2, I2, i3, I3, includeGhost, initialConditionParameters, isRectangular, lambda, lambdaGrid, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, omega, OV_ABORT(), DomainSolver::parameters, pc, printF(), r, DomainSolver::rho(), rx, ry, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, sinTheta, GridFunction::t, tc, GridFunction::u, u, U, uc, ue, uLocal, ux, uy, v1c, v2c, v3c, vc, wc, x, X, x2, x3, and x4.
Referenced by assignInitialConditions(), and getErrors().
void Cgsm::assignBoundaryConditions | ( | int | option, |
int | grid, | ||
real | t, | ||
real | dt, | ||
realMappedGridFunction & | u, | ||
realMappedGridFunction & | uOld, | ||
int | current | ||
) |
Apply boundary conditions.
option,: |
References assignBoundaryConditionsFOS(), assignBoundaryConditionsSOS(), Parameters::dbase, and DomainSolver::parameters.
Referenced by applyBoundaryConditions().
void Cgsm::assignBoundaryConditionsFOS | ( | int | option, |
int | grid, | ||
real | t, | ||
real | dt, | ||
realMappedGridFunction & | u, | ||
realMappedGridFunction & | uOld, | ||
int | current | ||
) |
Apply boundary conditions for the First-Order-System.
option,: |
References a, a0, SmParameters::abcPML, addBoundaryForcing, all, assert(), assignStress, assignVelocities, axis, bcfOffset, bcOptSmFOS, c1, c2, cb1, cb2, GridMaterialProperties::constantMaterialProperties, cp, cr, cs, data, Parameters::dbase, dbc, DomainSolver::debug(), dirichlet, SmParameters::dirichletBoundaryCondition, SmParameters::displacementBC, display(), DomainSolver::dt, dtb2, dx, f, FOR_3D, forcingOption, Parameters::getBoundaryData(), getIndex(), getLocalBoundsAndBoundaryConditions(), GridMaterialProperties::getMaterialFormat(), grid, gridType, SmParameters::hemp, i1, I1, i2, I2, i3, I3, Ig1, Ig2, Ig3, includeGhost, SmParameters::interfaceBoundaryCondition, Parameters::isAdaptiveGridProblem(), isRectangular, k, lambda, lambdaGrid, m, mask, materialFormat, matIndexPtr, matValPtr, mg, mStart, mu, muGrid, n, ndMatProp, nk, np, ns, DomainSolver::numberOfComponents(), numberOfTimeLevels, ok, omega, OV_ABORT(), DomainSolver::p(), pAddBoundaryForcing, DomainSolver::parameters, pbcf, pbcfOffset, pc, pdbc, period, GridMaterialProperties::piecewiseConstantMaterialProperties, planeWaveBoundaryForcing, printF(), DomainSolver::printP(), DomainSolver::rho(), rx, rxt, ry, ryt, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, side, SmParameters::slipWall, SmParameters::symmetry, tc, SmParameters::tractionBC, trd, twd, twilightZoneForcing, tz, u, U, U0, U0T, U0X, U0Y, uc, uLocal, useConservative, V, v1c, v2c, v3c, vc, vcenter, wc, x, X, xcenter, xp1, xShift, ycenter, ySurf, z, and zcenter.
Referenced by assignBoundaryConditions().
void Cgsm::assignBoundaryConditionsSOS | ( | int | option, |
int | grid, | ||
real | t, | ||
real | dt, | ||
realMappedGridFunction & | u, | ||
realMappedGridFunction & | uOld, | ||
int | current | ||
) |
Apply boundary conditions for the second-order-system .
option,: |
References a, a0, SmParameters::abcPML, addBoundaryForcing, all, DomainSolver::applyFilter(), assert(), assignStress, assignVelocities, axis, bcfOffset, bcOptSM, bcOptSmCons, c1, c2, cb1, cb2, DomainSolver::cg, GridMaterialProperties::constantMaterialProperties, cp, cr, cs, data, Parameters::dbase, dbc, DomainSolver::debug(), dir, dirichlet, SmParameters::dirichletBoundaryCondition, SmParameters::displacementBC, display(), DomainSolver::dt, dtb2, dx, f, FOR_3D, forcingOption, Parameters::getBoundaryData(), getBoundsForPML(), getIndex(), getLocalBoundsAndBoundaryConditions(), GridMaterialProperties::getMaterialFormat(), DomainSolver::gf, grid, gridType, SmParameters::hemp, i1, I1, i2, I2, i3, I3, Ig1, Ig2, Ig3, includeGhost, SmParameters::interfaceBoundaryCondition, Parameters::isAdaptiveGridProblem(), isRectangular, k, lambda, lambdaGrid, m, mask, materialFormat, matIndexPtr, matValPtr, mg, mStart, mu, muGrid, myid, n, ndMatProp, nk, np, ns, numberLinesForPML, DomainSolver::numberOfComponents(), numberOfTimeLevels, ok, omega, OV_ABORT(), DomainSolver::p(), pAddBoundaryForcing, DomainSolver::parameters, pbcf, pbcfOffset, pc, pdbc, period, GridMaterialProperties::piecewiseConstantMaterialProperties, planeWaveBoundaryForcing, pmlSolidMechanics, printF(), DomainSolver::printP(), DomainSolver::rho(), rx, rxt, ry, ryt, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, side, SmParameters::symmetry, tc, trd, twd, twilightZoneForcing, tz, GridFunction::u, u, U, U0, U0T, U0X, U0Y, uc, uLocal, useConservative, v1c, v2c, v3c, vc, vcenter, vpml, VPML, wc, WPML, x, X, xcenter, xp1, xShift, ycenter, ySurf, z, and zcenter.
Referenced by assignBoundaryConditions().
int Cgsm::assignGaussianPulseInitialConditions | ( | int | gfIndex | ) |
Assign the Gaussian Pulse initial conditions.
This function assigns the solution at t=0.
gfIndex | (input) : assign gf[gfIndex].u |
References a0, assignStress, assignVelocities, c, c1, c2, DomainSolver::cg, Parameters::dbase, DomainSolver::debug(), DomainSolver::dt, dx, FOR_3D, gaussianPulseParameters, getIndex(), DomainSolver::gf, grid, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, lambda, lambdaGrid, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, DomainSolver::parameters, printF(), DomainSolver::rho(), s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, GridFunction::t, tc, GridFunction::u, u, U, U0, U0T, U0X, U0Y, U3D, U3DT, U3DX, U3DY, U3DZ, uc, uLocal, v1c, v2c, v3c, vc, VERTEX0, VERTEX1, VERTEX2, wc, x, and xab.
Referenced by assignInitialConditions().
int Cgsm::assignHempInitialConditions | ( | int | gfIndex | ) |
Assign initial conditions for the Hemp solver.
This function assigns the solution at t=0. It may also initialize the solution at previous times.
gfIndex | (input) : assign gf[gfIndex].u |
References a, assert(), assignStress, assignVelocities, c, DomainSolver::cg, d, Parameters::dbase, DomainSolver::debug(), dx, FOR_3, FOR_3D, getEng, getIndex(), DomainSolver::gf, grid, SmParameters::hemp, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, k, lambda, lambdaGrid, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, omega, P0, DomainSolver::parameters, pc, printF(), Q0, DomainSolver::rho(), S110, s11c, S120, s12c, s13c, s21c, S220, s22c, s23c, s31c, s32c, s33c, GridFunction::t, tc, GridFunction::u, u, U, U0, U0T, uc, uLocal, v1c, v2c, v3c, vc, wc, x, and X.
Referenced by assignInitialConditions().
|
virtual |
Assign initial conditions.
This function assigns the initial conditions
gfIndex | (input) : assign gf[gfIndex].u |
Reimplemented from DomainSolver.
References annulusEigenfunctionInitialCondition, assign(), assignAnnulusEigenfunction(), assignGaussianPulseInitialConditions(), assignHempInitialConditions(), DomainSolver::assignInitialConditions(), assignParabolicInitialConditions(), assignSpecialInitialConditions(), assignTwilightZoneInitialConditions(), DomainSolver::cg, computeInitialConditions, Parameters::dbase, DomainSolver::debug(), defaultInitialCondition, gaussianPulseInitialCondition, Parameters::getKnownSolution(), DomainSolver::gf, SmParameters::hemp, hempInitialCondition, initialConditionOption, knownSolutionInitialCondition, parabolicInitialCondition, DomainSolver::parameters, printF(), DomainSolver::printP(), specialInitialCondition, twilightZoneInitialCondition, GridFunction::u, u, userDefinedInitialCondition, userDefinedInitialConditions(), and zeroInitialCondition.
Referenced by getInitialConditions(), and updateForNewTimeStep().
void Cgsm::assignInterfaceBoundaryConditions | ( | int | current, |
real | t, | ||
real | dt | ||
) |
Referenced by advance().
int Cgsm::assignParabolicInitialConditions | ( | int | gfIndex | ) |
Assign "parabolic" initial conditions.
This function assigns the solution at t=0. It may also initialize the solution at previous times.
gfIndex | (input) : assign gf[gfIndex].u |
References c1, c2, DomainSolver::cg, Parameters::dbase, DomainSolver::debug(), FOR_3D, getIndex(), DomainSolver::gf, grid, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, lambda, lambdaGrid, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, PARABOLIC, DomainSolver::parameters, DomainSolver::rho(), GridFunction::t, tc, GridFunction::u, u, U, uc, uLocal, vc, wc, x, and X.
Referenced by assignInitialConditions().
int Cgsm::assignSpecialInitialConditions | ( | int | gfIndex, |
const EvaluationOptionsEnum | evalOption | ||
) |
Assign "special" initial conditions.
This function assigns the solution at t=0. It may also initialize the solution at previous times.
gfIndex | (input) : assign gf[gfIndex].u |
evalOption | (input) : computeInitialConditions or computeErrors |
References a, a0, all, assert(), assignStress, assignVelocities, c1, cb1, cb2, DomainSolver::cg, cOmega, computeErrors, computeInitialConditions, cost, cp, cPhi, cr, cs, data, Parameters::dbase, DomainSolver::debug(), ERR, FOR_3D, getIndex(), DomainSolver::gf, grid, h, h2, h3, h4, SmParameters::hemp, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, k, kappa, kappa2, kappa3, kappa4, lambda, lambdaGrid, m, m1, m2, mg, mStart, mu, muGrid, n, nk, np, ns, DomainSolver::numberOfComponents(), ok, omega, OV_ABORT(), DomainSolver::p(), DomainSolver::parameters, pc, period, printF(), DomainSolver::printP(), DomainSolver::px(), r, rad, DomainSolver::rho(), rx, rxt, ry, ryt, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, sint, GridFunction::t, tc, trd, twd, GridFunction::u, u, U, U0, U0T, U0X, U0Y, U1, U2, uc, uLocal, V1, v1c, V2, v2c, v3c, VB2, VB2X, vc, vcenter, vibrationClass, W1, W2, wc, x, X, xcenter, xp1, xShift, ycenter, ySurf, z, and zcenter.
Referenced by assignInitialConditions(), and getErrors().
int Cgsm::assignTwilightZoneInitialConditions | ( | int | gfIndex | ) |
Assign twilight zone initial conditions.
This function assigns the solution at t=0. It may also initialize the solution at previous times.
gfIndex | (input) : assign gf[gfIndex].u |
References assert(), c, c1, c2, DomainSolver::cg, Parameters::dbase, DomainSolver::debug(), e, FOR_3D, getIndex(), DomainSolver::gf, grid, i1, I1, i2, I2, i3, I3, includeGhost, isRectangular, lambda, lambdaGrid, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, DomainSolver::parameters, DomainSolver::rho(), GridFunction::t, tc, tz, GridFunction::u, u, U, uc, uLocal, vc, wc, x, and X.
Referenced by assignInitialConditions().
|
protectedvirtual |
Build the dialog that shows the various forcing options.
dialog | (input) : graphics dialog to use. |
Reimplemented from DomainSolver.
References assert(), Parameters::dbase, forcingOption, gaussianChargeSourceParameters, gaussianSourceParameters, normalPlaneMaterialInterface, numberLinesForPML, omega, DomainSolver::parameters, pmlLayerStrength, pmlPower, slowStartInterval, and x0PlaneMaterialInterface.
|
protectedvirtual |
Build the dialog that shows the various general options.
dialog | (input) : graphics dialog to use. |
Reimplemented from DomainSolver.
References assert(), DomainSolver::cg, Parameters::checkForFloatingPointErrors, Parameters::dbase, and DomainSolver::parameters.
|
protected |
Build the input-output options dialog.
dialog | (input) : graphics dialog to use. |
References assert(), Parameters::dbase, DomainSolver::debug(), elementType, frequencyToSaveProbes, DomainSolver::parameters, and probeFileName.
|
protected |
References artificialDissipation, and assert().
Referenced by plot().
|
protectedvirtual |
Build the plot options dialog.
dialog | (input) : graphics dialog to use. |
Reimplemented from DomainSolver.
References assert(), checkErrors, compareToReferenceShowFile, computeEnergy, Parameters::dbase, dScale, nameOfReferenceShowFile, DomainSolver::parameters, plotDissipation, plotDivergence, plotErrors, plotScatteredField, plotStress, plotTotalField, plotVelocity, plotVorticity, and radiusForCheckingErrors.
Referenced by plot().
|
virtual |
Build the run time dialog. This dialog appears while a Domain solver is time stepping.
Reimplemented from DomainSolver.
References assert(), Parameters::dbase, DomainSolver::debug(), getAugmentedSolution(), n, nc, DomainSolver::numberOfPushButtons, DomainSolver::numberOfTextBoxes, DomainSolver::parameters, runTimeDialog, u, and v.
Referenced by plot().
|
protectedvirtual |
: Build the time stepping options dialog.
Reimplemented from DomainSolver.
References artificialDissipation, artificialDissipationInterval, assert(), Parameters::dbase, materialInterfaceOption, numberOfIterationsForInterfaceBC, omegaForInterfaceIteration, orderOfArtificialDissipation, DomainSolver::parameters, useConservative, and useVariableDissipation.
int Cgsm::buildVariableDissipation | ( | ) |
References DomainSolver::cg, getIndex(), grid, I1, I2, i3, I3, mask, mg, omega, printF(), R, v, and variableDissipation.
Referenced by setupGridFunctions().
void Cgsm::checkArrays | ( | const aString & | label | ) |
References printF(), and totalNumberOfArrays.
Referenced by advance(), advanceFOS(), advanceMethodOfLines(), and advanceSOS().
void Cgsm::checkDisplacementAndStress | ( | const int | current, |
real | t | ||
) |
For the FOS, determine difference between the stress components s11c, .. and the stress computed from the displacement.
: This function can be used, for example, to check the consistency of the initial conditions for the FOS.
References all, assignStress, assignVelocities, GridFunction::cg, DomainSolver::cg, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), display(), E, FOR_3D, forcingOption, getIndex(), DomainSolver::gf, grid, i, i1, I1, i2, I2, i3, I3, includeGhost, lambda, lambdaGrid, mask, MASK, maskDim0, maskDim1, maskLocal, maskp, md1, md2, mg, mu, muGrid, DomainSolver::numberOfComponents(), ok, DomainSolver::parameters, pc, printF(), DomainSolver::rho(), S, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, tc, twilightZoneForcing, GridFunction::u, u, U, uc, uLocal, useConservative, ux, uy, uz, V, v1c, v2c, v3c, vc, and wc.
Referenced by setup().
void Cgsm::computeDissipation | ( | int | current, |
real | t, | ||
real | dt | ||
) |
References all, artificialDissipation, assert(), c, DomainSolver::cg, cgdissipation, cgop, DomainSolver::current, d, Parameters::dbase, dirichlet, DomainSolver::dt, FD4_2D, FD4_3D, getIndex(), DomainSolver::gf, grid, I1, I2, I3, lambdaGrid, mask, mg, muGrid, DomainSolver::numberOfComponents(), numberOfTimeLevels, operators, orderOfArtificialDissipation, DomainSolver::parameters, tc, GridFunction::u, u, uc, vc, and wc.
Referenced by advanceSOS().
|
virtual |
Reimplemented from DomainSolver.
References assert(), Parameters::dbase, DomainSolver::debug(), DomainSolver::parameters, and printF().
Referenced by solve().
|
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 from DomainSolver.
References DomainSolver::current, DomainSolver::debug(), numberOfStepsTaken, numberOfTimeLevels, outputResultsAfterEachTimeStep(), and printF().
|
virtual |
Interface to the base class function.
Reimplemented from DomainSolver.
References assert(), DomainSolver::current, and DomainSolver::gf.
Referenced by buildRunTimeDialog(), plot(), and saveShow().
realCompositeGridFunction & Cgsm::getAugmentedSolution | ( | int | current, |
realCompositeGridFunction & | v, | ||
const real | t | ||
) |
Create a grid function that holds all the things we can plot.
References all, artificialDissipation, assert(), assign(), DomainSolver::cg, cgdissipation, cgerrp, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), divUMax, DomainSolver::dt, ec, DomainSolver::getAmrErrorFunction(), getErrors(), getMaxDivAndCurl(), getVelocityAndStress(), DomainSolver::gf, grid, Parameters::isAdaptiveGridProblem(), mg, N(), n, DomainSolver::numberOfComponents(), DomainSolver::parameters, plotDissipation, plotDivergence, plotErrors, plotStress, plotVelocity, plotVorticity, tc, GridFunction::u, u, uc, uLocal, useVariableDissipation, v, variableDissipation, vc, and wc.
bool Cgsm::getBoundsForPML | ( | MappedGrid & | mg, |
Index | Iv[3], | ||
int | extra = 0 |
||
) |
References SmParameters::abcPML, axis, and numberLinesForPML.
Referenced by advanceFOS(), advanceSOS(), assignBoundaryConditionsSOS(), getErrors(), getMaxDivAndCurl(), and getVelocityAndStress().
void Cgsm::getEnergy | ( | int | current, |
real | t, | ||
real | dt | ||
) |
References c, c1, c2, DomainSolver::cg, computeEnergy, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), display(), DomainSolver::dt, getIndex(), DomainSolver::gf, grid, I1, I2, I3, initialTotalEnergy, J1, J2, J3, lambda, lambdaGrid, mask, mg, mu, muGrid, myid, DomainSolver::numberOfComponents(), numberOfTimeLevels, DomainSolver::output(), DomainSolver::parameters, printF(), DomainSolver::rho(), tc, totalEnergy, GridFunction::u, u, uc, vc, and wc.
Referenced by outputResults().
void Cgsm::getErrors | ( | int | current, |
real | t, | ||
real | dt, | ||
const aString & | label = nullString |
||
) |
Determine the errors.
References all, annulusEigenfunctionInitialCondition, annulusEigenfunctionKnownSolution, assert(), assignAnnulusEigenfunction(), assignSpecialInitialConditions(), assignStress, assignVelocities, c, c1, c2, DomainSolver::cg, cgerrp, checkErrors, compareToReferenceShowFile, computeErrors, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), display(), e, ERR, FOR_3D, forcingOption, gaussianIntegralInitialCondition, gaussianPlaneWave, getBoundsForPML(), getIndex(), Parameters::getKnownSolution(), DomainSolver::gf, grid, hempInitialCondition, i1, I1, i2, I2, i3, I3, initialConditionOption, isRectangular, J1, J2, J3, knownSolutionInitialCondition, knownSolutionOption, lambda, lambdaGrid, lpNorm(), mask, maskDim0, maskDim1, maskLocal, maskp, maximumError, maxNorm(), md1, md2, mg, mu, muGrid, n, nameOfReferenceShowFile, DomainSolver::numberOfComponents(), numberOfSequences, numberOfTimeLevels, ok, DomainSolver::output(), DomainSolver::parameters, planeMaterialInterfaceInitialCondition, planeWaveBoundaryForcing, planeWaveInitialCondition, planeWaveScatteredFieldInitialCondition, pmlErrorOffset, printF(), DomainSolver::printP(), referenceShowFileReader, DomainSolver::rho(), s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, solutionNorm, specialInitialCondition, squareEigenfunctionInitialCondition, tc, twilightZoneForcing, twilightZoneInitialCondition, tz, GridFunction::u, u, U, uc, uLocal, ur, v1c, v2c, v3c, vc, wc, x, and X.
Referenced by advance(), advanceFOS(), advanceMethodOfLines(), advanceSOS(), getAugmentedSolution(), plot(), printTimeStepInfo(), solve(), and updateForNewTimeStep().
int Cgsm::getForcing | ( | int | current, |
int | grid, | ||
realArray & | u, | ||
real | t, | ||
real | dt, | ||
int | option = 0 |
||
) |
References amplitude, assert(), c1, c2, DomainSolver::cg, DomainSolver::computeForcing, DomainSolver::current, D(), Parameters::dbase, DomainSolver::debug(), e, f, FOR_3D, forcingOption, gaussianChargeSource, gaussianChargeSourceParameters, gaussianSource, gaussianSourceParameters, getIndex(), DomainSolver::gf, grid, i1, I1, i2, I2, i3, I3, isRectangular, lambda, lambdaGrid, mask, maskLocal, mg, mu, muGrid, DomainSolver::numberOfComponents(), numberOfTimeLevels, ok, omega, OV_ABORT(), DomainSolver::p(), DomainSolver::parameters, DomainSolver::rho(), rx, tc, twilightZoneForcing, tz, GridFunction::u, u, U, uc, uLocal, userDefinedForcing(), userDefinedForcingOption, utt, ux, uxx, uy, uz, vc, wc, x, X, and xp1.
Referenced by advanceFOS(), and advanceSOS().
|
protectedvirtual |
: Look for a forcing option in the string "answer"
answer | (input) : check this command |
Reimplemented from DomainSolver.
References Parameters::dbase, forcingOption, gaussianChargeSource, gaussianChargeSourceParameters, gaussianSource, gaussianSourceParameters, maxNumberOfGaussianChargeSources, noForcing, normalPlaneMaterialInterface, numberLinesForPML, numberOfGaussianChargeSources, omega, DomainSolver::parameters, planeWaveBoundaryForcing, plotErrors, pmlLayerStrength, pmlPower, Parameters::polynomial, printF(), Parameters::pulse, setBoundaryCondition(), setupUserDefinedForcing(), slowStartInterval, Parameters::trigonometric, twilightZoneForcing, userDefinedForcingOption, and x0PlaneMaterialInterface.
|
protectedvirtual |
: Look for a general option in the string "answer"
answer | (input) : check this command |
Reimplemented from DomainSolver.
References DomainSolver::cg, Parameters::checkForFloatingPointErrors, Parameters::dbase, DomainSolver::getName(), grid, DomainSolver::implicitTimeStepSolverParameters, n, DomainSolver::parameters, DomainSolver::pressureSolverParameters, and printF().
|
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 from DomainSolver.
References a, annulusEigenfunctionInitialCondition, annulusEigenfunctionKnownSolution, assert(), assignInitialConditions(), betaGaussianPlaneWave, cr, DomainSolver::current, data, Parameters::dbase, DomainSolver::debug(), defaultInitialCondition, forcingOption, gaussianIntegralInitialCondition, gaussianPlaneWave, gaussianPulseInitialCondition, gaussianPulseParameters, DomainSolver::getInitialConditions(), getRayleighSpeed(), DomainSolver::gf, grid, SmParameters::hemp, hempInitialCondition, I1, I2, I3, if(), initialConditionOption, initialConditionParameters, k, knownSolutionInitialCondition, knownSolutionOption, kx, ky, kz, lambda, m, maxNumberOfGaussianPulses, mu, n, DomainSolver::name, nk, noForcing, Parameters::noInitialConditionChosen, np, ns, DomainSolver::numberOfComponents(), numberOfGaussianPulses, omega, OV_ABORT(), DomainSolver::p(), parabolicInitialCondition, DomainSolver::parameters, period, planeMaterialInterfaceInitialCondition, planeWaveInitialCondition, planeWaveScatteredFieldInitialCondition, Parameters::polynomial, printF(), Parameters::pulse, rad, DomainSolver::rho(), setupUserDefinedInitialConditions(), specialInitialCondition, squareEigenfunctionInitialCondition, trd, Parameters::trigonometric, twd, twilightZoneForcing, twilightZoneInitialCondition, GridFunction::u, u, userDefinedInitialCondition, vibrationClass, x0GaussianPlaneWave, x2, xShift, y0GaussianPlaneWave, z0GaussianPlaneWave, and zeroInitialCondition.
|
protected |
: Look for an input/output option in the string "answer"
answer | (input) : check this command |
References a, assert(), axis, DomainSolver::cg, Parameters::dbase, DomainSolver::debug(), elementType, frequencyToSaveProbes, grid, i, i1, i2, i3, j, mask, mg, ok, DomainSolver::parameters, printF(), probeFileName, probeGridLocation, probes, quadrilaterals, r, structuredElements, triangles, and x.
|
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 from DomainSolver.
References axis, GridFaceDescriptor::axis, Parameters::dbase, DomainSolver::debug(), SmParameters::godunov, GridFaceDescriptor::grid, grid, Parameters::heatFluxInterface, Parameters::heatFluxInterfaceData, OV_ABORT(), DomainSolver::parameters, Parameters::positionInterfaceData, DomainSolver::printP(), side, GridFaceDescriptor::side, Parameters::tractionInterface, Parameters::tractionInterfaceData, Parameters::tractionRateInterfaceData, and Parameters::velocityInterfaceData.
void Cgsm::getLocalBoundsAndBoundaryConditions | ( | const realMappedGridFunction & | a, |
IntegerArray & | gidLocal, | ||
IntegerArray & | dimensionLocal, | ||
IntegerArray & | bcLocal | ||
) |
References assert(), axis, dimension, and mg.
Referenced by assignBoundaryConditionsFOS(), and assignBoundaryConditionsSOS().
void Cgsm::getMaxDivAndCurl | ( | const int | current, |
real | t, | ||
realCompositeGridFunction * | pu = NULL , |
||
int | component = 0 , |
||
realCompositeGridFunction * | pvor = NULL , |
||
int | vorComponent = 0 , |
||
realCompositeGridFunction * | pDensity = NULL , |
||
int | rhoComponent = 0 , |
||
bool | computeMaxNorms = true |
||
) |
References all, c, DomainSolver::cg, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), dir, display(), DIV, divUMax, E, FOR_3, FOR_3D, getBoundsForPML(), getIndex(), DomainSolver::gf, gradUMax, grid, SmParameters::hemp, i1, I1, i2, I2, i3, I3, includeGhost, mask, MASK, maskDim0, maskDim1, maskLocal, maskp, md1, md2, mg, myid, DomainSolver::numberOfComponents(), ok, DomainSolver::parameters, printF(), solutionNorm, tc, GridFunction::u, u, U, uc, UD, uLocal, useConservative, V, vc, VOR, vorUMax, and wc.
Referenced by getAugmentedSolution(), and plot().
int Cgsm::getMethodName | ( | aString & | methodName | ) |
: Return the name used in plot titles and the show file titles.
References SmParameters::conservative, Parameters::dbase, SmParameters::godunov, SmParameters::hemp, SmParameters::nonConservative, DomainSolver::parameters, and useConservative.
Referenced by plot(), and saveShowFileComments().
|
protectedvirtual |
: Look for a plot option in the string "answer"
answer | (input) : check this command |
Reimplemented from DomainSolver.
References DomainSolver::cg, checkErrors, compareToReferenceShowFile, computeEnergy, SmParameters::conservative, Parameters::dbase, dScale, nameOfReferenceShowFile, SmParameters::nonConservative, DomainSolver::parameters, plotDissipation, plotDivergence, plotErrors, plotScatteredField, plotStress, plotTotalField, plotVelocity, plotVorticity, radiusForCheckingErrors, and Parameters::setShowVariable().
|
virtual |
Reimplemented from DomainSolver.
References a11, SmParameters::adamsBashforth2, SmParameters::adamsPredictorCorrector2, SmParameters::adamsPredictorCorrector4, advanceFOS(), artificialDissipation, assert(), c, DomainSolver::cg, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), deltaT, dr1, DomainSolver::dt, dx, dxMinMax, FOR_3D, SmParameters::forwardEuler, getIndex(), SmParameters::godunov, grid, SmParameters::hemp, i1, I1, i2, I2, i3, I3, DomainSolver::imaginaryPartOfEigenvalue, SmParameters::improvedEuler, includeGhost, Parameters::isAdaptiveGridProblem(), lambda, lambdaGrid, SmParameters::linearElasticity, mask, MASK, maskDim0, maskDim1, maskLocal, maskp, materialFormat, md1, md2, mg, SmParameters::modifiedEquationTimeStepping, mu, muGrid, ok, orderOfArtificialDissipation, DomainSolver::parameters, GridMaterialProperties::piecewiseConstantMaterialProperties, printF(), DomainSolver::printP(), DomainSolver::realPartOfEigenvalue, DomainSolver::rho(), RX, rx, rxDotRx, and GridFunction::t.
Referenced by solve().
|
protectedvirtual |
Reimplemented from DomainSolver.
References SmParameters::adamsBashforth2, Parameters::adamsBashforth2, SmParameters::adamsBashforthSymmetricThirdOrder, SmParameters::adamsPredictorCorrector2, Parameters::adamsPredictorCorrector2, SmParameters::adamsPredictorCorrector4, Parameters::adamsPredictorCorrector4, DomainSolver::applyFilter(), artificialDissipation, artificialDissipationInterval, assert(), DomainSolver::cg, Parameters::dbase, SmParameters::defaultTimeStepping, divergenceDamping, GridFunctionFilter::explicitFilter, GridFunctionFilter::filterCoefficient, GridFunctionFilter::filterFrequency, GridFunctionFilter::filterType, SmParameters::forwardEuler, SmParameters::improvedEuler, materialInterfaceOption, SmParameters::modifiedEquationTimeStepping, GridFunctionFilter::numberOfFilterIterations, numberOfIterationsForInterfaceBC, omegaForInterfaceIteration, orderOfArtificialDissipation, GridFunctionFilter::orderOfFilter, DomainSolver::parameters, printF(), SmParameters::rungeKuttaFourthOrder, SmParameters::stoermerTimeStepping, GridFunctionFilter::update(), useConservative, and useVariableDissipation.
|
virtual |
: compute u.t or u.tt for a method of lines time-stepper
Reimplemented from DomainSolver.
References deltaT, DomainSolver::dt, getUtFOS(), getUtSOS(), and DomainSolver::parameters.
Referenced by advanceMethodOfLines().
void Cgsm::getUtFOS | ( | GridFunction & | cgf, |
const real & | t, | ||
RealCompositeGridFunction & | ut, | ||
real | tForce | ||
) |
Compute du/dt for the first-order-system.
References advanceFOS(), assert(), deltaT, DomainSolver::dt, DomainSolver::gf, i, and DomainSolver::numberOfGridFunctionsToUse.
Referenced by getUt().
void Cgsm::getUtSOS | ( | GridFunction & | cgf, |
const real & | t, | ||
RealCompositeGridFunction & | ut, | ||
real | tForce | ||
) |
Compute u.tt for the second-order-system.
References advanceSOS(), assert(), deltaT, DomainSolver::dt, DomainSolver::gf, i, and DomainSolver::numberOfGridFunctionsToUse.
Referenced by getUt().
void Cgsm::getVelocityAndStress | ( | const int | current, |
real | t, | ||
realCompositeGridFunction * | pv = NULL , |
||
int | vComponent = 0 , |
||
realCompositeGridFunction * | ps = NULL , |
||
int | sComponent = 0 , |
||
bool | computeMaxNorms = true |
||
) |
Compute the velocity and stress by differencing the displacements.
/pv,vComponent (input) : save the velocity in 'vComponent' if this pointer is non-NULL. /ps,sComponent (input) : save the stress starting at 'sComponent' if this pointer is non-NULL.
References all, DomainSolver::cg, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), deltaT, display(), E, FOR_3D, getBoundsForPML(), getIndex(), DomainSolver::gf, grid, i1, I1, i2, I2, i3, I3, includeGhost, lambda, lambdaGrid, mask, MASK, maskDim0, maskDim1, maskLocal, maskp, md1, md2, mg, mu, muGrid, DomainSolver::numberOfComponents(), numberOfTimeLevels, ok, OV_ABORT(), DomainSolver::parameters, printF(), DomainSolver::rho(), s, S, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, tc, GridFunction::u, u, U, uc, uLocal, UP, useConservative, ux, uy, uz, v, V, vc, and wc.
Referenced by getAugmentedSolution().
void Cgsm::initializeInterfaces | ( | ) |
References DomainSolver::cg, Parameters::dbase, DomainSolver::debug(), I1, I2, I3, SmParameters::interfaceBoundaryCondition, interfaceInfo, J1, J2, J3, DomainSolver::parameters, and printF().
void Cgsm::initializeKnownSolution | ( | ) |
int Cgsm::initializeRadiationBoundaryConditions | ( | ) |
References axis, DomainSolver::cg, grid, mg, printF(), radbcAxis, radbcGrid, radbcSide, SmParameters::rbcNonLocal, and side.
Referenced by setParametersInteractively().
|
virtual |
Initialize the time stepping (a time sub-step function).
t0 | (input) : current time |
dt0 | (input) : current time step |
Reimplemented from DomainSolver.
References applyBoundaryConditions(), assert(), DomainSolver::current, DomainSolver::debug(), DomainSolver::gf, outputResultsAfterEachTimeStep(), printF(), and updateForNewTimeStep().
|
virtual |
Reimplemented from DomainSolver.
int Cgsm::outputResults | ( | int | current, |
real | t, | ||
real | dt | ||
) |
References c, cc, DomainSolver::cg, computeEnergy, Parameters::dbase, divUMax, getEnergy(), gradUMax, initialTotalEnergy, maximumError, myid, DomainSolver::numberOfComponents(), DomainSolver::output(), DomainSolver::parameters, DomainSolver::printP(), s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, saveSequenceInfo(), solutionNorm, tc, totalEnergy, uc, v1c, v2c, v3c, vc, and wc.
Referenced by printTimeStepInfo().
int Cgsm::outputResultsAfterEachTimeStep | ( | int | current, |
real | t, | ||
real | dt, | ||
int | stepNumber | ||
) |
References assert(), DomainSolver::cg, DomainSolver::current, Parameters::dbase, frequencyToSaveProbes, DomainSolver::gf, grid, i, i1, i2, i3, myid, DomainSolver::outputProbes(), DomainSolver::parameters, printF(), probeFile, probeFileName, probeGridLocation, probes, GridFunction::u, u, and DomainSolver::userDefinedOutput().
Referenced by endTimeStep(), initializeTimeStepping(), and solve().
int Cgsm::plot | ( | int | current, |
real | t, | ||
real | dt | ||
) |
References SmParameters::adamsBashforth2, SmParameters::adamsPredictorCorrector2, SmParameters::adamsPredictorCorrector4, artificialDissipation, assert(), buildParametersDialog(), buildPlotOptionsDialog(), buildRunTimeDialog(), DomainSolver::cg, checkErrors, compareToReferenceShowFile, computeEnergy, SmParameters::conservative, Parameters::dbase, DomainSolver::debug(), SmParameters::defaultTimeStepping, divergenceDamping, divUMax, dScale, forcingOption, SmParameters::forwardEuler, getAugmentedSolution(), getErrors(), DomainSolver::getMaterialProperties(), getMaxDivAndCurl(), getMethodName(), DomainSolver::gf, SmParameters::godunov, gradUMax, SmParameters::hemp, SmParameters::improvedEuler, lambda, SmParameters::modifiedEquationTimeStepping, movieFileName, movieFrame, mu, n, DomainSolver::name, nc, SmParameters::nonConservative, orderOfArtificialDissipation, GridFunctionFilter::orderOfFilter, DomainSolver::parameters, plotChoices, plotDissipation, plotDivergence, plotErrors, plotOptions, plotScatteredField, plotStress, plotTotalField, plotVelocity, plotVorticity, Parameters::polynomial, pParametersDialog, pPlotOptionsDialog, printF(), radiusForCheckingErrors, SmParameters::rungeKuttaFourthOrder, runTimeDialog, DomainSolver::setSensitivity(), SmParameters::stoermerTimeStepping, twilightZoneForcing, u, uc, v, vc, and vorUMax.
Referenced by solve().
|
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 from DomainSolver.
References DomainSolver::cg, cgdissipation, cgerrp, cgop, Parameters::dbase, DomainSolver::debug(), DomainSolver::getGridInfo(), DomainSolver::gf, grid, i, DomainSolver::numberOfComponents(), numberOfTimeLevels, DomainSolver::parameters, DomainSolver::sizeOf(), and sizeOfLocalArraysForAdvance.
|
virtual |
Print time-step information about the current solution in a nicely formatted way.
step | (input) : current step number. |
t | (input) : time. |
cpuTime | (input) : current cpu time. |
Reimplemented from DomainSolver.
References DomainSolver::current, deltaT, getErrors(), and outputResults().
Referenced by solve().
int Cgsm::project | ( | int | numberOfStepsTaken, |
int | current, | ||
real | t, | ||
real | dt | ||
) |
|
protected |
References all, Parameters::dbase, n, numberOfSequences, DomainSolver::parameters, R, sequence, sequenceCount, and timeSequence.
Referenced by outputResults().
|
protectedvirtual |
Save sequence info to the show file.
Reimplemented from DomainSolver.
References cgerrp, computeEnergy, Parameters::dbase, i, N(), n, DomainSolver::name, DomainSolver::numberOfComponents(), numberOfSequences, DomainSolver::parameters, sequence, sequenceCount, tc, timeSequence, uc, vc, and wc.
Referenced by saveShow(), and solve().
|
virtual |
Save a solution in the show file.
gf0 | (input) : save this grid function. |
Reimplemented from DomainSolver.
References assert(), DomainSolver::cg, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), deltaT, DomainSolver::dt, getAugmentedSolution(), i, Parameters::isMovingGridProblem(), Parameters::isSteadyStateSolver(), myid, DomainSolver::numberOfComponents(), DomainSolver::numberSavedToShowFile, DomainSolver::parameters, printF(), Parameters::saveParametersToShowFile(), saveSequencesToShowFile(), saveShowFileComments(), MovingGrids::saveToShowFile(), showFileFrameForGrid, GridFunction::t, tc, u, uc, useConservative, v, vc, and wc.
Referenced by solve().
|
virtual |
: Set the titles and labels that go on the show file output
Reimplemented from DomainSolver.
References Parameters::dbase, getMethodName(), i, and DomainSolver::parameters.
Referenced by saveShow().
int Cgsm::setBoundaryCondition | ( | aString & | answer, |
IntegerArray & | originalBoundaryCondition | ||
) |
References axis, SmParameters::bcName, boundaryCondition(), DomainSolver::cg, Parameters::dbase, DomainSolver::getName(), grid, i, SmParameters::numberOfBCNames, DomainSolver::parameters, printF(), S, and side.
Referenced by getForcingOption().
int Cgsm::setParametersInteractively | ( | ) |
Set parameters, boundary conditions, forcings, initial conditions etc. that define the problem.
References initializeRadiationBoundaryConditions(), and DomainSolver::setParametersInteractively().
Referenced by main().
|
virtual |
Set the plot titles for interactive plotting.
t | (input) : current time |
dt | (input) : current time step |
Reimplemented from DomainSolver.
References Parameters::dbase, and DomainSolver::parameters.
|
protectedvirtual |
The function is called after the parameters have been assigned (called by setParametersInteractively). 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 from DomainSolver.
References Parameters::bcVariesInSpace(), DomainSolver::buildAmrGridsForInitialConditions(), DomainSolver::cg, cgop, checkDisplacementAndStress(), DomainSolver::current, Parameters::dbase, DomainSolver::gf, DomainSolver::imaginaryPartOfEigenvalue, n, numberOfTimeLevels, DomainSolver::outputHeader(), DomainSolver::parameters, DomainSolver::realPartOfEigenvalue, setupGridFunctions(), DomainSolver::setVariableMaterialProperties(), DomainSolver::timeIndependentBoundaryConditions(), and GridFunction::u.
|
virtual |
Setup and initialization. Build the solution fields.
Reimplemented from DomainSolver.
References SmParameters::adamsBashforth2, SmParameters::adamsPredictorCorrector2, SmParameters::adamsPredictorCorrector4, all, annulusEigenfunctionInitialCondition, assert(), buildVariableDissipation(), c, GridFunction::cg, DomainSolver::cg, cgop, computeEnergy, SmParameters::conservative, DomainSolver::current, cylinderAxisEnd, cylinderAxisStart, Parameters::dbase, dx, dxMinMax, DomainSolver::fn, SmParameters::forwardEuler, DomainSolver::gf, SmParameters::hemp, SmParameters::improvedEuler, initialConditionOption, isRectangular, SmParameters::linearElasticity, m, mg, SmParameters::modifiedEquationTimeStepping, n, SmParameters::nonConservative, DomainSolver::numberOfComponents(), DomainSolver::numberOfExtraFunctionsToUse, DomainSolver::numberOfGridFunctionsToUse, numberOfSequences, numberOfTimeLevels, DomainSolver::parameters, printF(), tc, GridFunction::u, u, uc, useConservative, useVariableDissipation, usingPMLBoundaryConditions(), vc, wc, and xab.
Referenced by setup().
int Cgsm::setupGrids | ( | ) |
Setup and initialization. Build the grid and solution fields.
References DomainSolver::cg, Parameters::dbase, dw, grid, kz, lambda, lambdaGrid, mg, mu, muGrid, orderOfArtificialDissipation, DomainSolver::parameters, printF(), R, useConservative, and verifyUnstructuredConnectivity().
Referenced by Cgsm().
|
virtual |
Setup the PDE to be solved.
This function is called at the very start in order to setup the equations to be solved etc.
Reimplemented from DomainSolver.
References assert(), DomainSolver::cg, SmParameters::conservative, GridMaterialProperties::constantMaterialProperties, DomainSolver::current, Parameters::dbase, Parameters::fixedReferenceFrame, DomainSolver::getOriginalBoundaryConditions(), DomainSolver::gf, SmParameters::godunov, SmParameters::hemp, i, SmParameters::improvedEuler, SmParameters::modifiedEquationTimeStepping, DomainSolver::name, SmParameters::nonConservative, DomainSolver::parameters, SmParameters::PDEModelName, Parameters::pdeName, DomainSolver::pdeName, SmParameters::PDEVariationName, printF(), DomainSolver::readRestartFile(), Parameters::rigidBodyReferenceFrame, Parameters::specifiedReferenceFrame, GridFunction::u, u, useConservative, and GridMaterialProperties::variableMaterialProperties.
|
virtual |
Reimplemented from DomainSolver.
References Parameters::dbase, m, n, noForcing, DomainSolver::numberOfComponents(), omega, DomainSolver::parameters, printF(), tc, trd, uc, vc, and x2.
Referenced by getForcingOption().
|
virtual |
Reimplemented from DomainSolver.
References Parameters::dbase, DomainSolver::numberOfComponents(), DomainSolver::parameters, printF(), tc, uc, and vc.
Referenced by getInitialConditions().
void Cgsm::smoothDivergence | ( | realCompositeGridFunction & | u, |
const int | numberOfSmooths | ||
) |
|
virtual |
Solve the equations.
Reimplemented from DomainSolver.
References SmParameters::adamsBashforth2, SmParameters::adamsPredictorCorrector2, SmParameters::adamsPredictorCorrector4, advance(), advanceMethodOfLines(), all, applyBoundaryConditions(), assert(), DomainSolver::cg, cgerrp, checkErrors, computeNumberOfStepsAndAdjustTheTimeStep(), DomainSolver::current, Parameters::dbase, DomainSolver::debug(), SmParameters::defaultTimeStepping, deltaT, DomainSolver::dt, dtb2, dx, SmParameters::forwardEuler, frequencyToSaveInShowFile, get< int >(), getErrors(), getTimeStep(), DomainSolver::gf, SmParameters::hemp, SmParameters::improvedEuler, init, Parameters::isAdaptiveGridProblem(), SmParameters::linearElasticity, SmParameters::modifiedEquationTimeStepping, n, DomainSolver::numberOfComponents(), numberOfStepsTaken, numberOfTimeLevels, outputResultsAfterEachTimeStep(), DomainSolver::parameters, plot(), plotOptions, printF(), DomainSolver::printStatistics(), printTimeStepInfo(), saveSequencesToShowFile(), saveShow(), tc, u, uc, updateForNewTimeStep(), vc, and wc.
Referenced by main().
|
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. |
Reimplemented from DomainSolver.
References DomainSolver::current, DomainSolver::debug(), AdvanceOptions::gridChanges, AdvanceOptions::noChangeToGrid, AdvanceOptions::numberOfCorrectorSteps, numberOfTimeLevels, and printF().
|
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 from DomainSolver.
References advance(), applyBoundaryConditions(), AdvanceOptions::applyBoundaryConditionsOnly, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), deltaT, DomainSolver::dt, numberOfTimeLevels, DomainSolver::parameters, DomainSolver::printP(), AdvanceOptions::takeStepAndApplyBoundaryConditions, AdvanceOptions::takeStepButDoNotApplyBoundaryConditions, and AdvanceOptions::takeTimeStepOption.
|
virtual |
Reimplemented from DomainSolver.
References assert(), Parameters::dbase, SmParameters::hemp, DomainSolver::parameters, and DomainSolver::updateForAdaptiveGrids().
|
protected |
Update geometry arrays, solution at old times etc. after the time step has changed.
References assert(), assignInitialConditions(), SmParameters::conservative, DomainSolver::current, Parameters::dbase, DomainSolver::debug(), DomainSolver::dt, getErrors(), DomainSolver::gf, SmParameters::linearElasticity, SmParameters::nonConservative, numberOfTimeLevels, DomainSolver::parameters, printF(), and GridFunction::t.
Referenced by initializeTimeStepping(), and solve().
|
virtual |
Update geometry arrays when the grid has changed (called by adaptGrids for example).
cgf | (input) : |
Reimplemented from DomainSolver.
References GridFunction::cg, DomainSolver::cg, DomainSolver::debug(), dxMinMax, DomainSolver::imaginaryPartOfEigenvalue, DomainSolver::printP(), DomainSolver::realPartOfEigenvalue, and DomainSolver::updateGeometryArrays().
int Cgsm::updateProjectionEquation | ( | ) |
|
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. |
u | (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 from DomainSolver.
References a, assert(), axis, Parameters::dbase, display(), FOR_3D, fx, Parameters::getBoundaryData(), Parameters::getUserBoundaryConditionParameters(), grid, Parameters::gridIsMoving(), i1, i2, i3, includeGhost, mg, normal, ok, omega, DomainSolver::p(), DomainSolver::parameters, pc, printF(), r, rad, s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, scale, side, tc, theta, tz, GridFunction::u, u, uc, uLocal, Parameters::userBcType(), v1c, v2c, v3c, vc, wc, and x.
Referenced by applyBoundaryConditions().
|
virtual |
References cost, Parameters::dbase, f, FOR_3D, getIndex(), grid, i1, I1, i2, I2, i3, I3, lambda, lambdaGrid, m, mg, mu, muGrid, n, noForcing, DomainSolver::numberOfComponents(), ok, omega, DomainSolver::parameters, pc, DomainSolver::rho(), sint, tc, trd, u, uc, vc, wc, x, x2, and y.
Referenced by getForcing().
|
virtual |
This routine is called when Cgsm is finished and can be used to clean up memory.
Reimplemented from DomainSolver.
References Parameters::dbase, and DomainSolver::parameters.
|
virtual |
Reimplemented from DomainSolver.
References assignStress, assignVelocities, c, Parameters::dbase, getIndex(), grid, I1, I2, I3, lambda, mg, mu, DomainSolver::numberOfComponents(), ok, OV_ABORT(), DomainSolver::parameters, printF(), DomainSolver::rho(), s11c, s12c, s13c, s21c, s22c, s23c, s31c, s32c, s33c, U2D, U2DT, U2DX, U2DY, U3D, U3DT, U3DX, U3DY, U3DZ, uc, ux, uy, v1c, v2c, v3c, vc, and wc.
Referenced by assignInitialConditions().
|
virtual |
This routine is called when Cgsm is finished with the initial conditions and can be used to clean up memory.
Reimplemented from DomainSolver.
References Parameters::dbase, DomainSolver::parameters, DomainSolver::printP(), and DomainSolver::userDefinedInitialConditionsCleanup().
bool Cgsm::usingPMLBoundaryConditions | ( | ) | const |
References SmParameters::abcPML, DomainSolver::cg, and grid.
Referenced by setupGridFunctions().
|
protectedvirtual |
Output run-time parameters for the header.
file | (input) : write values to this file. |
Reimplemented from DomainSolver.
References artificialDissipation, assert(), Parameters::dbase, deltaT, DomainSolver::dt, GridFunctionFilter::explicitFilter, GridFunctionFilter::filterCoefficient, GridFunctionFilter::filterFrequency, GridFunctionFilter::filterType, forcingOption, gaussianSource, SmParameters::godunov, m, noForcing, GridFunctionFilter::numberOfFilterIterations, GridFunctionFilter::numberOfFilterStages, orderOfArtificialDissipation, GridFunctionFilter::orderOfFilter, DomainSolver::parameters, SmParameters::PDEVariationName, Parameters::polynomial, Parameters::pulse, Parameters::trigonometric, twilightZoneForcing, userDefinedForcingOption, and DomainSolver::writeParameterSummary().
real Cgsm::artificialDissipation |
int Cgsm::artificialDissipationInterval |
Referenced by buildTimeSteppingDialog(), Cgsm(), and getTimeSteppingOption().
real Cgsm::betaGaussianPlaneWave |
Referenced by Cgsm(), and getInitialConditions().
real Cgsm::c1 |
Referenced by advanceFOS(), advanceSOS(), assignAnnulusEigenfunction(), assignBoundaryConditionsFOS(), assignBoundaryConditionsSOS(), assignGaussianPulseInitialConditions(), assignParabolicInitialConditions(), assignSpecialInitialConditions(), assignTwilightZoneInitialConditions(), Cgsm(), getEnergy(), getErrors(), and getForcing().
real Cgsm::c2 |
Referenced by advanceFOS(), advanceSOS(), assignAnnulusEigenfunction(), assignBoundaryConditionsFOS(), assignBoundaryConditionsSOS(), assignGaussianPulseInitialConditions(), assignParabolicInitialConditions(), assignTwilightZoneInitialConditions(), Cgsm(), getEnergy(), getErrors(), and getForcing().
realCompositeGridFunction* Cgsm::cgdissipation |
Referenced by advanceSOS(), Cgsm(), computeDissipation(), getAugmentedSolution(), printMemoryUsage(), and ~Cgsm().
realCompositeGridFunction* Cgsm::cgerrp |
Referenced by advance(), advanceMethodOfLines(), Cgsm(), getAugmentedSolution(), getErrors(), printMemoryUsage(), saveSequencesToShowFile(), solve(), and ~Cgsm().
CompositeGridOperators* Cgsm::cgop |
Referenced by advance(), advanceMethodOfLines(), Cgsm(), computeDissipation(), printMemoryUsage(), setup(), setupGridFunctions(), and ~Cgsm().
bool Cgsm::checkErrors |
Referenced by advance(), advanceMethodOfLines(), buildPlotOptionsDialog(), Cgsm(), getErrors(), getPlotOption(), plot(), and solve().
bool Cgsm::compareToReferenceShowFile |
Referenced by buildPlotOptionsDialog(), Cgsm(), getErrors(), getPlotOption(), and plot().
bool Cgsm::computeEnergy |
Referenced by buildPlotOptionsDialog(), Cgsm(), getEnergy(), getPlotOption(), outputResults(), plot(), saveSequencesToShowFile(), and setupGridFunctions().
int Cgsm::currentFn |
Referenced by Cgsm().
real Cgsm::cylinderAxisEnd |
Referenced by Cgsm(), and setupGridFunctions().
real Cgsm::cylinderAxisStart |
Referenced by Cgsm(), and setupGridFunctions().
real Cgsm::cylinderRadius |
Referenced by Cgsm().
real Cgsm::deltaT |
Referenced by getTimeStep(), getUt(), getUtFOS(), getUtSOS(), getVelocityAndStress(), printTimeStepInfo(), saveShow(), solve(), takeTimeStep(), and writeParameterSummary().
real Cgsm::divergenceDamping |
Referenced by Cgsm(), getTimeSteppingOption(), and plot().
real Cgsm::divUMax |
Referenced by Cgsm(), getAugmentedSolution(), getMaxDivAndCurl(), outputResults(), and plot().
real Cgsm::dScale |
Referenced by buildPlotOptionsDialog(), Cgsm(), getPlotOption(), and plot().
RealArray Cgsm::dxMinMax |
Referenced by getTimeStep(), setupGridFunctions(), and updateGeometryArrays().
ElementTypeEnum Cgsm::elementType |
Referenced by buildInputOutputOptionsDialog(), Cgsm(), and getInputOutputOption().
ForcingEnum Cgsm::forcingOption |
int Cgsm::frequencyToSaveProbes |
Referenced by buildInputOutputOptionsDialog(), Cgsm(), getInputOutputOption(), and outputResultsAfterEachTimeStep().
real Cgsm::gaussianChargeSourceParameters[maxNumberOfGaussianChargeSources][9] |
Referenced by buildForcingOptionsDialog(), Cgsm(), getForcing(), and getForcingOption().
real Cgsm::gaussianPulseParameters[maxNumberOfGaussianPulses][6] |
Referenced by assignGaussianPulseInitialConditions(), Cgsm(), and getInitialConditions().
real Cgsm::gaussianSourceParameters[5] |
Referenced by buildForcingOptionsDialog(), Cgsm(), getForcing(), and getForcingOption().
real Cgsm::gradUMax |
Referenced by Cgsm(), getMaxDivAndCurl(), outputResults(), and plot().
InitialConditionEnum Cgsm::initialConditionOption |
Referenced by assignInitialConditions(), Cgsm(), getErrors(), getInitialConditions(), and setupGridFunctions().
real Cgsm::initialConditionParameters[10] |
Referenced by assignAnnulusEigenfunction(), and getInitialConditions().
real Cgsm::initialTotalEnergy |
Referenced by Cgsm(), getEnergy(), and outputResults().
std::vector<InterfaceInfo> Cgsm::interfaceInfo |
Referenced by initializeInterfaces().
realCompositeGridFunction* Cgsm::knownSolution |
Referenced by Cgsm(), initializeKnownSolution(), and ~Cgsm().
enum Cgsm::KnownSolutionEnum Cgsm::knownSolutionOption |
Referenced by Cgsm(), getErrors(), and getInitialConditions().
int Cgsm::kx |
Referenced by advanceSOS(), Cgsm(), and getInitialConditions().
int Cgsm::ky |
Referenced by advanceSOS(), Cgsm(), and getInitialConditions().
int Cgsm::kz |
Referenced by advanceSOS(), Cgsm(), getInitialConditions(), and setupGrids().
int Cgsm::materialInterfaceOption |
Referenced by buildTimeSteppingDialog(), Cgsm(), and getTimeSteppingOption().
RealArray Cgsm::maximumError |
Referenced by getErrors(), and outputResults().
aString Cgsm::movieFileName |
Referenced by plot().
int Cgsm::myid |
aString Cgsm::nameOfGridFile |
aString Cgsm::nameOfReferenceShowFile |
Referenced by buildPlotOptionsDialog(), getErrors(), and getPlotOption().
real Cgsm::normalPlaneMaterialInterface[3] |
Referenced by buildForcingOptionsDialog(), Cgsm(), and getForcingOption().
int Cgsm::numberLinesForPML |
Referenced by assignBoundaryConditionsSOS(), buildForcingOptionsDialog(), Cgsm(), getBoundsForPML(), and getForcingOption().
int Cgsm::numberOfFunctions |
Referenced by advanceMethodOfLines(), and Cgsm().
int Cgsm::numberOfGaussianChargeSources |
Referenced by Cgsm(), and getForcingOption().
int Cgsm::numberOfGaussianPulses |
Referenced by Cgsm(), and getInitialConditions().
int Cgsm::numberOfIterationsForInterfaceBC |
Referenced by buildTimeSteppingDialog(), Cgsm(), and getTimeSteppingOption().
int Cgsm::numberOfSequences |
Referenced by Cgsm(), getErrors(), saveSequenceInfo(), saveSequencesToShowFile(), and setupGridFunctions().
int Cgsm::numberOfStepsTaken |
Referenced by advanceFOS(), advanceSOS(), Cgsm(), endTimeStep(), and solve().
int Cgsm::numberOfTimeLevels |
Referenced by addDissipation(), advance(), advanceFOS(), advanceMethodOfLines(), advanceSOS(), applyBoundaryConditions(), assignBoundaryConditionsFOS(), assignBoundaryConditionsSOS(), computeDissipation(), endTimeStep(), getEnergy(), getErrors(), getForcing(), getVelocityAndStress(), printMemoryUsage(), setup(), setupGridFunctions(), solve(), startTimeStep(), takeTimeStep(), and updateForNewTimeStep().
real Cgsm::omegaForInterfaceIteration |
Referenced by buildTimeSteppingDialog(), Cgsm(), and getTimeSteppingOption().
int Cgsm::orderOfArtificialDissipation |
bool Cgsm::plotDissipation |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getPlotOption(), and plot().
bool Cgsm::plotDivergence |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getPlotOption(), and plot().
bool Cgsm::plotErrors |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getForcingOption(), getPlotOption(), and plot().
bool Cgsm::plotRho |
Referenced by Cgsm().
bool Cgsm::plotScatteredField |
Referenced by buildPlotOptionsDialog(), Cgsm(), getPlotOption(), and plot().
bool Cgsm::plotStress |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getPlotOption(), and plot().
bool Cgsm::plotTotalField |
Referenced by buildPlotOptionsDialog(), Cgsm(), getPlotOption(), and plot().
bool Cgsm::plotVelocity |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getPlotOption(), and plot().
bool Cgsm::plotVorticity |
Referenced by buildPlotOptionsDialog(), Cgsm(), getAugmentedSolution(), getPlotOption(), and plot().
int Cgsm::pmlErrorOffset |
Referenced by Cgsm(), and getErrors().
real Cgsm::pmlLayerStrength |
Referenced by buildForcingOptionsDialog(), Cgsm(), and getForcingOption().
int Cgsm::pmlPower |
Referenced by buildForcingOptionsDialog(), Cgsm(), and getForcingOption().
DialogData * Cgsm::pParametersDialog |
Referenced by plot().
DialogData* Cgsm::pPlotOptionsDialog |
Referenced by plot().
FILE* Cgsm::probeFile |
Referenced by Cgsm(), outputResultsAfterEachTimeStep(), and ~Cgsm().
aString Cgsm::probeFileName |
Referenced by buildInputOutputOptionsDialog(), Cgsm(), getInputOutputOption(), and outputResultsAfterEachTimeStep().
ArraySimple<int> Cgsm::probeGridLocation |
Referenced by getInputOutputOption(), and outputResultsAfterEachTimeStep().
ArraySimple<real> Cgsm::probes |
Referenced by getInputOutputOption(), and outputResultsAfterEachTimeStep().
int Cgsm::radbcAxis[2] |
Referenced by Cgsm(), and initializeRadiationBoundaryConditions().
int Cgsm::radbcGrid[2] |
Referenced by Cgsm(), and initializeRadiationBoundaryConditions().
int Cgsm::radbcSide[2] |
Referenced by Cgsm(), and initializeRadiationBoundaryConditions().
real Cgsm::radiusForCheckingErrors |
Referenced by buildPlotOptionsDialog(), Cgsm(), getPlotOption(), and plot().
ShowFileReader* Cgsm::referenceShowFileReader |
Referenced by Cgsm(), getErrors(), and ~Cgsm().
GUIState* Cgsm::runTimeDialog |
Referenced by buildRunTimeDialog(), Cgsm(), plot(), and ~Cgsm().
bool Cgsm::saveDivergenceInShowFile |
Referenced by Cgsm().
bool Cgsm::saveErrorsInShowFile |
Referenced by Cgsm().
bool Cgsm::saveStressInShowFile |
Referenced by Cgsm().
bool Cgsm::saveVelocityInShowFile |
Referenced by Cgsm().
RealArray Cgsm::sequence |
Referenced by saveSequenceInfo(), and saveSequencesToShowFile().
int Cgsm::sequenceCount |
Referenced by Cgsm(), saveSequenceInfo(), and saveSequencesToShowFile().
int Cgsm::showFileFrameForGrid |
Referenced by Cgsm(), and saveShow().
real Cgsm::sizeOfLocalArraysForAdvance |
Referenced by advanceFOS(), advanceSOS(), Cgsm(), and printMemoryUsage().
real Cgsm::slowStartInterval |
Referenced by buildForcingOptionsDialog(), Cgsm(), and getForcingOption().
RealArray Cgsm::solutionNorm |
Referenced by getErrors(), getMaxDivAndCurl(), and outputResults().
RealArray Cgsm::timeSequence |
Referenced by saveSequenceInfo(), and saveSequencesToShowFile().
real Cgsm::totalEnergy |
Referenced by Cgsm(), getEnergy(), and outputResults().
int Cgsm::totalNumberOfArrays |
Referenced by Cgsm(), and checkArrays().
bool Cgsm::useConservative |
Referenced by advanceFOS(), advanceSOS(), assignBoundaryConditionsFOS(), assignBoundaryConditionsSOS(), buildTimeSteppingDialog(), Cgsm(), checkDisplacementAndStress(), getMaxDivAndCurl(), getMethodName(), getTimeSteppingOption(), getVelocityAndStress(), saveShow(), setupGridFunctions(), setupGrids(), and setupPde().
bool Cgsm::useStreamMode |
Referenced by Cgsm().
bool Cgsm::useVariableDissipation |
Referenced by advanceSOS(), buildTimeSteppingDialog(), Cgsm(), getAugmentedSolution(), getTimeSteppingOption(), and setupGridFunctions().
realCompositeGridFunction* Cgsm::variableDissipation |
Referenced by advanceSOS(), buildVariableDissipation(), Cgsm(), getAugmentedSolution(), and ~Cgsm().
real Cgsm::vorUMax |
Referenced by Cgsm(), getMaxDivAndCurl(), and plot().
realArray* Cgsm::vpml |
Referenced by assignBoundaryConditionsSOS(), Cgsm(), and ~Cgsm().
real Cgsm::x0GaussianPlaneWave |
Referenced by Cgsm(), and getInitialConditions().
real Cgsm::x0PlaneMaterialInterface[3] |
Referenced by buildForcingOptionsDialog(), Cgsm(), and getForcingOption().
real Cgsm::y0GaussianPlaneWave |
Referenced by Cgsm(), and getInitialConditions().
real Cgsm::z0GaussianPlaneWave |
Referenced by Cgsm(), and getInitialConditions().