pub struct HashinFailureCriteria {
pub x_t: f64,
pub x_c: f64,
pub y_t: f64,
pub y_c: f64,
pub s12: f64,
}Expand description
Hashin failure criteria for unidirectional fiber composites.
Four independent failure modes:
- Fiber tension (σ_1 > 0)
- Fiber compression (σ_1 < 0)
- Matrix tension (σ_2 > 0)
- Matrix compression (σ_2 < 0)
Reference: Hashin (1980).
Fields§
§x_t: f64Longitudinal tensile strength X_T [Pa].
x_c: f64Longitudinal compressive strength X_C [Pa].
y_t: f64Transverse tensile strength Y_T [Pa].
y_c: f64Transverse compressive strength Y_C [Pa].
s12: f64In-plane shear strength S_12 [Pa].
Implementations§
Source§impl HashinFailureCriteria
impl HashinFailureCriteria
Sourcepub fn new(x_t: f64, x_c: f64, y_t: f64, y_c: f64, s12: f64) -> Self
pub fn new(x_t: f64, x_c: f64, y_t: f64, y_c: f64, s12: f64) -> Self
Create a new Hashin failure criteria instance.
Sourcepub fn fiber_tension(&self, sigma1: f64, tau12: f64, _tau13: f64) -> f64
pub fn fiber_tension(&self, sigma1: f64, tau12: f64, _tau13: f64) -> f64
Fiber tension criterion: f_ft = (σ_1/X_T)^2 + (τ_12/S_12)^2.
Sourcepub fn fiber_compression(&self, sigma1: f64) -> f64
pub fn fiber_compression(&self, sigma1: f64) -> f64
Fiber compression criterion: f_fc = (σ_1/X_C)^2.
Sourcepub fn matrix_tension(&self, sigma2: f64, tau12: f64) -> f64
pub fn matrix_tension(&self, sigma2: f64, tau12: f64) -> f64
Matrix tension criterion: f_mt = (σ_2/Y_T)^2 + (τ_12/S_12)^2.
Sourcepub fn matrix_compression(&self, sigma2: f64, tau12: f64) -> f64
pub fn matrix_compression(&self, sigma2: f64, tau12: f64) -> f64
Matrix compression criterion (Hashin 1980):
f_mc = (σ_2 / (2·S_23))^2 + [(Y_C / (2·S_23))^2 - 1]·(σ_2/Y_C) + (τ_12/S_12)^2
Trait Implementations§
Source§impl Clone for HashinFailureCriteria
impl Clone for HashinFailureCriteria
Source§fn clone(&self) -> HashinFailureCriteria
fn clone(&self) -> HashinFailureCriteria
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for HashinFailureCriteria
impl RefUnwindSafe for HashinFailureCriteria
impl Send for HashinFailureCriteria
impl Sync for HashinFailureCriteria
impl Unpin for HashinFailureCriteria
impl UnsafeUnpin for HashinFailureCriteria
impl UnwindSafe for HashinFailureCriteria
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more