v6.0.0
[6.0.0] - 2022-11-20
Added
- Add
project(mean=True)
to project cell mean-values to mesh-points. Nowproject()
supports Triangles and Tetrahedrons. - Add
RegionBoundary.mesh_faces()
for a mesh with face-cells on the selected boundary of a region. - Add pseudo-elastic material
OgdenRoxburgh()
which may be used withSolidBodyNearlyIncompressible()
. - Add
umat = UserMaterial(stress, elasticity, nstatevars=0, **kwargs)
with user-defined functions for the (first Piola-Kirchhoff) stress tensorP, statevars_new = umat.gradient([F, statevars], **kwargs)
and the according fourth-order elasticity tensorA = umat.hessian([F, statevars], **kwargs)
based on the deformation gradient. - Add
UserMaterialStrain()
for small-strain based user-defined material formulations with an umat-interface suitable for elastic-plastic frameworks. - Add
LinearElasticPlasticIsotropicHardening()
which is based onUserMaterialStrain()
andconstitution.linear_elastic_plastic_isotropic_hardening()
. - Add new math helpers
math.ravel()
andmath.reshape()
. - Add optional axis argument on which the norm is evaluated
math.norm(axis=None)
.
Changed
- Unify material definition with methods for the stress
P, statevars_new = umat.gradient([F, statevars])
and the elasticity tensorA = umat.hessian([F, statevars])
. This breaks support for materials defined by matadi<=0.1.10. - Do not broadcast the (constant) elasticity tensor for linear-elastic materials as
einsumt>=0.9.3
supports broadcasting along the parallel-executed dimension. - Change not-updating attribute of
FieldContainer(fields).values
to a methodFieldContainer(fields).values()
which returns the current field values.
Removed
- Remove unused
SolidBodyTensor()
andSolidBodyTensorNearlyIncompressible()
. - Remove unused
region
argument ofLinearElastic().hessian()
.
Auto-Generated Release-Notes
What's Changed
- Add
project(mean=True)
by @adtzlr in #329 - Add
RegionBoundary.mesh_faces()
by @adtzlr in #334 - Add pseudo-elastic material
OgdenRoxburgh()
by @adtzlr in #335 - Unify
umat
for hyperelastic and tensor-based material formulations by @adtzlr in #339 - Do not broadcast linear-elastic elasticity tensor by @adtzlr in #342
- FieldContainer: Change attribute
values
to methodvalues()
by @adtzlr in #344 - Add
UserMaterialStrain()
by @adtzlr in #346 - Enhance and Fix the Documentation by @adtzlr in #347
Full Changelog: v5.3.1...v6.0.0