cratepy.material.models.interface.ConstitutiveModel¶
- class ConstitutiveModel(strain_formulation, problem_type, material_properties)[source]¶
Bases:
ABC
Constitutive model interface.
- _strain_type¶
Constitutive model strain formulation: infinitesimal strain formulation (‘infinitesimal’), finite strain formulation (‘finite’) or finite strain formulation through kinematic extension (infinitesimal constitutive formulation and purely finite strain kinematic extension - ‘finite-kinext’).
- Type:
{‘infinitesimal’, ‘finite’, ‘finite-kinext’}
- _source¶
Material constitutive model source.
- Type:
{‘crate’,}
- get_required_properties()[source]¶
abstract: Get constitutive model material properties and constitutive options.
- state_update(self, inc_strain, state_variables_old, su_max_n_iterations=20, su_conv_tol=1e-6)[source]¶
abstract: Perform material constitutive model state update.
Constructor.
- Parameters:
strain_formulation ({'infinitesimal', 'finite'}) – Problem strain formulation.
problem_type (int) – Problem type: 2D plane strain (1), 2D plane stress (2), 2D axisymmetric (3) and 3D (4).
material_properties (dict) – Constitutive model material properties (key, str) values (item, {int, float, bool}).
List of Public Methods
Constitutive model material properties.
Get constitutive model name.
Get constitutive model material properties and constitutive options.
Get material constitutive model source.
Get material constitutive model strain formulation.
Get initialized material constitutive model state variables.
Perform material constitutive model state update.
Methods
- abstract __init__(strain_formulation, problem_type, material_properties)[source]¶
Constructor.
- Parameters:
strain_formulation ({'infinitesimal', 'finite'}) – Problem strain formulation.
problem_type (int) – Problem type: 2D plane strain (1), 2D plane stress (2), 2D axisymmetric (3) and 3D (4).
material_properties (dict) – Constitutive model material properties (key, str) values (item, {int, float, bool}).
- get_material_properties()[source]¶
Constitutive model material properties.
- Returns:
material_properties – Constitutive model material properties (key, str) values (item, {int, float, bool}).
- Return type:
- get_name()[source]¶
Get constitutive model name.
- Returns:
name – Constitutive model name.
- Return type:
- abstract static get_required_properties()[source]¶
Get constitutive model material properties and constitutive options.
- Returns:
material_properties (list[str]) – Constitutive model material properties names (str).
constitutive_options (dict) – Constitutive options (key, str) and available specifications (item, tuple[str]).
- get_source()[source]¶
Get material constitutive model source.
- Returns:
source – Material constitutive model source.
- Return type:
{‘crate’,}
- get_strain_type()[source]¶
Get material constitutive model strain formulation.
- Returns:
strain_type – Constitutive model strain formulation: infinitesimal strain formulation (‘infinitesimal’), finite strain formulation (‘finite’) or finite strain formulation through kinematic extension (infinitesimal constitutive formulation and purely finite strain kinematic extension - ‘finite-kinext’).
- Return type:
{‘infinitesimal’, ‘finite’, ‘finite-kinext’}
- abstract state_init()[source]¶
Get initialized material constitutive model state variables.
- Returns:
state_variables_init – Initialized material constitutive model state variables.
- Return type:
- abstract state_update(inc_strain, state_variables_old, su_max_n_iterations=20, su_conv_tol=1e-06)[source]¶
Perform material constitutive model state update.
- Parameters:
inc_strain (numpy.ndarray (2d)) – Incremental strain second-order tensor.
state_variables_old (dict) – Last converged material constitutive model state variables.
su_max_n_iterations (int, default=20) – State update maximum number of iterations.
su_conv_tol (float, default=1e-6) – State update convergence tolerance.
- Returns:
state_variables (dict) – Material constitutive model state variables.
consistent_tangent_mf (numpy.ndarray (2d)) – Material constitutive model consistent tangent modulus in matricial form.