fedoo.constitutivelaw.ShellLaminateNonLinear
- class ShellLaminateNonLinear(list_mat, list_thickness, n_thickness_points=3, k=1, name='', *, output_points=None, n_points=3)
Layered shell integrated from nonlinear plane-stress material points.
Each layer owns an independent copy of its material law and its internal variables. Membrane and bending stresses and tangents are integrated at Gauss–Legendre points in every layer. Transverse shear is treated elastically using the three-dimensional initial tangent of each material and the shell correction factor
k.This implementation is restricted to small-strain material laws. For plasticity (or any law needing a plane-stress return mapping) use a Simcoon law, e.g.
fedoo.constitutivelaw.Simcoon("EPICP", props); the pedagogicalElastoPlasticityis 3D-only and does not support"2Dstress".- Parameters:
list_mat (sequence of ConstitutiveLaw or str) – Material law, or registered material name, for every layer, ordered from the bottom to the top surface.
list_thickness (sequence of float) – Thickness of every layer.
n_thickness_points (int or sequence of int, default=3) – Number of Gauss–Legendre points in each layer.
k (float, default=1) – Transverse shear correction factor.
name (str, optional) – Name of the shell constitutive law.
- __init__(list_mat, list_thickness, n_thickness_points=3, k=1, name='', *, output_points=None, n_points=3)
Methods
Return a dict with all the known ConstitutiveLaw (with a name).
Return material frames, resolved at
assemblyGauss points.Return (6, thickness point, shell GP) tensors and point metadata.
ShellLaminateNonLinear.get_strain(assembly, ...)Return the last computed strain associated to the given assembly.
ShellLaminateNonLinear.get_stress(assembly, ...)Recover local stress at normalized thickness position(s).
Return layerwise stresses at one shell Gauss point.
ShellLaminateNonLinear.initialize(assembly, pb)Initialize the constitutive law for the current problem.
Actual thickness stresses, including elastic transverse shear.
Reset the constitutive law.
Numeric, material-independent information for saved shell recovery.
Define the material coordinate frame.
ShellLaminateNonLinear.set_start(assembly, pb)Begin a new time iteration.
ShellLaminateNonLinear.to_start(assembly, pb)Restart the current time iteration.
ShellLaminateNonLinear.update(assembly, pb)Update shell stress from the strain computed by the weak form.
Mass per unit midsurface area.
Layer materials in stacking order; required for linear laminate recovery.
Output sampling count per layer, an integer of at least two.
Name of the constitutive law.
Normalized thickness positions saved when output position is None.
Mass moment of inertia per unit midsurface area.
Shell thickness.
Shear shape factor.
Tag set to True once the law is intialized.