www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ADRadialReturnStressUpdate< compute_stage > Class Template Referenceabstract

ADRadialReturnStressUpdate computes the radial return stress increment for an isotropic elastic-viscoplasticity model after interating on the difference between new and old trial stress increments. More...

#include <ADRadialReturnStressUpdate.h>

Inheritance diagram for ADRadialReturnStressUpdate< compute_stage >:
[legend]

Public Member Functions

 ADRadialReturnStressUpdate (const InputParameters &parameters)
 
virtual void updateState (ADRankTwoTensor &strain_increment, ADRankTwoTensor &inelastic_strain_increment, const ADRankTwoTensor &rotation_increment, ADRankTwoTensor &stress_new, const RankTwoTensor &stress_old, const ADRankFourTensor &elasticity_tensor, const RankTwoTensor &elastic_strain_old) override
 A radial return (J2) mapping method is performed with return mapping iterations. More...
 
virtual Real computeReferenceResidual (const ADReal &effective_trial_stress, const ADReal &scalar_effective_inelastic_strain) override
 Compute a reference quantity to be used for checking relative convergence. More...
 
virtual ADReal minimumPermissibleValue (const ADReal &) const override
 Compute the minimum permissible value of the scalar. More...
 
virtual ADReal maximumPermissibleValue (const ADReal &effective_trial_stress) const override
 Compute the maximum permissible value of the scalar. More...
 
virtual Real computeTimeStepLimit () override
 Compute the limiting value of the time step for this material. More...
 
bool requiresIsotropicTensor () override
 Does the model require the elasticity tensor to be isotropic? More...
 
void setQp (unsigned int qp)
 Sets the value of the global variable _qp for inheriting classes. More...
 
virtual void propagateQpStatefulProperties ()
 If updateState is not called during a timestep, this will be. More...
 
void resetQpProperties () final
 Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten. More...
 
void resetProperties () final
 

Protected Member Functions

virtual void initQpStatefulProperties () override
 
void propagateQpStatefulPropertiesRadialReturn ()
 Propagate the properties pertaining to this intermediate class. More...
 
virtual void computeStressInitialize (const ADReal &, const ADRankFourTensor &)
 Perform any necessary initialization before return mapping iterations. More...
 
virtual void computeStressFinalize (const ADRankTwoTensor &)
 Perform any necessary steps to finalize state after return mapping iterations. More...
 
void outputIterationSummary (std::stringstream *iter_output, const unsigned int total_it) override
 Output summary information for the convergence history of the model. More...
 
 ADMaterialProperty (Real) &_effective_inelastic_strain
 
void returnMappingSolve (const ADReal &effective_trial_stress, ADReal &scalar, const ConsoleStream &console)
 Perform the return mapping iterations. More...
 
virtual ADReal initialGuess (const ADReal &)
 Compute an initial guess for the value of the scalar. More...
 
virtual ADReal computeResidual (const ADReal &effective_trial_stress, const ADReal &scalar)=0
 Compute the residual for a predicted value of the scalar. More...
 
virtual ADReal computeDerivative (const ADReal &effective_trial_stress, const ADReal &scalar)=0
 Compute the derivative of the residual as a function of the scalar variable. More...
 
virtual void iterationFinalize (ADReal)
 Finalize internal state variables for a model for a given iteration. More...
 

Protected Attributes

ADReal _three_shear_modulus
 3 * shear modulus More...
 
const MaterialProperty< Real > & _effective_inelastic_strain_old
 
Real _max_inelastic_increment
 
 usingStressUpdateBaseMembers
 
 usingSingleVariableReturnMappingSolutionMembers
 
const std::string _base_name
 Name used as a prefix for all material properties related to the stress update model. More...
 
 usingMaterialMembers
 
bool _check_range
 Whether to check to see whether iterative solution is within admissible range, and set within that range if outside. More...
 
bool _line_search
 Whether to use line searches to improve convergence. More...
 
bool _bracket_solution
 Whether to save upper and lower bounds of root for scalar, and set solution to the midpoint between those bounds if outside them. More...
 

Detailed Description

template<ComputeStage compute_stage>
class ADRadialReturnStressUpdate< compute_stage >

ADRadialReturnStressUpdate computes the radial return stress increment for an isotropic elastic-viscoplasticity model after interating on the difference between new and old trial stress increments.

This radial return mapping class acts as a base class for the radial return creep and plasticity classes / combinations. The stress increment computed by ADRadialReturnStressUpdate is used by ComputeMultipleInelasticStress which computes the elastic stress for finite strains. This return mapping class is acceptable for finite strains but not total strains. This class is based on the Elasto-viscoplasticity algorithm in F. Dunne and N. Petrinic's Introduction to Computational Plasticity (2004) Oxford University Press.

Definition at line 23 of file ADRadialReturnStressUpdate.h.

Constructor & Destructor Documentation

◆ ADRadialReturnStressUpdate()

template<ComputeStage compute_stage>
ADRadialReturnStressUpdate< compute_stage >::ADRadialReturnStressUpdate ( const InputParameters &  parameters)

Definition at line 33 of file ADRadialReturnStressUpdate.C.

37  _effective_inelastic_strain(adDeclareADProperty<Real>(
38  _base_name + adGetParam<std::string>("effective_inelastic_strain_name"))),
39  _effective_inelastic_strain_old(adGetMaterialPropertyOld<Real>(
40  _base_name + adGetParam<std::string>("effective_inelastic_strain_name"))),
41  _max_inelastic_increment(adGetParam<Real>("max_inelastic_increment"))
42 {
43 }
const std::string _base_name
Name used as a prefix for all material properties related to the stress update model.
ADStressUpdateBase is a material that is not called by MOOSE because of the compute=false flag set in...
const MaterialProperty< Real > & _effective_inelastic_strain_old
Base class that provides capability for Newton return mapping iterations on a single variable...

Member Function Documentation

◆ ADMaterialProperty()

template<ComputeStage compute_stage>
ADRadialReturnStressUpdate< compute_stage >::ADMaterialProperty ( Real  ) &
protected

◆ computeDerivative()

template<ComputeStage compute_stage>
virtual ADReal ADSingleVariableReturnMappingSolution< compute_stage >::computeDerivative ( const ADReal &  effective_trial_stress,
const ADReal &  scalar 
)
protectedpure virtualinherited

Compute the derivative of the residual as a function of the scalar variable.

The residual should be in strain increment units for all models for consistency.

Parameters
effective_trial_stressEffective trial stress
scalarInelastic strain increment magnitude being solved for

Implemented in ADPowerLawCreepStressUpdate< compute_stage >.

◆ computeReferenceResidual()

template<ComputeStage compute_stage>
Real ADRadialReturnStressUpdate< compute_stage >::computeReferenceResidual ( const ADReal &  effective_trial_stress,
const ADReal &  scalar 
)
overridevirtual

Compute a reference quantity to be used for checking relative convergence.

This should be in strain increment units for all models for consistency.

Parameters
effective_trial_stressEffective trial stress
scalarInelastic strain increment magnitude being solved for

Implements ADSingleVariableReturnMappingSolution< compute_stage >.

Definition at line 115 of file ADRadialReturnStressUpdate.C.

117 {
118  return MetaPhysicL::raw_value(effective_trial_stress / _three_shear_modulus) -
119  MetaPhysicL::raw_value(scalar_effective_inelastic_strain);
120 }
ADReal _three_shear_modulus
3 * shear modulus

◆ computeResidual()

template<ComputeStage compute_stage>
virtual ADReal ADSingleVariableReturnMappingSolution< compute_stage >::computeResidual ( const ADReal &  effective_trial_stress,
const ADReal &  scalar 
)
protectedpure virtualinherited

Compute the residual for a predicted value of the scalar.

This residual should be in strain increment units for all models for consistency.

Parameters
effective_trial_stressEffective trial stress
scalarInelastic strain increment magnitude being solved for

Implemented in ADPowerLawCreepStressUpdate< compute_stage >.

◆ computeStressFinalize()

template<ComputeStage compute_stage>
virtual void ADRadialReturnStressUpdate< compute_stage >::computeStressFinalize ( const ADRankTwoTensor &  )
inlineprotectedvirtual

Perform any necessary steps to finalize state after return mapping iterations.

Parameters
inelasticStrainIncrementInelastic strain increment

Reimplemented in ADRadialReturnCreepStressUpdateBase< compute_stage >.

Definition at line 113 of file ADRadialReturnStressUpdate.h.

113 {}

◆ computeStressInitialize()

template<ComputeStage compute_stage>
virtual void ADRadialReturnStressUpdate< compute_stage >::computeStressInitialize ( const ADReal &  ,
const ADRankFourTensor &   
)
inlineprotectedvirtual

Perform any necessary initialization before return mapping iterations.

Parameters
effective_trial_stressEffective trial stress
elasticityTensorElasticity tensor

Reimplemented in ADPowerLawCreepStressUpdate< compute_stage >.

Definition at line 104 of file ADRadialReturnStressUpdate.h.

106  {
107  }

◆ computeTimeStepLimit()

template<ComputeStage compute_stage>
Real ADRadialReturnStressUpdate< compute_stage >::computeTimeStepLimit ( )
overridevirtual

Compute the limiting value of the time step for this material.

Returns
Limiting time step

Reimplemented from ADStressUpdateBase< compute_stage >.

Definition at line 132 of file ADRadialReturnStressUpdate.C.

133 {
134  Real scalar_inelastic_strain_incr = MetaPhysicL::raw_value(_effective_inelastic_strain[_qp]) -
136  if (MooseUtils::absoluteFuzzyEqual(scalar_inelastic_strain_incr, 0.0))
137  return std::numeric_limits<Real>::max();
138 
139  return _dt * _max_inelastic_increment / scalar_inelastic_strain_incr;
140 }
const MaterialProperty< Real > & _effective_inelastic_strain_old

◆ initialGuess()

template<ComputeStage compute_stage>
virtual ADReal ADSingleVariableReturnMappingSolution< compute_stage >::initialGuess ( const ADReal &  )
inlineprotectedvirtualinherited

Compute an initial guess for the value of the scalar.

For some cases, an intellegent starting point can provide enhanced robustness in the Newton iterations. This is also an opportunity for classes that derive from this to perform initialization tasks.

Parameters
effective_trial_stressEffective trial stress

Definition at line 79 of file ADSingleVariableReturnMappingSolution.h.

79 { return 0.0; }

◆ initQpStatefulProperties()

template<ComputeStage compute_stage>
void ADRadialReturnStressUpdate< compute_stage >::initQpStatefulProperties ( )
overrideprotectedvirtual

Reimplemented in ADRadialReturnCreepStressUpdateBase< compute_stage >.

Definition at line 47 of file ADRadialReturnStressUpdate.C.

Referenced by ADRadialReturnCreepStressUpdateBase< compute_stage >::initQpStatefulProperties().

48 {
49  _effective_inelastic_strain[_qp] = 0.0;
50 }

◆ iterationFinalize()

template<ComputeStage compute_stage>
virtual void ADSingleVariableReturnMappingSolution< compute_stage >::iterationFinalize ( ADReal  )
inlineprotectedvirtualinherited

Finalize internal state variables for a model for a given iteration.

Parameters
scalarInelastic strain increment magnitude being solved for

Definition at line 111 of file ADSingleVariableReturnMappingSolution.h.

111 {}

◆ maximumPermissibleValue()

template<ComputeStage compute_stage>
ADReal ADRadialReturnStressUpdate< compute_stage >::maximumPermissibleValue ( const ADReal &  effective_trial_stress) const
overridevirtual

Compute the maximum permissible value of the scalar.

For some models, the magnitude of this may be known.

Parameters
effective_trial_stressEffective trial stress

Reimplemented from ADSingleVariableReturnMappingSolution< compute_stage >.

Definition at line 124 of file ADRadialReturnStressUpdate.C.

126 {
127  return effective_trial_stress / _three_shear_modulus;
128 }
ADReal _three_shear_modulus
3 * shear modulus

◆ minimumPermissibleValue()

template<ComputeStage compute_stage>
virtual ADReal ADRadialReturnStressUpdate< compute_stage >::minimumPermissibleValue ( const ADReal &  effective_trial_stress) const
inlineoverridevirtual

Compute the minimum permissible value of the scalar.

For some models, the magnitude of this may be known.

Parameters
effective_trial_stressEffective trial stress

Reimplemented from ADSingleVariableReturnMappingSolution< compute_stage >.

Definition at line 68 of file ADRadialReturnStressUpdate.h.

69  {
70  return 0.0;
71  }

◆ outputIterationSummary()

template<ComputeStage compute_stage>
void ADRadialReturnStressUpdate< compute_stage >::outputIterationSummary ( std::stringstream *  iter_output,
const unsigned int  total_it 
)
overrideprotectedvirtual

Output summary information for the convergence history of the model.

Parameters
iter_outputOutput stream
total_itTotal iteration count

Reimplemented from ADSingleVariableReturnMappingSolution< compute_stage >.

Definition at line 144 of file ADRadialReturnStressUpdate.C.

146 {
147  if (iter_output)
148  {
149  *iter_output << "At element " << _current_elem->id() << " _qp=" << _qp << " Coordinates "
150  << _q_point[_qp] << " block=" << _current_elem->subdomain_id() << '\n';
151  }
153  total_it);
154 }
virtual void outputIterationSummary(std::stringstream *iter_output, const unsigned int total_it)
Output summary information for the convergence history of the model.

◆ propagateQpStatefulProperties()

template<ComputeStage compute_stage>
void ADStressUpdateBase< compute_stage >::propagateQpStatefulProperties ( )
virtualinherited

If updateState is not called during a timestep, this will be.

This method allows derived classes to set internal parameters from their Old values, for instance

Reimplemented in ADRadialReturnCreepStressUpdateBase< compute_stage >.

Definition at line 49 of file ADStressUpdateBase.C.

50 {
51  mooseError(
52  "propagateQpStatefulProperties called: it needs to be implemented by your inelastic model");
53 }

◆ propagateQpStatefulPropertiesRadialReturn()

template<ComputeStage compute_stage>
void ADRadialReturnStressUpdate< compute_stage >::propagateQpStatefulPropertiesRadialReturn ( )
protected

Propagate the properties pertaining to this intermediate class.

This is intended to be called from propagateQpStatefulProperties() in classes that inherit from this one. This is intentionally named uniquely because almost all models that derive from this class have their own stateful properties, and this forces them to define their own implementations of propagateQpStatefulProperties().

Definition at line 54 of file ADRadialReturnStressUpdate.C.

55 {
56  _effective_inelastic_strain[_qp] = _effective_inelastic_strain_old[_qp];
57 }
const MaterialProperty< Real > & _effective_inelastic_strain_old

◆ requiresIsotropicTensor()

template<ComputeStage compute_stage>
bool ADRadialReturnStressUpdate< compute_stage >::requiresIsotropicTensor ( )
inlineoverridevirtual

Does the model require the elasticity tensor to be isotropic?

Implements ADStressUpdateBase< compute_stage >.

Definition at line 84 of file ADRadialReturnStressUpdate.h.

84 { return true; }

◆ resetProperties()

template<ComputeStage compute_stage>
void ADStressUpdateBase< compute_stage >::resetProperties ( )
inlinefinalinherited

Definition at line 102 of file ADStressUpdateBase.h.

102 {}

◆ resetQpProperties()

template<ComputeStage compute_stage>
void ADStressUpdateBase< compute_stage >::resetQpProperties ( )
inlinefinalinherited

Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten.

Definition at line 101 of file ADStressUpdateBase.h.

101 {}

◆ returnMappingSolve()

template<ComputeStage compute_stage>
void ADSingleVariableReturnMappingSolution< compute_stage >::returnMappingSolve ( const ADReal &  effective_trial_stress,
ADReal &  scalar,
const ConsoleStream &  console 
)
protectedinherited

Perform the return mapping iterations.

Parameters
effective_trial_stressEffective trial stress
scalarInelastic strain increment magnitude being solved for
consoleConsole output

Definition at line 94 of file ADSingleVariableReturnMappingSolution.C.

