4.1.1.6.1.24. pyfem.materials.ViscoPlasticity module
Rate-dependent viscoplastic material model using Perzyna formulation.
This module implements a viscoplastic constitutive model based on the Perzyna overstress theory. The material exhibits rate-dependent plastic flow when the stress exceeds the yield surface, with the viscoplastic strain rate proportional to the overstress.
- class ViscoPlasticity(props)[source]
Bases:
BaseMaterialRate-dependent viscoplastic material model using Perzyna formulation.
This class implements a viscoplastic constitutive model where plastic flow is rate-dependent. The model uses the Perzyna overstress formulation where the viscoplastic strain rate is given by:
d(εᵖ)/dt = γ * <Φ(f)>ⁿ * ∂f/∂σ
where: - γ: fluidity parameter (inverse of viscosity) - Φ(f): overstress function = (f - f_yield) / f_yield - n: rate sensitivity exponent - f: von Mises equivalent stress - <>: Macaulay brackets (returns value if positive, zero otherwise)
The model combines: 1. Elastic behavior below yield stress 2. Rate-dependent plastic flow above yield stress 3. Optional strain hardening
4.1.1.6.1.24. Required Properties
- Efloat
Young’s modulus.
- nufloat
Poisson’s ratio.
- syieldfloat
Initial yield stress (von Mises).
- gammafloat
Fluidity parameter (1/viscosity), controls rate sensitivity. Typical range: 1e-6 to 1e-2 for metals, higher for polymers.
- nfloat, optional
Rate sensitivity exponent. Default: 1.0 (linear viscosity). n > 1 increases rate sensitivity at high overstress.
- hardfloat, optional
Linear hardening modulus. Default: 0.0 (perfectly plastic).
Examples
Material properties in input file:
- <Material>
type = “ViscoPlasticity”; E = 200000.0; nu = 0.3; syield = 250.0; gamma = 0.001; n = 1.0; hard = 1000.0;
</Material>
Notes
For γ → 0, the model approaches rate-independent plasticity
For γ → ∞, the model approaches perfect viscous behavior
The time integration uses a backward Euler scheme for stability
- getStress(kinematics) Tuple[array, array][source]
Compute stress and tangent stiffness for the viscoplastic model.
Uses backward Euler time integration to solve the rate-dependent plastic flow equations. The algorithm includes: 1. Elastic predictor step 2. Check for plastic admissibility 3. Viscoplastic corrector with local Newton iteration
- Parameters:
kinematics (Kinematics) – Kinematics object containing strain increment. Required attributes: - dstrain: strain increment (3 or 6 components)
- Returns:
sigma (ndarray) – Stress tensor (3 or 6 components).
tang (ndarray) – Tangent stiffness matrix (3x3 or 6x6).
Notes
The viscoplastic strain increment is computed using: Δεᵖ = Δt * γ * <(σ_trial - σ_yield)/σ_yield>ⁿ * N
where N is the flow direction (normal to yield surface).