Skip to content

Isotropic Elasticity 1D

Bases: Material

Isotropic elastic material in 1D.

Parameters:

  • E (Tensor | float) –

    Young's modulus. Shape: () for a scalar or (N,) for a batch of materials.

  • rho (Tensor | float, default: 1.0 ) –

    Mass density. Default is 1.0.

Notes
  • Small-strain assumption.
  • No internal state variables (n_state = 0).
  • The stiffness "tensor" is simply \(C_{0000} = E\).
1D stiffness tensor

The 1D stiffness "tensor" is simply \(C_{0000} = E\).

vectorize(n_elem)

Returns a vectorized copy of the material for n_elem elements.

Parameters:

  • n_elem (int) –

    Number of elements to vectorize the material for.

Returns:

  • IsotropicElasticity1D ( IsotropicElasticity1D ) –

    A new material instance with vectorized properties.

step(H_inc, F, stress, state, de0, cl, iter)

Performs an incremental step for the 1D elastic material.

The stress is updated as $$ \sigma_{n+1} = \sigma_n + E \, (\Delta\varepsilon - \Delta\varepsilon^0) $$ with algorithmic tangent \(\frac{\partial \Delta\sigma} {\partial \Delta H} = E\).

Parameters:

  • H_inc (Tensor) –

    Incremental displacement gradient. Shape: (..., 1, 1).

  • F (Tensor) –

    Current deformation gradient. Shape: (..., 1, 1).

  • stress (Tensor) –

    Current stress tensor. Shape: (..., 1, 1).

  • state (Tensor) –

    Internal state variables (unused). Shape: (..., 0).

  • de0 (Tensor) –

    External strain increment (e.g., thermal). Shape: (..., 1, 1).

  • cl (Tensor) –

    Characteristic lengths. Shape: (..., 1).

  • iter (int) –

    Current iteration number.

Returns:

  • stress_new ( Tensor ) –

    Updated stress tensor. Shape: (..., 1, 1).

  • state_new ( Tensor ) –

    Updated internal state (unchanged). Shape: (..., 0).

  • ddsdde ( Tensor ) –

    Algorithmic tangent stiffness tensor. Shape: (..., 1, 1, 1, 1).