v0.16.3
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
EshelbianPlasticity::IncrementalOptimizationContext Struct Reference

Generic transaction/cache data; contains no constitutive state. More...

#include "users_modules/eshelbian_plasticity/src/IncrementalOptimization.hpp"

Collaboration diagram for EshelbianPlasticity::IncrementalOptimizationContext:
[legend]

Public Member Functions

MoFEMErrorCode rollbackTrial ()
 

Public Attributes

boost::shared_ptr< IncrementalOptimizationProblemproblem
 
SmartPetscObj< Vec > committedControl
 
SmartPetscObj< Vec > candidateControl
 
SmartPetscObj< Vec > gradient
 
SmartPetscObj< Vec > objectiveGradient
 
SmartPetscObj< DM > constraintDM
 
SmartPetscObj< Vec > inequalityConstraints
 
SmartPetscObj< Mat > inequalityJacobian
 
SmartPetscObj< Vec > equilibratedState
 
SmartPetscObj< Vec > referenceControl
 
SmartPetscObj< Vec > baselineState
 
SmartPetscObj< Vec > lastValidState
 
SmartPetscObj< Vec > cachedControl
 
SmartPetscObj< Vec > cachedState
 
double baselineConservativeValue = 0
 
IncrementalObjectiveEvaluation cachedEvaluation
 
EquilibriumSolveFunction stateSolve
 
PetscInt stateSolveCount = 0
 
PetscInt rejectedTrialCount = 0
 
double equilibriumSeconds = 0
 
double gradientAssemblySeconds = 0
 
double equilibriumTolerance = 1e-8
 
bool baselineValid = false
 
bool cacheValid = false
 

Detailed Description

Generic transaction/cache data; contains no constitutive state.

Terminology used below:

Definition at line 151 of file IncrementalOptimization.hpp.

Member Function Documentation

◆ rollbackTrial()

MoFEMErrorCode EshelbianPlasticity::IncrementalOptimizationContext::rollbackTrial ( )

Definition at line 14 of file IncrementalOptimization.cpp.

14 {
17 CHKERR VecGhostUpdateBegin(candidateControl, INSERT_VALUES, SCATTER_FORWARD);
18 CHKERR VecGhostUpdateEnd(candidateControl, INSERT_VALUES, SCATTER_FORWARD);
20}
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define CHKERR
Inline error check.

Member Data Documentation

◆ baselineConservativeValue

double EshelbianPlasticity::IncrementalOptimizationContext::baselineConservativeValue = 0

Conservative value at referenceControl, subtracted from the objective.

Definition at line 183 of file IncrementalOptimization.hpp.

◆ baselineState

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::baselineState

Equilibrated-state snapshot corresponding to referenceControl.

Definition at line 175 of file IncrementalOptimization.hpp.

◆ baselineValid

bool EshelbianPlasticity::IncrementalOptimizationContext::baselineValid = false

Whether the reference objective value and state are initialized.

Definition at line 201 of file IncrementalOptimization.hpp.

◆ cachedControl

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::cachedControl

Control associated with cachedState and cachedEvaluation.

Definition at line 179 of file IncrementalOptimization.hpp.

◆ cachedEvaluation

IncrementalObjectiveEvaluation EshelbianPlasticity::IncrementalOptimizationContext::cachedEvaluation

Values and optional conservative gradient for cachedControl/cachedState. The complete objective gradient is a mutable TAO workspace, not cached.

Definition at line 186 of file IncrementalOptimization.hpp.

◆ cachedState

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::cachedState

Equilibrated state associated with cachedControl.

Definition at line 181 of file IncrementalOptimization.hpp.

◆ cacheValid

bool EshelbianPlasticity::IncrementalOptimizationContext::cacheValid = false

Whether cachedControl exactly identifies a reusable evaluation.

Definition at line 203 of file IncrementalOptimization.hpp.

◆ candidateControl

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::candidateControl

Current TAO trial control, synchronized before physics evaluation.

Definition at line 158 of file IncrementalOptimization.hpp.

◆ committedControl

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::committedControl

Last accepted control; source for rollback after a rejected trial.

Definition at line 156 of file IncrementalOptimization.hpp.

◆ constraintDM

SmartPetscObj<DM> EshelbianPlasticity::IncrementalOptimizationContext::constraintDM

Rectangular problem mapping controls to inequality constraints.

Definition at line 164 of file IncrementalOptimization.hpp.

◆ equilibratedState

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::equilibratedState

Mechanical state equilibrated for candidateControl.

Definition at line 171 of file IncrementalOptimization.hpp.

◆ equilibriumSeconds

double EshelbianPlasticity::IncrementalOptimizationContext::equilibriumSeconds = 0

Accumulated wall time spent in nested equilibrium solves.

Definition at line 195 of file IncrementalOptimization.hpp.

◆ equilibriumTolerance

double EshelbianPlasticity::IncrementalOptimizationContext::equilibriumTolerance = 1e-8

Maximum accepted residual norm from a nested equilibrium solve.

Definition at line 199 of file IncrementalOptimization.hpp.

◆ gradient

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::gradient

Reduced conservative gradient evaluated at candidateControl.

Definition at line 160 of file IncrementalOptimization.hpp.

◆ gradientAssemblySeconds

double EshelbianPlasticity::IncrementalOptimizationContext::gradientAssemblySeconds = 0

Accumulated wall time spent assembling conservative gradients.

Definition at line 197 of file IncrementalOptimization.hpp.

◆ inequalityConstraints

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::inequalityConstraints

Values of the TAO inequalities, using the convention c_i >= 0.

Definition at line 166 of file IncrementalOptimization.hpp.

◆ inequalityJacobian

SmartPetscObj<Mat> EshelbianPlasticity::IncrementalOptimizationContext::inequalityJacobian

Jacobian of the inequality map with respect to the control.

Definition at line 168 of file IncrementalOptimization.hpp.

◆ lastValidState

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::lastValidState

Latest converged state, used to warm-start or restore trial solves.

Definition at line 177 of file IncrementalOptimization.hpp.

◆ objectiveGradient

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::objectiveGradient

Complete objective gradient, including local incremental resistance.

Definition at line 162 of file IncrementalOptimization.hpp.

◆ problem

boost::shared_ptr<IncrementalOptimizationProblem> EshelbianPlasticity::IncrementalOptimizationContext::problem

Physics-specific callbacks used by the generic optimiser.

Definition at line 153 of file IncrementalOptimization.hpp.

◆ referenceControl

SmartPetscObj<Vec> EshelbianPlasticity::IncrementalOptimizationContext::referenceControl

Control defining zero increment at the start of the load step.

Definition at line 173 of file IncrementalOptimization.hpp.

◆ rejectedTrialCount

PetscInt EshelbianPlasticity::IncrementalOptimizationContext::rejectedTrialCount = 0

Number of TAO trials rejected because equilibrium was not obtained.

Definition at line 193 of file IncrementalOptimization.hpp.

◆ stateSolve

EquilibriumSolveFunction EshelbianPlasticity::IncrementalOptimizationContext::stateSolve

Fixed-control state solve callback.

Definition at line 189 of file IncrementalOptimization.hpp.

◆ stateSolveCount

PetscInt EshelbianPlasticity::IncrementalOptimizationContext::stateSolveCount = 0

Number of nested equilibrium solves performed in this context.

Definition at line 191 of file IncrementalOptimization.hpp.


The documentation for this struct was generated from the following files: