OptimizationBCJPlasticityExt
This extension is meant to provide additional functionality to the base package with the intent of performing optimization studies with the Optimization.jl
and LossFunctions.jl
packages to calibrate material model constants against experimental data. This interface with Optimization.jl
is largely accomplished by overloading three functions from ContinuumMechanicsBase.jl
with the newly defined types in the BCJPlasticity.jl
package:
parameters
,parameter_bounds
, andMaterialOptimizationProblem
Most significant of these overloads is that for parameter_bounds
wherein the default value for lb
of the returned tuple, which represents the lower bounds of possible values during optimization, is constrained to be $[0, \infty)$ to maintain physical admissibility and self-consistency in the constitutive and ISV rate equations.
Functions
Two functions are overloaded for any sub-type of AbstractBCJModel
and AbstractBCJTest
: parameter_bounds
and MaterialOptimizationProblem
. The overload for parameter_bounds
, by default, calls on parameters
which must be overloaded for the appropriate BCJ model.
ContinuumMechanicsBase.MaterialOptimizationProblem
— MethodDispatch for BCJ-specific types and functions.
ContinuumMechanicsBase.parameter_bounds
— MethodSet lower bounds to zero for physical admissibility.
Metals
ContinuumMechanicsBase.parameters
— MethodConstants for temperature equations from Bammann (1990). Note: though not explicitly listed in paper, temperature equations h = C₁₅ * exp(C₁₆ / θ)
and H = C₁₇ * exp(C₁₈ / θ)
are included (c. f. DYNA3D User Manual (1993)).