96 {
97  // construct the stringstream here only if the debug level is set to ALL
98  std::stringstream * iter_output =
99  (_internal_solve_output_on == InternalSolveOutput::ALWAYS) ? new std::stringstream : nullptr;
100 
101  // do the internal solve and capture iteration info during the first round
102  // iff full history output is requested regardless of whether the solve failed or succeeded
103  auto solve_state = internalSolve(effective_trial_stress,
104  scalar,
105  _internal_solve_full_iteration_history ? iter_output : nullptr);
106  if (solve_state != SolveState::SUCCESS &&
108  {
109  // output suppressed by user, throw immediately
111  throw MooseException("");
112 
113  // user expects some kind of output, if necessary setup output stream now
114  if (!iter_output)
115  iter_output = new std::stringstream;
116 
117  // add the appropriate error message to the output
118  switch (solve_state)
119  {
120  case SolveState::NAN_INF:
121  *iter_output << "Encountered inf or nan in material return mapping iterations.\n";
122  break;
123 
125  *iter_output << "Exceeded maximum iterations in material return mapping iterations.\n";
126  break;
127 
128  default:
129  mooseError("Unhandled solver state");
130  }
131 
132  // if full history output is only requested for failed solves we have to repeat
133  // the solve a second time
135  internalSolve(effective_trial_stress, scalar, iter_output);
136 
137  // Append summary and throw exception
138  outputIterationSummary(iter_output, _iteration);
139  throw MooseException(iter_output->str());
140  }
141 
143  {
144  // the solve did not fail but the user requested debug output anyways
145  outputIterationSummary(iter_output, _iteration);
146  console << iter_output->str();
147  }
148 }
virtual void outputIterationSummary(std::stringstream *iter_output, const unsigned int total_it)
Output summary information for the convergence history of the model.
enum ADSingleVariableReturnMappingSolution::InternalSolveOutput _internal_solve_output_on
const bool _internal_solve_full_iteration_history
Whether to output iteration information all the time (regardless of whether iterations converge) ...
SolveState internalSolve(const ADReal effective_trial_stress, ADReal &scalar, std::stringstream *iter_output=nullptr)
Method called from within this class to perform the actual return mappping iterations.

◆ setQp()

template<ComputeStage compute_stage>
void ADStressUpdateBase< compute_stage >::setQp ( unsigned int  qp)
inherited

Sets the value of the global variable _qp for inheriting classes.

Definition at line 42 of file ADStressUpdateBase.C.

43 {
44  _qp = qp;
45 }

◆ updateState()

template<ComputeStage compute_stage>
void ADRadialReturnStressUpdate< compute_stage >::updateState ( ADRankTwoTensor &  strain_increment,
ADRankTwoTensor &  inelastic_strain_increment,
const ADRankTwoTensor &  rotation_increment,
ADRankTwoTensor &  stress_new,
const RankTwoTensor stress_old,
const ADRankFourTensor &  elasticity_tensor,
const RankTwoTensor elastic_strain_old 
)
overridevirtual

A radial return (J2) mapping method is performed with return mapping iterations.

Parameters
strain_incrementSum of elastic and inelastic strain increments
inelastic_strain_incrementInelastic strain increment calculated by this class
rotationincrement Not used by this class
stress_newNew trial stress from pure elastic calculation
stress_oldOld state of stress
elasticity_tensorRank 4 C_{ijkl}, must be isotropic
elastic_strain_oldOld state of total elastic strain

Implements ADStressUpdateBase< compute_stage >.

Definition at line 61 of file ADRadialReturnStressUpdate.C.

69 {
70  // compute the deviatoric trial stress and trial strain from the current intermediate
71  // configuration
72  ADRankTwoTensor deviatoric_trial_stress = stress_new.deviatoric();
73 
74  // compute the effective trial stress
75  ADReal dev_trial_stress_squared =
76  deviatoric_trial_stress.doubleContraction(deviatoric_trial_stress);
77  ADReal effective_trial_stress = MooseUtils::absoluteFuzzyEqual(dev_trial_stress_squared, 0.0)
78  ? 0.0
79  : std::sqrt(3.0 / 2.0 * dev_trial_stress_squared);
80 
81  // Set the value of 3 * shear modulus for use as a reference residual value
83 
84  computeStressInitialize(effective_trial_stress, elasticity_tensor);
85 
86  // Use Newton iteration to determine the scalar effective inelastic strain increment
87  ADReal scalar_effective_inelastic_strain = 0.0;
88  if (!MooseUtils::absoluteFuzzyEqual(effective_trial_stress, 0.0))
89  {
90  returnMappingSolve(effective_trial_stress, scalar_effective_inelastic_strain, _console);
91  if (scalar_effective_inelastic_strain != 0.0)
92  inelastic_strain_increment =
93  deviatoric_trial_stress *
94  (1.5 * scalar_effective_inelastic_strain / effective_trial_stress);
95  else
96  inelastic_strain_increment.zero();
97  }
98  else
99  inelastic_strain_increment.zero();
100 
101  strain_increment -= inelastic_strain_increment;
102  _effective_inelastic_strain[_qp] =
103  _effective_inelastic_strain_old[_qp] + scalar_effective_inelastic_strain;
104 
105  // Use the old elastic strain here because we require tensors used by this class
106  // to be isotropic and this method natively allows for changing in time
107  // elasticity tensors
108  stress_new = elasticity_tensor * (elastic_strain_old + strain_increment);
109 
110  computeStressFinalize(inelastic_strain_increment);
111 }
auto getIsotropicShearModulus(const T &elasticity_tensor) -> decltype(elasticity_tensor(0, 1, 0, 1))
Get the shear modulus for an isotropic elasticity tensor param elasticity_tensor the tensor (must be ...
virtual void computeStressFinalize(const ADRankTwoTensor &)
Perform any necessary steps to finalize state after return mapping iterations.
void returnMappingSolve(const ADReal &effective_trial_stress, ADReal &scalar, const ConsoleStream &console)
Perform the return mapping iterations.
const MaterialProperty< Real > & _effective_inelastic_strain_old
virtual void computeStressInitialize(const ADReal &, const ADRankFourTensor &)
Perform any necessary initialization before return mapping iterations.
ADReal _three_shear_modulus
3 * shear modulus

Member Data Documentation

◆ _base_name

template<ComputeStage compute_stage>
const std::string ADStressUpdateBase< compute_stage >::_base_name
protectedinherited

Name used as a prefix for all material properties related to the stress update model.

Definition at line 107 of file ADStressUpdateBase.h.

◆ _bracket_solution

template<ComputeStage compute_stage>
bool ADSingleVariableReturnMappingSolution< compute_stage >::_bracket_solution
protectedinherited

Whether to save upper and lower bounds of root for scalar, and set solution to the midpoint between those bounds if outside them.

Definition at line 128 of file ADSingleVariableReturnMappingSolution.h.

◆ _check_range

template<ComputeStage compute_stage>
bool ADSingleVariableReturnMappingSolution< compute_stage >::_check_range
protectedinherited

Whether to check to see whether iterative solution is within admissible range, and set within that range if outside.

Definition at line 121 of file ADSingleVariableReturnMappingSolution.h.

◆ _effective_inelastic_strain_old

template<ComputeStage compute_stage>
const MaterialProperty<Real>& ADRadialReturnStressUpdate< compute_stage >::_effective_inelastic_strain_old
protected

Definition at line 122 of file ADRadialReturnStressUpdate.h.

◆ _line_search

template<ComputeStage compute_stage>
bool ADSingleVariableReturnMappingSolution< compute_stage >::_line_search
protectedinherited

Whether to use line searches to improve convergence.

Definition at line 124 of file ADSingleVariableReturnMappingSolution.h.

◆ _max_inelastic_increment

template<ComputeStage compute_stage>
Real ADRadialReturnStressUpdate< compute_stage >::_max_inelastic_increment
protected

Definition at line 123 of file ADRadialReturnStressUpdate.h.

◆ _three_shear_modulus

template<ComputeStage compute_stage>
ADReal ADRadialReturnStressUpdate< compute_stage >::_three_shear_modulus
protected

3 * shear modulus

Definition at line 119 of file ADRadialReturnStressUpdate.h.

◆ usingMaterialMembers

template<ComputeStage compute_stage>
ADStressUpdateBase< compute_stage >::usingMaterialMembers
protectedinherited

Definition at line 109 of file ADStressUpdateBase.h.

◆ usingSingleVariableReturnMappingSolutionMembers

template<ComputeStage compute_stage>
ADRadialReturnStressUpdate< compute_stage >::usingSingleVariableReturnMappingSolutionMembers
protected

Definition at line 126 of file ADRadialReturnStressUpdate.h.

◆ usingStressUpdateBaseMembers

template<ComputeStage compute_stage>
ADRadialReturnStressUpdate< compute_stage >::usingStressUpdateBaseMembers
protected

Definition at line 125 of file ADRadialReturnStressUpdate.h.


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