Homogenizers API
Tangent-plane equivalent-stiffness homogenizers.
HomogenizationFailure
Bases: Exception
Base exception for homogenization failures.
HomogenizationInputError
Bases: HomogenizationFailure, ValueError
Raised when a homogenizer receives malformed or unsupported input.
ValidityContext
dataclass
Optional geometric scale data for tangent-plane validity checks.
characteristic_height is a stiffness or stiffener height scale, pitch is
the repeated-cell spacing, min_radius is the smallest local curvature
radius, and response_length is the intended structural response length
such as a buckle wavelength or analysis feature size.
characteristic_height = None
class-attribute
instance-attribute
min_radius = None
class-attribute
instance-attribute
pitch = None
class-attribute
instance-attribute
response_length = None
class-attribute
instance-attribute
__init__(characteristic_height=None, pitch=None, min_radius=None, response_length=None)
__post_init__()
ValidityThresholds
dataclass
Default warning thresholds for tangent-plane scale-separation checks.
coupling_ratio = 0.1
class-attribute
instance-attribute
h_over_R = 0.05
class-attribute
instance-attribute
p_over_L_response = 0.05
class-attribute
instance-attribute
p_over_R = 0.05
class-attribute
instance-attribute
__init__(h_over_R=0.05, p_over_R=0.05, p_over_L_response=0.05, coupling_ratio=0.1)
__post_init__()
ValidityReport
dataclass
Machine-readable validity diagnostics attached to a homogenized result.
coupling_ratios
instance-attribute
h_over_R
instance-attribute
p_over_L_response
instance-attribute
p_over_R
instance-attribute
warnings
instance-attribute
__init__(h_over_R, p_over_R, p_over_L_response, coupling_ratios, warnings)
__post_init__()
HomogenizationResult
dataclass
A homogenization result and its verification context.
The stiffness is returned with validity attached so warnings remain available
when only result.stiffness is passed to fields, exports, or downstream tools.
assumptions
instance-attribute
coefficients
property
Return the homogenized ABD stiffness terms as named scalars.
diagnostics
instance-attribute
source
instance-attribute
stiffness
instance-attribute
validity
instance-attribute
__init__(stiffness, validity, diagnostics, assumptions, source)
__post_init__()
orthotropic_coefficients(*, tolerance=1e-09)
Return aligned orthotropic shell coefficients for stiffness.
reduced_orthotropic_properties(t_eff, *, tolerance=1e-09)
Return membrane-equivalent orthotropic properties for stiffness.
Homogenizer
Bases: Protocol
Protocol for tangent-plane homogenizers.
compute(cell, *, validity_context=None)
Compute an equivalent ABD stiffness for a canonical unit cell.
EnergyHomogenizer
dataclass
Reference tangent-plane energy-equivalence homogenizer.
Computes an ABDStiffness by adding skin stiffness and member energy
contributions over a CanonicalUnitCell.
thresholds = field(default_factory=ValidityThresholds)
class-attribute
instance-attribute
__init__(thresholds=ValidityThresholds())
compute(cell, *, validity_context=None)
DirectECHomogenizer
dataclass
Direct equilibrium-compatibility homogenizer for straight member families.
Use this path for supported straight-family comparisons or accelerators, not as a replacement for the more general energy cell path.
thresholds = field(default_factory=ValidityThresholds)
class-attribute
instance-attribute
__init__(thresholds=ValidityThresholds())
compute(*, skin, families, validity_context=None, convention=DEFAULT_STRAIN_CONVENTION)
validity_report_for_stiffness(stiffness, *, context=None, thresholds=None)
Return tangent-plane validity diagnostics for an existing ABD stiffness.