hookeai.simulators.fetorch.material.models.standard.hardening.PiecewiseLinearIHL

class PiecewiseLinearIHL[source]

Bases: IsotropicHardeningLaw

Piecewise linear isotropic strain hardening law.

Compatible with vectorized mapping.

hardening_law(hardening_parameters, acc_p_strain)[source]

Compute yield stress and hardening slope for given plastic strain.

List of Public Methods

hardening_law

Compute yield stress and hardening slope for given plastic strain.

Methods

static _hardening_slope(acc_p_strain, a, b)[source]

Compute hardening slope for given plastic strain.

Extrapolation enforces null hardening slope.

Parameters:
  • acc_p_strain (torch.Tensor(0d)) – Accumulated plastic strain.

  • a (torch.Tensor(1d)) – Hardening law accumulated plastic strain points.

  • b (torch.Tensor(1d)) – Hardening law yield stress points.

Returns:

hard_slope – Material hardening slope.

Return type:

torch.Tensor(0d)

static hardening_law(hardening_parameters, acc_p_strain, is_check_data=False)[source]

Compute yield stress and hardening slope for given plastic strain.

Parameters:
  • hardening_parameters (dict) – Hardening law parameters.

  • acc_p_strain (float) – Accumulated plastic strain.

  • is_check_data (bool, default=False) – If True, then check data required to evaluate strain hardening law.

Returns:

  • yield_stress (float) – Material yield stress.

  • hard_slope (float) – Material hardening slope.