GEOS
|
Classes | |
struct | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct |
struct | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct |
struct | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct |
Functions | |
virtual void | geos::CompositionalMultiphaseBase::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::CompositionalMultiphaseBase::assembleSystem (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::CompositionalMultiphaseBase::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual void | geos::CompositionalMultiphaseBase::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::CompositionalMultiphaseBase::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
void | geos::CompositionalMultiphaseBase::updateGlobalComponentFraction (ObjectManagerBase &dataGroup) const |
Recompute global component fractions from primary variables (component densities) More... | |
real64 | geos::CompositionalMultiphaseBase::updatePhaseVolumeFraction (ObjectManagerBase &dataGroup) const |
Recompute phase volume fractions (saturations) from constitutive and primary variables. More... | |
void | geos::CompositionalMultiphaseBase::updateFluidModel (ObjectManagerBase &dataGroup) const |
Update all relevant fluid models using current values of pressure and composition. More... | |
void | geos::CompositionalMultiphaseBase::updateRelPermModel (ObjectManagerBase &dataGroup) const |
Update all relevant relperm models using current values of phase volume fraction. More... | |
void | geos::CompositionalMultiphaseBase::updateCapPressureModel (ObjectManagerBase &dataGroup) const |
Update all relevant capillary pressure models using current values of phase volume fraction. More... | |
void | geos::CompositionalMultiphaseBase::updateCompAmount (ElementSubRegionBase &subRegion) const |
Update components mass/moles. More... | |
void | geos::CompositionalMultiphaseBase::updateEnergy (ElementSubRegionBase &subRegion) const |
Update energy. More... | |
void | geos::CompositionalMultiphaseBase::updateSolidInternalEnergyModel (ObjectManagerBase &dataGroup) const |
Update all relevant solid internal energy models using current values of temperature. More... | |
virtual void | geos::CompositionalMultiphaseBase::updatePhaseMobility (ObjectManagerBase &dataGroup) const =0 |
Recompute phase mobility from constitutive and primary variables. More... | |
real64 | geos::CompositionalMultiphaseBase::updateFluidState (ElementSubRegionBase &subRegion) const |
virtual void | geos::CompositionalMultiphaseBase::saveConvergedState (ElementSubRegionBase &subRegion) const override final |
Utility function to save the converged state. More... | |
virtual void | geos::CompositionalMultiphaseBase::saveSequentialIterationState (DomainPartition &domain) override final |
Utility function to save the iteration state (useful for sequential simulations) More... | |
virtual void | geos::CompositionalMultiphaseBase::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
integer | geos::CompositionalMultiphaseBase::numFluidComponents () const |
Getter for the number of fluid components (species) More... | |
integer | geos::CompositionalMultiphaseBase::numFluidPhases () const |
Getter for the number of fluid phases. More... | |
string | geos::CompositionalMultiphaseBase::referenceFluidModelName () const |
Getter for the name of the reference fluid model name. More... | |
virtual units::Unit | geos::CompositionalMultiphaseBase::getMassUnit () const override |
void | geos::CompositionalMultiphaseBase::assembleAccumulationAndVolumeBalanceTerms (DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const |
assembles the accumulation and volume balance terms for all cells More... | |
virtual void | geos::CompositionalMultiphaseBase::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const =0 |
assembles the flux terms for all cells More... | |
virtual void | geos::CompositionalMultiphaseBase::assembleStabilizedFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const =0 |
assembles the flux terms for all cells with pressure jump stabilization More... | |
virtual void | geos::CompositionalMultiphaseFVM::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::CompositionalMultiphaseFVM::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::CompositionalMultiphaseFVM::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual real64 | geos::CompositionalMultiphaseFVM::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual bool | geos::CompositionalMultiphaseFVM::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::CompositionalMultiphaseFVM::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::CompositionalMultiphaseHybridFVM::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual real64 | geos::CompositionalMultiphaseHybridFVM::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual bool | geos::CompositionalMultiphaseHybridFVM::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const override |
assembles the flux terms for all cells More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::assembleStabilizedFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const override |
assembles the flux terms for all cells with pressure jump stabilization More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::updatePhaseMobility (ObjectManagerBase &dataGroup) const override |
Recompute phase mobility from constitutive and primary variables. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::applyAquiferBC (real64 const time, real64 const dt, DofManager const &dofManager, DomainPartition &domain, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const override |
Apply aquifer boundary conditions to the system. More... | |
virtual void | geos::CompositionalMultiphaseHybridFVM::saveAquiferConvergedState (real64 const &time, real64 const &dt, DomainPartition &domain) override |
Increment the cumulative flux from each aquifer. More... | |
virtual void | geos::ProppantTransport::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::ProppantTransport::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::ProppantTransport::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::ProppantTransport::applyBoundaryConditions (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::ProppantTransport::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::ProppantTransport::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::ProppantTransport::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::ProppantTransport::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
void | geos::ProppantTransport::assembleAccumulationTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
assembles the accumulation terms for all cells More... | |
void | geos::ProppantTransport::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
assembles the flux terms for all cells More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::assembleSystem (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual real64 | geos::ReactiveCompositionalMultiphaseOBL::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual real64 | geos::ReactiveCompositionalMultiphaseOBL::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual bool | geos::ReactiveCompositionalMultiphaseOBL::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
void | geos::ReactiveCompositionalMultiphaseOBL::updateOBLOperators (ObjectManagerBase &dataGroup) const |
Recompute operator values and derivatives from primary variables. More... | |
localIndex | geos::ReactiveCompositionalMultiphaseOBL::numFluidComponents () const |
Get the number of fluid components (species) More... | |
localIndex | geos::ReactiveCompositionalMultiphaseOBL::numFluidPhases () const |
Get the number of fluid phases. More... | |
localIndex | geos::ReactiveCompositionalMultiphaseOBL::numOBLOperators () const |
Get the number of OBL operators. More... | |
void | geos::ReactiveCompositionalMultiphaseOBL::assembleAccumulationTerms (real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const |
assembles the accumulation term for all cells More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const |
assembles the flux term for all cells More... | |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::elemDofFieldString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::numPhasesString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::numComponentsString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::enableEnergyBalanceString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::componentNamesString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::phaseNamesString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::OBLOperatorsTableFileString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::transMultExpString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::maxCompFracChangeString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::allowLocalOBLChoppingString () |
static constexpr char const * | geos::ReactiveCompositionalMultiphaseOBL::viewKeyStruct::useDARTSL2NormString () |
bool | geos::ReactiveCompositionalMultiphaseOBL::validateDirichletBC (DomainPartition &domain, real64 const time) const |
Function to perform checks before applying Dirichlet type BC's. More... | |
void | geos::ReactiveCompositionalMultiphaseOBL::applyDirichletBC (real64 const time, real64 const dt, DofManager const &dofManager, DomainPartition &domain, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const |
Function to perform the Application of Dirichlet type BC's. More... | |
void | geos::ReactiveCompositionalMultiphaseOBL::applySourceFluxBC (real64 const time, real64 const dt, DofManager const &dofManager, DomainPartition &domain, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const |
Apply source flux boundary conditions to the system. More... | |
void | geos::ReactiveCompositionalMultiphaseOBL::chopPrimaryVariables (DomainPartition &domain) |
Sets all the primary variables, which are outside of defined OBL parametrization limits, to be inside them Helps to evaluate correct operator values/derivatives when a disturbed solution is obtained from a previous Newton iteration Does not help in case if the model is defined inconsistently: for instance, if minimum pressure value in OBL table is higher, than BHP used by a producer/sink In that case, the solution will be chopped all the time and Newton will never converge. More... | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::initializePostInitialConditionsPreSubGroups () override |
Called by InitializePostInitialConditions() prior to initializing sub-Groups. | |
virtual void | geos::ReactiveCompositionalMultiphaseOBL::initializePreSubGroups () override |
Called by Initialize() prior to initializing sub-Groups. | |
virtual void | geos::SinglePhaseBase::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::SinglePhaseBase::assembleSystem (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::SinglePhaseBase::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::SinglePhaseBase::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual bool | geos::SinglePhaseBase::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::SinglePhaseBase::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::SinglePhaseBase::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual void | geos::SinglePhaseFVM< BASE >::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::SinglePhaseFVM< BASE >::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::SinglePhaseFVM< BASE >::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::SinglePhaseFVM< BASE >::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::SinglePhaseFVM< BASE >::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::SinglePhaseFVM< BASE >::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
assembles the flux terms for all cells More... | |
virtual void | geos::SinglePhaseFVM< BASE >::assembleStabilizedFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
assembles the flux terms for all cells including jump stabilization More... | |
virtual void | geos::SinglePhaseFVM< BASE >::assembleEDFMFluxTerms (real64 const time_n, real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs, string const &jumpDofKey) override final |
assembles the flux terms for all cells for the poroelastic case More... | |
virtual void | geos::SinglePhaseFVM< BASE >::assembleHydrofracFluxTerms (real64 const time_n, real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs, CRSMatrixView< real64, localIndex const > const &dR_dAper) override final |
assembles the flux terms for all cells for the hydrofracture case More... | |
virtual void | geos::SinglePhaseHybridFVM::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::SinglePhaseHybridFVM::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::SinglePhaseHybridFVM::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::SinglePhaseHybridFVM::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::SinglePhaseHybridFVM::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::SinglePhaseHybridFVM::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::SinglePhaseHybridFVM::assembleFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
assembles the flux terms for all cells More... | |
virtual void | geos::SinglePhaseHybridFVM::assembleStabilizedFluxTerms (real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
assembles the flux terms for all cells including jump stabilization More... | |
virtual void | geos::SinglePhaseHybridFVM::assembleEDFMFluxTerms (real64 const time_n, real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs, string const &jumpDofKey) override final |
assembles the flux terms for all cells for the poroelastic case More... | |
virtual void | geos::SinglePhaseHybridFVM::assembleHydrofracFluxTerms (real64 const time_n, real64 const dt, DomainPartition const &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs, CRSMatrixView< real64, localIndex const > const &dR_dAper) override final |
assembles the flux terms for all cells for the hydrofracture case More... | |
virtual void | geos::SinglePhaseHybridFVM::applyAquiferBC (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) const override final |
Apply aquifer boundary conditions to the system. More... | |
virtual void | geos::SinglePhaseHybridFVM::saveAquiferConvergedState (real64 const &time, real64 const &dt, DomainPartition &domain) override |
Increment the cumulative flux from each aquifer. More... | |
virtual void | geos::SinglePhaseHybridFVM::updatePressureGradient (DomainPartition &domain) override final |
Update the cell-wise pressure gradient. | |
void | geos::SinglePhaseHybridFVM::applyFaceDirichletBC (real64 const time_n, real64 const dt, DofManager const &faceSet, DomainPartition &domain, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
Function to perform the application of Dirichlet BCs on faces. More... | |
virtual real64 | geos::CompositionalMultiphaseWell::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual real64 | geos::CompositionalMultiphaseWell::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual bool | geos::CompositionalMultiphaseWell::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::CompositionalMultiphaseWell::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::CompositionalMultiphaseWell::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::CompositionalMultiphaseWell::implicitStepSetup (real64 const &time, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::CompositionalMultiphaseWell::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual real64 | geos::SinglePhaseWell::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual bool | geos::SinglePhaseWell::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual void | geos::SinglePhaseWell::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::SinglePhaseWell::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::SinglePhaseWell::implicitStepSetup (real64 const &time, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::SinglePhaseWell::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual void | geos::WellSolverBase::registerDataOnMesh (Group &meshBodies) override |
Register wrappers that contain data on the mesh objects. More... | |
virtual void | geos::WellSolverBase::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::WellSolverBase::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::WellSolverBase::implicitStepComplete (real64 const &GEOS_UNUSED_PARAM(time_n), real64 const &GEOS_UNUSED_PARAM(dt), DomainPartition &GEOS_UNUSED_PARAM(domain)) override |
virtual void | geos::WellSolverBase::applyBoundaryConditions (real64 const GEOS_UNUSED_PARAM(time_n), real64 const GEOS_UNUSED_PARAM(dt), DomainPartition &GEOS_UNUSED_PARAM(domain), DofManager const &GEOS_UNUSED_PARAM(dofManager), CRSMatrixView< real64, globalIndex const > const &GEOS_UNUSED_PARAM(localMatrix), arrayView1d< real64 > const &GEOS_UNUSED_PARAM(localRhs)) override |
virtual void | geos::CoupledReservoirAndWellsBase< RESERVOIR_SOLVER, WELL_SOLVER >::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
void | geos::CoupledSolver< SOLVERS >::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::CoupledSolver< SOLVERS >::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::CoupledSolver< SOLVERS >::implicitStepComplete (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual void | geos::CoupledSolver< SOLVERS >::assembleSystem (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::CoupledSolver< SOLVERS >::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::CoupledSolver< SOLVERS >::updateState (DomainPartition &domain) override |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual void | geos::CoupledSolver< SOLVERS >::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
real64 | geos::CoupledSolver< SOLVERS >::solverStep (real64 const &time_n, real64 const &dt, int const cycleNumber, DomainPartition &domain) override final |
virtual real64 | geos::CoupledSolver< SOLVERS >::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::CoupledSolver< SOLVERS >::applyBoundaryConditions (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual bool | geos::CoupledSolver< SOLVERS >::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) override |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual real64 | geos::CoupledSolver< SOLVERS >::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) override |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual real64 | geos::CoupledSolver< SOLVERS >::setNextDtBasedOnStateChange (real64 const ¤tDt, DomainPartition &domain) override |
function to set the next dt based on state change More... | |
virtual real64 | geos::CoupledSolver< SOLVERS >::setNextDtBasedOnNewtonIter (real64 const ¤tDt) override |
function to set the next time step size based on Newton convergence More... | |
virtual void | geos::CoupledSolver< SOLVERS >::cleanup (real64 const time_n, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain) override |
Called as the code exits the main run loop. More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::registerDataOnMesh (Group &MeshBodies) override final |
Register wrappers that contain data on the mesh objects. More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::setupCoupling (DomainPartition const &domain, DofManager &dofManager) const override final |
Utility function to set the coupling between degrees of freedom. More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override final |
function to perform setup for implicit timestep More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual real64 | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::setNextDt (real64 const ¤tDt, DomainPartition &domain) override |
function to set the next time step size More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::implicitStepComplete (real64 const &time_n, real64 const &dt, DomainPartition &domain) override final |
perform cleanup for implicit timestep More... | |
virtual void | geos::HydrofractureSolver< POROMECHANICS_SOLVER >::resetStateToBeginningOfStep (DomainPartition &domain) override final |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::postInputInitialization () override |
virtual void | geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::setupCoupling (DomainPartition const &domain, DofManager &dofManager) const override |
Utility function to set the coupling between degrees of freedom. More... | |
virtual void | geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
void | geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::assembleElementBasedTerms (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
virtual void | geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::postInputInitialization () override |
virtual void | geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::setupCoupling (DomainPartition const &domain, DofManager &dofManager) const override |
Utility function to set the coupling between degrees of freedom. More... | |
virtual void | geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
void | geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >::assembleElementBasedTerms (real64 const time_n, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
virtual void | geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >::setupCoupling (DomainPartition const &domain, DofManager &dofManager) const override |
Utility function to set the coupling between degrees of freedom. More... | |
virtual void | geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override final |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual real64 | geos::PhysicsSolverBase::solverStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
entry function to perform a solver step More... | |
virtual real64 | geos::PhysicsSolverBase::setNextDt (real64 const ¤tDt, DomainPartition &domain) |
function to set the next time step size More... | |
virtual real64 | geos::PhysicsSolverBase::setNextDtBasedOnNewtonIter (real64 const ¤tDt) |
function to set the next time step size based on Newton convergence More... | |
virtual real64 | geos::PhysicsSolverBase::setNextDtBasedOnStateChange (real64 const ¤tDt, DomainPartition &domain) |
function to set the next dt based on state change More... | |
virtual real64 | geos::PhysicsSolverBase::setNextDtBasedOnCFL (real64 const ¤tDt, DomainPartition &domain) |
function to set the next dt based on state change More... | |
virtual real64 | geos::PhysicsSolverBase::explicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
Entry function for an explicit time integration step. More... | |
virtual real64 | geos::PhysicsSolverBase::nonlinearImplicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
Function for a nonlinear implicit integration step. More... | |
virtual bool | geos::PhysicsSolverBase::lineSearch (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, ParallelVector &rhs, ParallelVector &solution, real64 const scaleFactor, real64 &lastResidual) |
Function to perform line search. More... | |
virtual bool | geos::PhysicsSolverBase::lineSearchWithParabolicInterpolation (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, ParallelVector &rhs, ParallelVector &solution, real64 const scaleFactor, real64 &lastResidual, real64 &residualNormT) |
Function to perform line search using a parabolic interpolation to find the scaling factor. More... | |
virtual real64 | geos::PhysicsSolverBase::linearImplicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
Function for a linear implicit integration step. More... | |
virtual void | geos::PhysicsSolverBase::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) |
function to perform setup for implicit timestep More... | |
virtual void | geos::PhysicsSolverBase::setupDofs (DomainPartition const &domain, DofManager &dofManager) const |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::PhysicsSolverBase::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=true) |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::PhysicsSolverBase::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::PhysicsSolverBase::applyBoundaryConditions (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) |
apply boundary condition to system More... | |
void | geos::PhysicsSolverBase::debugOutputSystem (real64 const &time, integer const cycleNumber, integer const nonlinearIteration, ParallelMatrix const &matrix, ParallelVector const &rhs) const |
Output the assembled linear system for debug purposes. More... | |
void | geos::PhysicsSolverBase::debugOutputSolution (real64 const &time, integer const cycleNumber, integer const nonlinearIteration, ParallelVector const &solution) const |
Output the linear system solution for debug purposes. More... | |
virtual real64 | geos::PhysicsSolverBase::calculateResidualNorm (real64 const &time, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) |
calculate the norm of the global system residual More... | |
virtual void | geos::PhysicsSolverBase::solveLinearSystem (DofManager const &dofManager, ParallelMatrix &matrix, ParallelVector &rhs, ParallelVector &solution) |
function to apply a linear system solver to the assembled system. More... | |
virtual bool | geos::PhysicsSolverBase::checkSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor) |
Function to check system solution for physical consistency and constraint violation. More... | |
virtual real64 | geos::PhysicsSolverBase::scalingForSystemSolution (DomainPartition &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localSolution) |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint. More... | |
virtual void | geos::PhysicsSolverBase::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) |
Function to apply the solution vector to the state. More... | |
virtual bool | geos::PhysicsSolverBase::updateConfiguration (DomainPartition &domain) |
updates the configuration (if needed) based on the state after a converged Newton loop. More... | |
virtual void | geos::PhysicsSolverBase::outputConfigurationStatistics (DomainPartition const &domain) const |
virtual void | geos::PhysicsSolverBase::resetConfigurationToBeginningOfStep (DomainPartition &domain) |
resets the configuration to the beginning of the time-step. More... | |
virtual bool | geos::PhysicsSolverBase::resetConfigurationToDefault (DomainPartition &domain) const |
resets the configuration to the default value. More... | |
virtual void | geos::PhysicsSolverBase::updateState (DomainPartition &domain) |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual void | geos::PhysicsSolverBase::resetStateToBeginningOfStep (DomainPartition &domain) |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::PhysicsSolverBase::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) |
perform cleanup for implicit timestep More... | |
virtual real64 | geos::PhysicsSolverBase::getTimestepRequest (real64 const) override |
getter for the next timestep size More... | |
virtual real64 | geos::PhaseFieldDamageFEM::solverStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
entry function to perform a solver step More... | |
virtual real64 | geos::PhaseFieldDamageFEM::explicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
Entry function for an explicit time integration step. More... | |
virtual void | geos::PhaseFieldDamageFEM::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::PhaseFieldDamageFEM::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::PhaseFieldDamageFEM::applyBoundaryConditions (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::PhaseFieldDamageFEM::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::PhaseFieldDamageFEM::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::PhaseFieldDamageFEM::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual void | geos::PhaseFieldDamageFEM::implicitStepSetup (real64 const &, real64 const &, DomainPartition &) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::PhaseFieldDamageFEM::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual void | geos::PhaseFieldDamageFEM::resetStateToBeginningOfStep (DomainPartition &) override |
reset state of physics back to the beginning of the step. More... | |
virtual real64 | geos::SolidMechanicsLagrangianFEM::solverStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
entry function to perform a solver step More... | |
virtual real64 | geos::SolidMechanicsLagrangianFEM::explicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
Entry function for an explicit time integration step. More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::implicitStepSetup (real64 const &time_n, real64 const &dt, DomainPartition &domain) override |
function to perform setup for implicit timestep More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::setupDofs (DomainPartition const &domain, DofManager &dofManager) const override |
Populate degree-of-freedom manager with fields relevant to this solver. More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::setupSystem (DomainPartition &domain, DofManager &dofManager, CRSMatrix< real64, globalIndex > &localMatrix, ParallelVector &rhs, ParallelVector &solution, bool const setSparsity=false) override |
Set up the linear system (DOF indices and sparsity patterns) More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::assembleSystem (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
function to assemble the linear system matrix and rhs More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::applySystemSolution (DofManager const &dofManager, arrayView1d< real64 const > const &localSolution, real64 const scalingFactor, real64 const dt, DomainPartition &domain) override |
Function to apply the solution vector to the state. More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::updateState (DomainPartition &domain) override |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::applyBoundaryConditions (real64 const time, real64 const dt, DomainPartition &domain, DofManager const &dofManager, CRSMatrixView< real64, globalIndex const > const &localMatrix, arrayView1d< real64 > const &localRhs) override |
apply boundary condition to system More... | |
virtual real64 | geos::SolidMechanicsLagrangianFEM::calculateResidualNorm (real64 const &time_n, real64 const &dt, DomainPartition const &domain, DofManager const &dofManager, arrayView1d< real64 const > const &localRhs) override |
calculate the norm of the global system residual More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::resetStateToBeginningOfStep (DomainPartition &domain) override |
reset state of physics back to the beginning of the step. More... | |
virtual void | geos::SolidMechanicsLagrangianFEM::implicitStepComplete (real64 const &time, real64 const &dt, DomainPartition &domain) override |
perform cleanup for implicit timestep More... | |
virtual real64 | geos::SolidMechanicsMPM::solverStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
entry function to perform a solver step More... | |
virtual real64 | geos::SolidMechanicsMPM::explicitStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
Entry function for an explicit time integration step. More... | |
virtual void | geos::SolidMechanicsMPM::updateState (DomainPartition &domain) override final |
Recompute all dependent quantities from primary variables (including constitutive models) More... | |
virtual bool | geos::SurfaceGenerator::execute (real64 const time_n, real64 const dt, integer const cycleNumber, integer const GEOS_UNUSED_PARAM(eventCounter), real64 const GEOS_UNUSED_PARAM(eventProgress), DomainPartition &domain) override |
virtual real64 | geos::SurfaceGenerator::solverStep (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) override |
entry function to perform a solver step More... | |
virtual real64 | geos::AcousticFirstOrderWaveEquationSEM::explicitStepForward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform forward explicit step. More... | |
virtual real64 | geos::AcousticFirstOrderWaveEquationSEM::explicitStepBackward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform backward explicit step. More... | |
virtual void | geos::AcousticFirstOrderWaveEquationSEM::initializePML () override |
Initialize Perfectly Matched Layer (PML) information. | |
virtual void | geos::AcousticFirstOrderWaveEquationSEM::cleanup (real64 const time_n, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain) override |
Overridden from ExecutableGroup. Used to write last seismogram if needed. | |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::pressureNp1AtReceiversString () |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::uxNp1AtReceiversString () |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::uyNp1AtReceiversString () |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::uzNp1AtReceiversString () |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::sourceElemString () |
static constexpr char const * | geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct::sourceRegionString () |
real64 | geos::AcousticFirstOrderWaveEquationSEM::explicitStepInternal (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
virtual void | geos::AcousticFirstOrderWaveEquationSEM::postInputInitialization () override final |
virtual void | geos::AcousticFirstOrderWaveEquationSEM::initializePostInitialConditionsPreSubGroups () override final |
Called by InitializePostInitialConditions() prior to initializing sub-Groups. | |
virtual real64 | geos::AcousticVTIWaveEquationSEM::explicitStepForward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform forward explicit step. More... | |
virtual real64 | geos::AcousticVTIWaveEquationSEM::explicitStepBackward (real64 const &GEOS_UNUSED_PARAM(time_n), real64 const &GEOS_UNUSED_PARAM(dt), integer const GEOS_UNUSED_PARAM(cycleNumber), DomainPartition &GEOS_UNUSED_PARAM(domain), bool const GEOS_UNUSED_PARAM(computeGradient)) override |
virtual real64 | geos::AcousticWaveEquationSEM::explicitStepForward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform forward explicit step. More... | |
virtual real64 | geos::AcousticWaveEquationSEM::explicitStepBackward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform backward explicit step. More... | |
virtual real64 | geos::ElasticFirstOrderWaveEquationSEM::explicitStepForward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform forward explicit step. More... | |
virtual real64 | geos::ElasticFirstOrderWaveEquationSEM::explicitStepBackward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform backward explicit step. More... | |
virtual void | geos::ElasticFirstOrderWaveEquationSEM::initializePML () override |
Initialize Perfectly Matched Layer (PML) information. | |
virtual void | geos::ElasticFirstOrderWaveEquationSEM::cleanup (real64 const time_n, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain) override |
Overridden from ExecutableGroup. Used to write last seismogram if needed. | |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::displacementxNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::displacementyNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::displacementzNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmaxxNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmayyNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmazzNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmaxyNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmaxzNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sigmayzNp1AtReceiversString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sourceElemString () |
static constexpr char const * | geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct::sourceRegionString () |
real64 | geos::ElasticFirstOrderWaveEquationSEM::explicitStepInternal (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain) |
virtual void | geos::ElasticFirstOrderWaveEquationSEM::postInputInitialization () override final |
virtual void | geos::ElasticFirstOrderWaveEquationSEM::initializePostInitialConditionsPreSubGroups () override final |
Called by InitializePostInitialConditions() prior to initializing sub-Groups. | |
virtual real64 | geos::ElasticWaveEquationSEM::explicitStepForward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform forward explicit step. More... | |
virtual real64 | geos::ElasticWaveEquationSEM::explicitStepBackward (real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, bool const computeGradient) override |
Perform backward explicit step. More... | |
Variables | |
geos::AcousticFirstOrderWaveEquationSEM::viewKeyStruct | geos::AcousticFirstOrderWaveEquationSEM::waveEquationViewKeys |
geos::ElasticFirstOrderWaveEquationSEM::viewKeyStruct | geos::ElasticFirstOrderWaveEquationSEM::waveEquationViewKeys |
These functions provide the primary interface that is required for derived classes
This function provides the primary interface that is required for derived classes
|
overridevirtual |
Apply aquifer boundary conditions to the system.
time | current time |
dt | time step |
dofManager | degree-of-freedom manager associated with the linear system |
domain | the domain |
localMatrix | local system matrix |
localRhs | local system right-hand side vector |
Implements geos::CompositionalMultiphaseBase.
|
finaloverridevirtual |
Apply aquifer boundary conditions to the system.
time | current time |
dt | time step |
domain | the domain |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | local system matrix |
localRhs | local system right-hand side vector |
Implements geos::SinglePhaseBase.
|
virtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseHybridFVM, geos::SinglePhaseFVM< BASE >, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseFVM, geos::CompositionalMultiphaseBase, geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, and geos::ProppantTransport.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::CompositionalMultiphaseBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::CompositionalMultiphaseBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhaseHybridFVM, and geos::SinglePhaseFVM< BASE >.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::SinglePhaseBase.
|
overridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::SinglePhaseBase.
|
inlineoverridevirtual |
apply boundary condition to system
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function applies all boundary conditions to the linear system. This is essentially a completion of the system assembly, but is separated for use in coupled solvers.
Reimplemented from geos::PhysicsSolverBase.
Definition at line 265 of file CoupledSolver.hpp.
void geos::ReactiveCompositionalMultiphaseOBL::applyDirichletBC | ( | real64 const | time, |
real64 const | dt, | ||
DofManager const & | dofManager, | ||
DomainPartition & | domain, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) | const |
Function to perform the Application of Dirichlet type BC's.
time | current time |
dt | time step |
dofManager | degree-of-freedom manager associated with the linear system |
domain | the domain |
localMatrix | local system matrix |
localRhs | local system right-hand side vector |
void geos::SinglePhaseHybridFVM::applyFaceDirichletBC | ( | real64 const | time_n, |
real64 const | dt, | ||
DofManager const & | faceSet, | ||
DomainPartition & | domain, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) |
Function to perform the application of Dirichlet BCs on faces.
[in] | time_n | current time |
[in] | dt | time step |
[in] | faceSet | degree-of-freedom manager associated with the linear system |
[in] | domain | the domain |
[in,out] | localMatrix | the system matrix |
[in,out] | localRhs | the system right-hand side vector |
void geos::ReactiveCompositionalMultiphaseOBL::applySourceFluxBC | ( | real64 const | time, |
real64 const | dt, | ||
DofManager const & | dofManager, | ||
DomainPartition & | domain, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) | const |
Apply source flux boundary conditions to the system.
time | current time |
dt | time step |
dofManager | degree-of-freedom manager associated with the linear system |
domain | the domain |
localMatrix | local system matrix |
localRhs | local system right-hand side vector |
|
virtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented in geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, geos::SinglePhaseHybridFVM, geos::SinglePhaseFVM< BASE >, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseFVM, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
Definition at line 190 of file CoupledSolver.hpp.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to apply the solution vector to the state.
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
dt | the timestep |
domain | the domain partition |
This function performs 2 operations: 1) extract the solution vector for the "blockSystem" parameter, and applies the contents of the solution vector to the primary variable field data, 2) perform a synchronization of the primary field variable such that all ghosts are updated,
The "scalingFactor" parameter allows for the scaled application of the solution vector. For instance, a line search may apply a negative scaling factor to remove part of the previously applied solution.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
void geos::CompositionalMultiphaseBase::assembleAccumulationAndVolumeBalanceTerms | ( | DomainPartition & | domain, |
DofManager const & | dofManager, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) | const |
assembles the accumulation and volume balance terms for all cells
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
void geos::ReactiveCompositionalMultiphaseOBL::assembleAccumulationTerms | ( | real64 const | dt, |
DomainPartition & | domain, | ||
DofManager const & | dofManager, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) | const |
assembles the accumulation term for all cells
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
void geos::ProppantTransport::assembleAccumulationTerms | ( | real64 const | dt, |
DomainPartition const & | domain, | ||
DofManager const & | dofManager, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) |
assembles the accumulation terms for all cells
domain | the physical domain object |
blockSystem | the entire block system |
time_n | previous time value |
dt | time step |
|
finaloverridevirtual |
assembles the flux terms for all cells for the poroelastic case
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
jumpDofKey | dofKey of the displacement jump |
Implements geos::SinglePhaseBase.
|
finaloverridevirtual |
assembles the flux terms for all cells for the poroelastic case
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
jumpDofKey | dofKey of the displacement jump |
Implements geos::SinglePhaseBase.
void geos::ProppantTransport::assembleFluxTerms | ( | real64 const | dt, |
DomainPartition const & | domain, | ||
DofManager const & | dofManager, | ||
CRSMatrixView< real64, globalIndex const > const & | localMatrix, | ||
arrayView1d< real64 > const & | localRhs | ||
) |
assembles the flux terms for all cells
domain | the physical domain object |
blockSystem | the entire block system |
time_n | previous time value |
dt | time step |
|
virtual |
assembles the flux term for all cells
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
|
pure virtual |
assembles the flux terms for all cells
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
matrix | the system matrix |
rhs | the system right-hand side vector |
Implemented in geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
assembles the flux terms for all cells
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
matrix | the system matrix |
rhs | the system right-hand side vector |
Implements geos::CompositionalMultiphaseBase.
|
overridevirtual |
assembles the flux terms for all cells
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
Implements geos::SinglePhaseBase.
|
overridevirtual |
assembles the flux terms for all cells
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
Implements geos::SinglePhaseBase.
|
finaloverridevirtual |
assembles the flux terms for all cells for the hydrofracture case
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
dR_dAper |
Implements geos::SinglePhaseBase.
|
finaloverridevirtual |
assembles the flux terms for all cells for the hydrofracture case
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
dR_dAper |
Implements geos::SinglePhaseBase.
|
pure virtual |
assembles the flux terms for all cells with pressure jump stabilization
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
matrix | the system matrix |
rhs | the system right-hand side vector |
Implemented in geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
assembles the flux terms for all cells with pressure jump stabilization
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
matrix | the system matrix |
rhs | the system right-hand side vector |
Implements geos::CompositionalMultiphaseBase.
|
overridevirtual |
assembles the flux terms for all cells including jump stabilization
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
Implements geos::SinglePhaseBase.
|
overridevirtual |
assembles the flux terms for all cells including jump stabilization
time_n | previous time value |
dt | time step |
domain | the physical domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
Implements geos::SinglePhaseBase.
|
virtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::CompositionalMultiphaseBase, geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceFEM, geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >, geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::WellSolverBase, geos::ProppantTransport, geos::SolidMechanicsPenaltyContact, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Fully-coupled assembly.
Reimplemented from geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Fully-coupled assembly.
Reimplemented from geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Fully-coupled assembly.
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
Reimplemented in geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, geos::SinglePhasePoromechanicsEmbeddedFractures, and geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsPenaltyContact, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
finaloverridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
function to assemble the linear system matrix and rhs
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
localRhs | the system right-hand side vector |
This function assembles the residual and the jacobian of the residual wrt the primary variables. In a stand alone physics solver, this function will fill a single block in the block system. However the capability to query the block system structure for any coupled blocks may be implemented to fill in off diagonal blocks of the system to enable coupling between solvers.
Fully-coupled assembly.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::MultiphasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >, and geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
Definition at line 170 of file CoupledSolver.hpp.
|
virtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented in geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, geos::SinglePhaseHybridFVM, geos::SinglePhaseFVM< BASE >, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseFVM, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsAugmentedLagrangianContact, geos::SolidMechanicsLagrangeContactBubbleStab, and geos::SolidMechanicsLagrangeContact.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
Definition at line 248 of file CoupledSolver.hpp.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
calculate the norm of the global system residual
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localRhs | the system right-hand side vector |
This function returns the norm of global residual vector, which is suitable for comparison with a tolerance.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsAugmentedLagrangianContact, geos::SolidMechanicsLagrangeContactBubbleStab, and geos::SolidMechanicsLagrangeContact.
|
virtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
Function to check system solution for physical consistency and constraint violation.
domain | the domain partition |
dofManager | degree-of-freedom manager associated with the linear system |
localSolution | the solution vector |
scalingFactor | factor to scale the solution prior to application |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 279 of file CoupledSolver.hpp.
void geos::ReactiveCompositionalMultiphaseOBL::chopPrimaryVariables | ( | DomainPartition & | domain | ) |
Sets all the primary variables, which are outside of defined OBL parametrization limits, to be inside them Helps to evaluate correct operator values/derivatives when a disturbed solution is obtained from a previous Newton iteration Does not help in case if the model is defined inconsistently: for instance, if minimum pressure value in OBL table is higher, than BHP used by a producer/sink In that case, the solution will be chopped all the time and Newton will never converge.
domain | the physical domain object |
|
inlineoverridevirtual |
Called as the code exits the main run loop.
[in] | time_n | current time level |
[in] | cycleNumber | global cycle number |
[in] | eventCounter | index of event that triggered execution |
[in] | eventProgress | fractional progress in current cycle |
[in,out] | domain | the physical domain |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 337 of file CoupledSolver.hpp.
void geos::PhysicsSolverBase::debugOutputSolution | ( | real64 const & | time, |
integer const | cycleNumber, | ||
integer const | nonlinearIteration, | ||
ParallelVector const & | solution | ||
) | const |
Output the linear system solution for debug purposes.
time | beginning-of-step time |
cycleNumber | event cycle number |
nonlinearIteration | current nonlinear iteration number |
solution | system solution vector |
void geos::PhysicsSolverBase::debugOutputSystem | ( | real64 const & | time, |
integer const | cycleNumber, | ||
integer const | nonlinearIteration, | ||
ParallelMatrix const & | matrix, | ||
ParallelVector const & | rhs | ||
) | const |
Output the assembled linear system for debug purposes.
time | beginning-of-step time |
cycleNumber | event cycle number |
nonlinearIteration | current nonlinear iteration number |
matrix | system matrix |
rhs | system right-hand side vector |
|
virtual |
Entry function for an explicit time integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
Reimplemented in geos::ContactSolverBase, geos::WaveSolverBase, geos::SolidMechanicsMPM, geos::SolidMechanicsLagrangianFEM, and geos::PhaseFieldDamageFEM.
|
overridevirtual |
Entry function for an explicit time integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Entry function for an explicit time integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::ContactSolverBase.
|
overridevirtual |
Entry function for an explicit time integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Perform backward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform backward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform backward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform backward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform forward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform forward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform forward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform forward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
|
overridevirtual |
Perform forward explicit step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
computeGradient | Indicates if we want to compute gradient at this step |
Implements geos::WaveSolverBase.
real64 geos::AcousticFirstOrderWaveEquationSEM::explicitStepInternal | ( | real64 const & | time_n, |
real64 const & | dt, | ||
integer const | cycleNumber, | ||
DomainPartition & | domain | ||
) |
internal function to the class to compute explicitStep either for backward or forward. (requires not to be private because it is called from GEOS_HOST_DEVICE method)
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
real64 geos::ElasticFirstOrderWaveEquationSEM::explicitStepInternal | ( | real64 const & | time_n, |
real64 const & | dt, | ||
integer const | cycleNumber, | ||
DomainPartition & | domain | ||
) |
internal function to the class to compute explicitStep either for backward or forward. (requires not to be private because it is called from GEOS_HOST_DEVICE method)
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
|
inlineoverridevirtual |
Reimplemented from geos::FlowSolverBase.
Definition at line 190 of file CompositionalMultiphaseBase.hpp.
getter for the next timestep size
Reimplemented from geos::ExecutableGroup.
Definition at line 649 of file PhysicsSolverBase.hpp.
|
virtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsAugmentedLagrangianContact, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, and geos::CompositionalMultiphaseBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
inlineoverridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
Definition at line 158 of file CoupledSolver.hpp.
|
finaloverridevirtual |
perform cleanup for implicit timestep
time | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function performs whatever tasks are required to complete an implicit timestep. For example, the acceptance of the solution will occur during this step, and deallocation of temporaries will be be performed in this function.
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
|
inlineoverridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Definition at line 111 of file PhaseFieldDamageFEM.hpp.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::WellSolverBase.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::WellSolverBase.
|
virtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsAugmentedLagrangianContact, geos::SolidMechanicsLagrangianFEM, geos::LaplaceBaseH1, geos::PoromechanicsSolver< FLOW_SOLVER, MECHANICS_SOLVER >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::CoupledReservoirAndWellsBase< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledReservoirAndWellsBase< SinglePhaseBase, SinglePhaseWell >, geos::CoupledReservoirAndWellsBase< CompositionalMultiphaseBase, CompositionalMultiphaseWell >, geos::WellSolverBase, geos::SinglePhaseHybridFVM, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseBase, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, and geos::PhaseFieldDamageFEM.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::CompositionalMultiphaseHybridFVM.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::CompositionalMultiphaseBase.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhaseHybridFVM.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::SinglePhaseBase.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhaseWell, and geos::CompositionalMultiphaseWell.
|
inlineoverridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::PoromechanicsSolver< FLOW_SOLVER, MECHANICS_SOLVER >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::CoupledReservoirAndWellsBase< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledReservoirAndWellsBase< SinglePhaseBase, SinglePhaseWell >, and geos::CoupledReservoirAndWellsBase< CompositionalMultiphaseBase, CompositionalMultiphaseWell >.
Definition at line 147 of file CoupledSolver.hpp.
|
overridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, and geos::SolidMechanicsAugmentedLagrangianContact.
|
finaloverridevirtual |
function to perform setup for implicit timestep
time_n | the time at the beginning of the step |
dt | the desired timestep |
domain | the domain partition |
This function should contain any step level initialization required to perform an implicit step.
Reimplemented from geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
|
virtual |
Function for a linear implicit integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function implements a single linear step. Similar to the nonlinear step, however it assumes that the solution is achieved in a iteration. The use of this function requires that the other functions in the solver interface are implemented in the derived physics solver. The nonlinear loop includes a simple line search algorithm, and will cut the timestep if convergence is not achieved according to the parameters in linearSolverParameters member.
|
virtual |
Function to perform line search.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
scaleFactor | the scaling factor to apply to the solution |
lastResidual | (in) target value below which to reduce residual norm, (out) achieved residual norm |
This function implements a nonlinear newton method for implicit problems. It requires that the other functions in the solver interface are implemented in the derived physics solver. The nonlinear loop includes a simple line search algorithm, and will cut the timestep if convergence is not achieved according to the parameters in linearSolverParameters member.
|
virtual |
Function to perform line search using a parabolic interpolation to find the scaling factor.
time_n | time at the beginning of the step |
dt | the prescribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
scaleFactor | the scaling factor to apply to the solution |
lastResidual | (in) target value below which to reduce residual norm, (out) achieved residual norm |
residualNormT | the residual norm at the end of the line search |
|
virtual |
Function for a nonlinear implicit integration step.
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function implements a nonlinear newton method for implicit problems. It requires that the other functions in the solver interface are implemented in the derived physics solver. The nonlinear loop includes a simple line search algorithm, and will cut the timestep if convergence is not achieved according to the parameters in linearSolverParameters member.
|
inline |
Getter for the number of fluid components (species)
Definition at line 173 of file CompositionalMultiphaseBase.hpp.
|
inline |
Get the number of fluid components (species)
Definition at line 185 of file ReactiveCompositionalMultiphaseOBL.hpp.
|
inline |
Getter for the number of fluid phases.
Definition at line 179 of file CompositionalMultiphaseBase.hpp.
|
inline |
Get the number of fluid phases.
Definition at line 191 of file ReactiveCompositionalMultiphaseOBL.hpp.
|
inline |
Get the number of OBL operators.
Definition at line 197 of file ReactiveCompositionalMultiphaseOBL.hpp.
|
virtual |
domain | the domain containing the mesh and fields |
Reimplemented in geos::ContactSolverBase, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, and geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
overridevirtual |
This function provides capability to post process input values prior to any other initialization operations.
Reimplemented from geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >.
|
overridevirtual |
This function provides capability to post process input values prior to any other initialization operations.
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
Reimplemented in geos::SinglePhasePoromechanicsEmbeddedFractures, and geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
|
finaloverrideprotectedvirtual |
This function provides capability to post process input values prior to any other initialization operations.
Reimplemented from geos::WaveSolverBase.
|
finaloverrideprotectedvirtual |
This function provides capability to post process input values prior to any other initialization operations.
Reimplemented from geos::WaveSolverBase.
|
inline |
Getter for the name of the reference fluid model name.
Definition at line 185 of file CompositionalMultiphaseBase.hpp.
|
overridevirtual |
Register wrappers that contain data on the mesh objects.
MeshBodies | the group of mesh bodies |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhaseWell, and geos::CompositionalMultiphaseWell.
|
finaloverridevirtual |
Register wrappers that contain data on the mesh objects.
MeshBodies | the group of mesh bodies |
Reimplemented from geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
|
virtual |
resets the configuration to the beginning of the time-step.
domain | the domain containing the mesh and fields |
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, and geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
virtual |
resets the configuration to the default value.
domain | the domain containing the mesh and fields |
Reimplemented in geos::SolidMechanicsLagrangeContact, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, and geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
inlineoverridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 120 of file PhaseFieldDamageFEM.hpp.
|
virtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsLagrangianFEM, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::SinglePhaseWell, geos::CompositionalMultiphaseWell, geos::SinglePhaseHybridFVM, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseBase, geos::SolidMechanicsLagrangeContact, and geos::PhaseFieldDamageFEM.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::CompositionalMultiphaseHybridFVM.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::CompositionalMultiphaseBase.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhaseHybridFVM.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::SinglePhaseBase.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
Definition at line 212 of file CoupledSolver.hpp.
|
overridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsLagrangeContact.
|
finaloverridevirtual |
reset state of physics back to the beginning of the step.
domain | This function essentially abandons the step, and resets all variables back to thier values at the beginning of the step. This is useful for cases where convergence was not achieved, and a cut in timestep was required. |
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
|
overridevirtual |
Increment the cumulative flux from each aquifer.
[in] | time | the time at the beginning of the time step |
[in] | dt | the time step size |
[in] | domain | the domain partition |
For now this function is here because it can be used for both single-phase flow and multiphase flow This may have to be revisited when aquifer BC is implemented for hybrid FVM
Reimplemented from geos::FlowSolverBase.
|
overridevirtual |
Increment the cumulative flux from each aquifer.
[in] | time | the time at the beginning of the time step |
[in] | dt | the time step size |
[in] | domain | the domain partition |
For now this function is here because it can be used for both single-phase flow and multiphase flow This may have to be revisited when aquifer BC is implemented for hybrid FVM
Reimplemented from geos::FlowSolverBase.
|
finaloverridevirtual |
Utility function to save the converged state.
[in] | subRegion | the element subRegion |
Reimplemented from geos::FlowSolverBase.
|
finaloverridevirtual |
Utility function to save the iteration state (useful for sequential simulations)
[in] | domain | the domain partition |
Reimplemented from geos::FlowSolverBase.
|
virtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented in geos::SolidMechanicsLagrangianFEM, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::CompositionalMultiphaseWell, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
Function to determine if the solution vector should be scaled back in order to maintain a known constraint.
[in] | domain | The domain partition. |
[in] | dofManager | degree-of-freedom manager associated with the linear system |
[in] | localSolution | the solution vector |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 298 of file CoupledSolver.hpp.
|
virtual |
function to set the next time step size
[in] | currentDt | the current time step size |
[in] | domain | the domain object |
Reimplemented in geos::QuasiDynamicEQ, geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::CompositionalMultiphaseBase, and geos::SolidMechanicsLagrangeContact.
|
overridevirtual |
function to set the next time step size
[in] | currentDt | the current time step size |
[in] | domain | the domain object |
Reimplemented from geos::PhysicsSolverBase.
|
virtual |
function to set the next dt based on state change
[in] | currentDt | the current time step size |
[in] | domain | the domain object |
Reimplemented in geos::CompositionalMultiphaseBase.
|
virtual |
function to set the next time step size based on Newton convergence
[in] | currentDt | the current time step size |
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, and geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
inlineoverridevirtual |
function to set the next time step size based on Newton convergence
[in] | currentDt | the current time step size |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 325 of file CoupledSolver.hpp.
|
virtual |
function to set the next dt based on state change
[in] | currentDt | the current time step size |
[in] | domain | the domain object |
Reimplemented in geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, and geos::CompositionalMultiphaseBase.
|
inlineoverridevirtual |
function to set the next dt based on state change
[in] | currentDt | the current time step size |
[in] | domain | the domain object |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 312 of file CoupledSolver.hpp.
|
overridevirtual |
Utility function to set the coupling between degrees of freedom.
[in] | domain | the domain partition |
[in] | dofManager | the dof manager |
Reimplemented from geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >.
|
overridevirtual |
Utility function to set the coupling between degrees of freedom.
[in] | domain | the domain partition |
[in] | dofManager | the dof manager |
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
Reimplemented in geos::HydrofractureSolver< POROMECHANICS_SOLVER >, and geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >.
|
overridevirtual |
Utility function to set the coupling between degrees of freedom.
[in] | domain | the domain partition |
[in] | dofManager | the dof manager |
Reimplemented from geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
finaloverridevirtual |
Utility function to set the coupling between degrees of freedom.
[in] | domain | the domain partition |
[in] | dofManager | the dof manager |
Reimplemented from geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >.
|
virtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented in geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, geos::SinglePhasePoromechanicsEmbeddedFractures, geos::PoromechanicsSolver< FLOW_SOLVER, MECHANICS_SOLVER >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::WellSolverBase, geos::SinglePhaseHybridFVM, geos::SinglePhaseFVM< BASE >, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseHybridFVM, geos::CompositionalMultiphaseFVM, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, and geos::PoromechanicsSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
Definition at line 135 of file CoupledSolver.hpp.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
Populate degree-of-freedom manager with fields relevant to this solver.
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
|
overridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsPenaltyContact, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsAugmentedLagrangianContact, and geos::SolidMechanicsEmbeddedFractures.
|
virtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented in geos::SolidMechanicsPenaltyContact, geos::SolidMechanicsLagrangeContactBubbleStab, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsAugmentedLagrangianContact, geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::CoupledReservoirAndWellsBase< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledReservoirAndWellsBase< SinglePhaseBase, SinglePhaseWell >, geos::CoupledReservoirAndWellsBase< CompositionalMultiphaseBase, CompositionalMultiphaseWell >, geos::SinglePhaseFVM< BASE >, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsLagrangianFEM, and geos::LaplaceFEM.
|
overridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::PhysicsSolverBase.
|
inlineoverridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 122 of file CoupledReservoirAndWellsBase.hpp.
|
overridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::SinglePhasePoromechanics< FLOW_SOLVER, MECHANICS_SOLVER >.
|
overridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, and geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
|
overridevirtual |
Set up the linear system (DOF indices and sparsity patterns)
domain | the domain containing the mesh and fields |
dofManager | degree-of-freedom manager associated with the linear system |
localMatrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
setSparsity | flag to indicate if the sparsity pattern should be set |
Reimplemented from geos::SinglePhasePoromechanics< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
virtual |
function to apply a linear system solver to the assembled system.
dofManager | degree-of-freedom manager associated with the linear system |
matrix | the system matrix |
rhs | the system right-hand side vector |
solution | the solution vector |
This function calls the linear solver package to perform a single linear solve on the block system. The derived physics solver is required to specify the call, as no default is provided.
|
inlinefinaloverride |
This method is meant to be kept final. Derived CoupledSolvers are expected, if needed, to override fullyCoupledSolverStep and/or sequentiallyCoupledSolverStep.
Definition at line 223 of file CoupledSolver.hpp.
|
virtual |
entry function to perform a solver step
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function is the entry point to perform a solver step. The choice of time integration method is determined in this function, and the appropriate step function is called.
Reimplemented in geos::SeismicityRate, geos::QuasiDynamicEQ, geos::WaveSolverBase, geos::AcousticElasticWaveEquationSEM, geos::SurfaceGenerator, geos::EmbeddedSurfaceGenerator, geos::SolidMechanicsMPM, geos::SolidMechanicsLagrangianFEM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, and geos::SolidMechanicsLagrangeContactBubbleStab.
|
overridevirtual |
entry function to perform a solver step
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function is the entry point to perform a solver step. The choice of time integration method is determined in this function, and the appropriate step function is called.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
entry function to perform a solver step
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function is the entry point to perform a solver step. The choice of time integration method is determined in this function, and the appropriate step function is called.
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContactBubbleStab.
|
overridevirtual |
entry function to perform a solver step
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function is the entry point to perform a solver step. The choice of time integration method is determined in this function, and the appropriate step function is called.
Reimplemented from geos::PhysicsSolverBase.
|
overridevirtual |
entry function to perform a solver step
time_n | time at the beginning of the step |
dt | the perscribed timestep |
cycleNumber | the current cycle number |
domain | the domain object |
This function is the entry point to perform a solver step. The choice of time integration method is determined in this function, and the appropriate step function is called.
Reimplemented from geos::PhysicsSolverBase.
void geos::CompositionalMultiphaseBase::updateCapPressureModel | ( | ObjectManagerBase & | dataGroup | ) | const |
Update all relevant capillary pressure models using current values of phase volume fraction.
dataGroup | the group storing the required fields |
void geos::CompositionalMultiphaseBase::updateCompAmount | ( | ElementSubRegionBase & | subRegion | ) | const |
Update components mass/moles.
subRegion | the subregion storing the required fields |
|
virtual |
updates the configuration (if needed) based on the state after a converged Newton loop.
domain | the domain containing the mesh and fields |
Reimplemented in geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsAugmentedLagrangianContact, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, and geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
void geos::CompositionalMultiphaseBase::updateEnergy | ( | ElementSubRegionBase & | subRegion | ) | const |
Update energy.
subRegion | the subregion storing the required fields |
void geos::CompositionalMultiphaseBase::updateFluidModel | ( | ObjectManagerBase & | dataGroup | ) | const |
Update all relevant fluid models using current values of pressure and composition.
dataGroup | the group storing the required fields |
void geos::CompositionalMultiphaseBase::updateGlobalComponentFraction | ( | ObjectManagerBase & | dataGroup | ) | const |
Recompute global component fractions from primary variables (component densities)
dataGroup | the group storing the required fields |
void geos::ReactiveCompositionalMultiphaseOBL::updateOBLOperators | ( | ObjectManagerBase & | dataGroup | ) | const |
Recompute operator values and derivatives from primary variables.
dataGroup | the group storing the required fields |
|
pure virtual |
Recompute phase mobility from constitutive and primary variables.
dataGroup | the group storing the required field |
Implemented in geos::CompositionalMultiphaseHybridFVM, and geos::CompositionalMultiphaseFVM.
|
overridevirtual |
Recompute phase mobility from constitutive and primary variables.
dataGroup | the group storing the required field |
Implements geos::CompositionalMultiphaseBase.
real64 geos::CompositionalMultiphaseBase::updatePhaseVolumeFraction | ( | ObjectManagerBase & | dataGroup | ) | const |
Recompute phase volume fractions (saturations) from constitutive and primary variables.
dataGroup | the group storing the required fields |
void geos::CompositionalMultiphaseBase::updateRelPermModel | ( | ObjectManagerBase & | dataGroup | ) | const |
Update all relevant relperm models using current values of phase volume fraction.
dataGroup | the group storing the required fields |
void geos::CompositionalMultiphaseBase::updateSolidInternalEnergyModel | ( | ObjectManagerBase & | dataGroup | ) | const |
Update all relevant solid internal energy models using current values of temperature.
dataGroup | the group storing the required fields |
|
virtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented in geos::SolidMechanicsMPM, geos::PhaseFieldDamageFEM, geos::LaplaceBaseH1, geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, geos::HydrofractureSolver< POROMECHANICS_SOLVER >, geos::SinglePhaseBase, geos::ReactiveCompositionalMultiphaseOBL, geos::ProppantTransport, geos::CompositionalMultiphaseBase, geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, geos::SolidMechanicsAugmentedLagrangianContact, geos::SolidMechanicsLagrangianFEM, geos::CoupledSolver< SOLVERS >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SolidMechanicsLagrangianFEM, PhaseFieldDamageFEM >, geos::CoupledSolver< ProppantTransport, FlowSolverBase >, geos::CoupledSolver< RESERVOIR_SOLVER, WELL_SOLVER >, geos::CoupledSolver< CompositionalMultiphaseBase, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsEmbeddedFractures >, geos::CoupledSolver< FLOW_SOLVER, SolidMechanicsLagrangianFEM >, geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >, geos::WellSolverBase, and geos::CompositionalMultiphaseWell.
|
inlineoverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SinglePhasePoromechanicsEmbeddedFractures, geos::SinglePhasePoromechanicsConformingFractures< FLOW_SOLVER >, and geos::HydrofractureSolver< POROMECHANICS_SOLVER >.
Definition at line 203 of file CoupledSolver.hpp.
|
inlineoverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
Reimplemented in geos::SolidMechanicsLagrangeContact, geos::SolidMechanicsEmbeddedFractures, and geos::SolidMechanicsAugmentedLagrangianContact.
Definition at line 145 of file SolidMechanicsLagrangianFEM.hpp.
|
finaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
|
finaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
|
finaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangianFEM >.
|
finaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::CoupledSolver< SinglePhaseBase, SolidMechanicsLagrangeContact >.
|
finaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
|
inlinefinaloverridevirtual |
Recompute all dependent quantities from primary variables (including constitutive models)
domain | the domain containing the mesh and fields |
Reimplemented from geos::PhysicsSolverBase.
Definition at line 123 of file SolidMechanicsMPM.hpp.
bool geos::ReactiveCompositionalMultiphaseOBL::validateDirichletBC | ( | DomainPartition & | domain, |
real64 const | time | ||
) | const |
Function to perform checks before applying Dirichlet type BC's.
domain | the domain |
time | the current time |