#[cfg(test)]
mod test;
use crate::{
constitutive::{ConstitutiveError, hybrid::ElasticAdditive, solid::hyperelastic::Hyperelastic},
mechanics::{DeformationGradient, Scalar},
};
impl<C1, C2> Hyperelastic for ElasticAdditive<C1, C2>
where
C1: Hyperelastic,
C2: Hyperelastic,
{
fn helmholtz_free_energy_density(
&self,
deformation_gradient: &DeformationGradient,
) -> Result<Scalar, ConstitutiveError> {
Ok(self.0.helmholtz_free_energy_density(deformation_gradient)?
+ self.1.helmholtz_free_energy_density(deformation_gradient)?)
}
}