femlabpy.materials#
Public material-response helpers re-exported for the API surface.
Workflow role#
The package keeps the low-level constitutive routines split across invariant and plasticity modules, but the public API exposes the functions from a single location. This page is therefore the best entry point for readers who want to see which stress-update utilities are intended for direct use from outside the element kernels.
Functions#
|
Split a stress vector into deviatoric part and mean stress. |
|
Split a stress vector into deviatoric part and mean stress. |
|
Differentiate |
|
Return the von Mises equivalent stress for 2D or 3D stress input. |
|
Perform a Drucker-Prager stress correction with Newton iterations. |
|
Perform the legacy plane-stress von Mises return mapping. |
|
Evaluate the legacy von Mises consistency function. |
Function Reference#
- femlabpy.materials.devstress(S)[source]#
Split a stress vector into deviatoric part and mean stress.
- Parameters:
- S:
Stress vector in plane form
[sxx, syy, sxy]or 3D form[sxx, syy, szz, syz, sxz, sxy].
- Returns:
- tuple[ndarray, float]
Deviatoric stress vector and hydrostatic mean stress.
- femlabpy.materials.devstres(S)[source]#
Split a stress vector into deviatoric part and mean stress.
- Parameters:
- S:
Stress vector in plane form
[sxx, syy, sxy]or 3D form[sxx, syy, szz, syz, sxz, sxy].
- Returns:
- tuple[ndarray, float]
Deviatoric stress vector and hydrostatic mean stress.
- femlabpy.materials.dyieldvm(S, G, dL, Sy)[source]#
Differentiate
yieldvm()with respect to the plastic multiplier.- Parameters:
- S, G, dL, Sy:
Same quantities passed to
yieldvm().
- Returns:
- float
Derivative of the consistency residual with respect to
dL.
- femlabpy.materials.eqstress(S) float[source]#
Return the von Mises equivalent stress for 2D or 3D stress input.
- Parameters:
- S:
Stress vector in plane form
[sxx, syy, sxy]or 3D form[sxx, syy, szz, syz, sxz, sxy].
- Returns:
- float
Von Mises equivalent stress.
- femlabpy.materials.stressdp(S, G, Sy0, dE, dS)[source]#
Perform a Drucker-Prager stress correction with Newton iterations.
- Parameters:
- S:
Trial stress vector.
- G:
Material row
[E, nu, Sy0, H, phi].- Sy0:
Current yield stress before the increment.
- dE:
Strain increment at the integration point.
- dS:
Elastic trial stress increment.
- Returns:
- tuple[ndarray, float]
Corrected stress vector and plastic-multiplier increment.
- femlabpy.materials.stressvm(S, G, Sy)[source]#
Perform the legacy plane-stress von Mises return mapping.
- Parameters:
- S:
Trial stress vector.
- G:
Material row
[E, nu, Sy0, H, ...].- Sy:
Current yield stress including prior hardening.
- Returns:
- tuple[ndarray, float]
Updated stress vector and plastic-multiplier increment.
- femlabpy.materials.yieldvm(S, G, dL, Sy)[source]#
Evaluate the legacy von Mises consistency function.
- Parameters:
- S:
Current stress vector in plane form.
- G:
Material row
[E, nu, Sy0, H, ...].- dL:
Plastic-multiplier increment.
- Sy:
Current yield stress including prior hardening.
- Returns:
- float
Residual of the scalar return-mapping equation.