9#ifndef SVZERODSOLVER_MODEL_SPHEREMATERIAL_HPP_
10#define SVZERODSOLVER_MODEL_SPHEREMATERIAL_HPP_
53 const std::vector<std::pair<std::string, InputParameter>>& props);
65 double radius0)
const = 0;
73 static std::unique_ptr<SphereMaterial>
create(
const std::string& type_str);
81 void set_param(
const std::string& name,
double value);
102 MooneyRivlinMaterial()
107 double radius0)
const override;
123 ExponentialMaterial()
130 double radius0)
const override;
model::Parameter source file
SphericalStressResult compute(double radius, double radius0) const override
Compute material stress contributions at the current state.
Definition SphereMaterial.cpp:58
SphericalStressResult compute(double radius, double radius0) const override
Compute material stress contributions at the current state.
Definition SphereMaterial.cpp:36
void set_param(const std::string &name, double value)
Set a scalar parameter value by name.
Definition SphereMaterial.cpp:19
virtual SphericalStressResult compute(double radius, double radius0) const =0
Compute material stress contributions at the current state.
const std::vector< std::pair< std::string, InputParameter > > input_param_properties
Properties of the input parameters for this material [(name, InputParameter), ...].
Definition SphereMaterial.h:45
SphereMaterial(const std::vector< std::pair< std::string, InputParameter > > &props)
Construct a SphereMaterial.
Definition SphereMaterial.cpp:9
static std::unique_ptr< SphereMaterial > create(const std::string &type_str)
Factory: create a material from a type string.
Definition SphereMaterial.cpp:23
std::map< std::string, double > params_
Map of parameter names to their values.
Definition SphereMaterial.h:87
Return type for SphereMaterial::compute.
Definition SphereMaterial.h:25
double C_val
Residual contribution to C vector.
Definition SphereMaterial.h:26
double dC_dy_radius
Derivative w.r.t. radius.
Definition SphereMaterial.h:27