Skip to content

Latest commit

 

History

History
30 lines (24 loc) · 1.97 KB

README.md

File metadata and controls

30 lines (24 loc) · 1.97 KB

MaterialModelsBase

Dev Build Status Coverage

Provide interface to "standard" history dependent mechanical (stress-strain) material models that is independent of the implementation.

Main interface function

material_response(
    [stress_state::AbstractStressState]             # Optional stress state (e.g. plane stress) if full 3d is not desired. 
    m::AbstractMaterial,                            # Describes the specific material and its parameters
    ϵ::Union{SymmetricTensor{2}, Tensor{2}, Vec},   # ϵ (small strain tensor), F (deformation gradient), or u (displacement jump)
    old::AbstractMaterialState,                     # The old material state
    Δt,                                             # The time step
    cache::AbstractMaterialCache,                   # A cache that can be used to reduce allocations inside material_response
    extras::AbstractExtraOutput)                    # Custom struct whose entries can be mutated to provide extra information from material_response's calculations

Dependencies

The dependencies are limited to Tensors.jl and its dependencies to keep the package light-weight.

Limitations

  • Only mechanical materials: stress-strain (continuum elements) or force-displacement (cohesive elements)
  • Gradient-dependent materials are not supported. This restriction would be nice to lift if a suitable interface can be determined.

Acknowledgements

The interface was developed based on MaterialModels.jl