weac.components.criteria_config module¶
Module for configuring failure-mode interaction criteria and stress failure envelope selection.
Main fields: - fn, fm: interaction exponents for normal (sigma) and shear (tau) stresses (> 0). - gn, gm: interaction exponents for mode-I (G_I) and mode-II (G_II) energy release rates (> 0). - stress_envelope_method: one of
{“adam_unpublished”, “schottner”, “mede_s-RG1”, “mede_s-RG2”, “mede_s-FCDH”}.
scaling_factor, order_of_magnitude: positive scalars applied to the stress envelope.
- Typical usage:
from weac.components.criteria_config import CriteriaConfig
- config = CriteriaConfig(
stress_envelope_method=”schottner”, scaling_factor=1.0, order_of_magnitude=1.0,
)
See also: - weac.analysis.criteria_evaluator for how these parameters influence failure checks.
- class weac.components.criteria_config.CriteriaConfig(*, fn=2.0, fm=2.0, gn=5.0, gm=2.2222222222222223, stress_envelope_method='adam_unpublished', scaling_factor=1, order_of_magnitude=1)[source]¶
Bases:
BaseModel
Parameters defining the interaction between different failure modes.
- Parameters:
fn (Annotated[float, Gt(gt=0)])
fm (Annotated[float, Gt(gt=0)])
gn (Annotated[float, Gt(gt=0)])
gm (Annotated[float, Gt(gt=0)])
stress_envelope_method (Literal['adam_unpublished', 'schottner', 'mede_s-RG1', 'mede_s-RG2', 'mede_s-FCDH'])
scaling_factor (Annotated[float, Gt(gt=0)])
order_of_magnitude (Annotated[float, Gt(gt=0)])
- fn¶
Failure mode interaction exponent for normal stress (sigma). Default is 2.0.
- Type:
float
- fm¶
Failure mode interaction exponent for shear stress (tau). Default is 2.0.
- Type:
float
- gn¶
Failure mode interaction exponent for closing energy release rate (G_I). Default is 5.0.
- Type:
float
- gm¶
Failure mode interaction exponent for shearing energy release rate (G_II). Default is 2.22.
- Type:
float
- stress_envelope_method¶
Method to calculate the stress failure envelope. Default is “adam_unpublished”.
- Type:
str
- scaling_factor¶
Scaling factor for stress envelope. Default is 1.0.
- Type:
float
- order_of_magnitude¶
Order of magnitude for stress envelope. Default is 1.0.
- Type:
float
- fn: float¶
- fm: float¶
- gn: float¶
- gm: float¶
- stress_envelope_method: Literal['adam_unpublished', 'schottner', 'mede_s-RG1', 'mede_s-RG2', 'mede_s-FCDH']¶
- scaling_factor: float¶
- order_of_magnitude: float¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].