Bertoldi's liquid crystal elastomer model Paper: Li, S., Librandi, G., Yao, Y., Richard, A. J., Schneider‐Yamamura, A., Aizenberg, J., & Bertoldi, K. (2021). Controlling Liquid Crystal Orientations for Programmable Anisotropic Transformations in Cellular Microstructures. Advanced Materials, 33(42), 2105024.
More...
#include <liquid_crystal_elastomer.hpp>
|
using | State = Empty |
| this material has no internal variables
|
|
|
| LiquidCrystalElastomerBertoldi (double rho, double young_modulus, double poisson_ratio, double initial_order_parameter, double beta_parameter) |
| Constructor. More...
|
|
template<typename DispGradType , typename OrderParamType , typename GammaAngleType , typename EtaAngleType > |
SERAC_HOST_DEVICE auto | operator() (State &, const tensor< DispGradType, dim, dim > &displacement_grad, OrderParamType inst_order_param_tuple, GammaAngleType gamma_tuple, EtaAngleType eta_tuple) const |
| Material response. More...
|
|
template<typename DispGradType , typename orderParamType , typename GammaAngleType , typename EtaAngleType > |
auto | calculateStrainEnergy (const State &, const tensor< DispGradType, dim, dim > &displacement_grad, orderParamType inst_order_param_tuple, GammaAngleType gamma_tuple, EtaAngleType eta_tuple) const |
| Compute the strain energy. More...
|
|
|
static constexpr int | dim = 3 |
| this model is only intended to be used in 3D
|
|
Bertoldi's liquid crystal elastomer model Paper: Li, S., Librandi, G., Yao, Y., Richard, A. J., Schneider‐Yamamura, A., Aizenberg, J., & Bertoldi, K. (2021). Controlling Liquid Crystal Orientations for Programmable Anisotropic Transformations in Cellular Microstructures. Advanced Materials, 33(42), 2105024.
--------------------------------------------------------------------------—
Definition at line 210 of file liquid_crystal_elastomer.hpp.
◆ LiquidCrystalElastomerBertoldi()
serac::LiquidCrystalElastomerBertoldi::LiquidCrystalElastomerBertoldi |
( |
double |
rho, |
|
|
double |
young_modulus, |
|
|
double |
poisson_ratio, |
|
|
double |
initial_order_parameter, |
|
|
double |
beta_parameter |
|
) |
| |
|
inline |
Constructor.
- Parameters
-
rho | mass density of the material (in reference configuration) |
young_modulus | Bulk modulus of the material |
poisson_ratio | Poisson ratio of the material |
initial_order_parameter | Initial value of the order parameter |
beta_parameter | Parameter for degree of coupling between elastic and nematic energies |
Definition at line 225 of file liquid_crystal_elastomer.hpp.
◆ calculateStrainEnergy()
template<typename DispGradType , typename orderParamType , typename GammaAngleType , typename EtaAngleType >
auto serac::LiquidCrystalElastomerBertoldi::calculateStrainEnergy |
( |
const State & |
, |
|
|
const tensor< DispGradType, dim, dim > & |
displacement_grad, |
|
|
orderParamType |
inst_order_param_tuple, |
|
|
GammaAngleType |
gamma_tuple, |
|
|
EtaAngleType |
eta_tuple |
|
) |
| const |
|
inline |
Compute the strain energy.
- Template Parameters
-
DispGradType | Type of the displacement gradient |
orderParamType | Type of order parameter (level of alignment) |
GammaAngleType | Type of the in-plane angle |
EtaAngleType | Type of the out-of-plane angle |
- Parameters
-
[in] | displacement_grad | Displacement gradient |
[in] | inst_order_param_tuple | Instantaneous order parameter |
[in] | gamma_tuple | In-plane angle of alignment of liquid crystal in elastomer matrix |
[in] | eta_tuple | Out-of-plane angle of alignment of liquid crystal in elastomer matrix |
- Returns
- strain energy
Definition at line 312 of file liquid_crystal_elastomer.hpp.
◆ operator()()
template<typename DispGradType , typename OrderParamType , typename GammaAngleType , typename EtaAngleType >
SERAC_HOST_DEVICE auto serac::LiquidCrystalElastomerBertoldi::operator() |
( |
State & |
, |
|
|
const tensor< DispGradType, dim, dim > & |
displacement_grad, |
|
|
OrderParamType |
inst_order_param_tuple, |
|
|
GammaAngleType |
gamma_tuple, |
|
|
EtaAngleType |
eta_tuple |
|
) |
| const |
|
inline |
Material response.
- Template Parameters
-
DispGradType | number-like type for the displacement gradient tensor |
OrderParamType | number-like type for the order parameter |
GammaAngleType | number-like type for the orientation angle gamma |
EtaAngleType | number-like type for the orientation angle eta |
- Parameters
-
[in] | displacement_grad | displacement gradient with respect to the reference configuration |
[in] | inst_order_param_tuple | the current order parameter |
[in] | gamma_tuple | the first polar angle used to define the liquid crystal orientation vector |
[in] | eta_tuple | the second polar angle used to define the liquid crystal orientation vector |
- Returns
- The calculated material response (Cauchy stress) for the material
Definition at line 258 of file liquid_crystal_elastomer.hpp.
The documentation for this struct was generated from the following file: