conspire/domain/block/element/solid/hyperviscoelastic/
mod.rs1use crate::{
2 constitutive::solid::hyperviscoelastic::Hyperviscoelastic,
3 domain::block::element::solid::elastic_hyperviscous::ElasticHyperviscousElement,
4 math::Quantity, units::Energy,
5};
6
7pub trait HyperviscoelasticElement<C>
8where
9 C: Hyperviscoelastic,
10 Self: ElasticHyperviscousElement<C>,
11{
12 fn helmholtz_free_energy(
13 &self,
14 constitutive_model: &C,
15 nodal_coordinates: &Self::Coordinates,
16 ) -> Result<Quantity<Energy>, Self::Error>;
17}