PolyFEM
|
#include <MatParams.hpp>
Public Member Functions | |
void | resize (const int size) |
double | operator() (int i, int j) const |
double & | operator() (int i, int j) |
void | set_from_entries (const std::vector< double > &entries, const std::string &stress_unit) |
void | set_from_lambda_mu (const double lambda, const double mu, const std::string &stress_unit) |
void | set_from_young_poisson (const double young, const double poisson, const std::string &stress_unit) |
void | set_orthotropic (double Ex, double Ey, double Ez, double nuXY, double nuXZ, double nuYZ, double muYZ, double muZX, double muXY, const std::string &stress_unit) |
void | set_orthotropic (double Ex, double Ey, double nuXY, double muXY, const std::string &stress_unit) |
void | set_transversely_isotropic (double Et, double Ea, double nu_t, double nu_a, double Ga, const std::string &stress_units) |
template<int DIM> | |
double | compute_stress (const std::array< double, DIM > &strain, const int j) const |
void | rotate_stiffness (const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, 0, 6, 6 > &rotation_mtx_voigt) |
void | unrotate_stiffness () |
Private Attributes | |
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, 0, 6, 6 > | stiffness_tensor_ |
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, 0, 6, 6 > | reference_stiffness_tensor_ |
int | size_ |
Definition at line 41 of file MatParams.hpp.
template double polyfem::assembler::ElasticityTensor::compute_stress< 6 > | ( | const std::array< double, DIM > & | strain, |
const int | j | ||
) | const |
Definition at line 336 of file MatParams.cpp.
Referenced by polyfem::assembler::HookeLinearElasticity::assemble(), and polyfem::assembler::HookeLinearElasticity::assign_stress_tensor().
double & polyfem::assembler::ElasticityTensor::operator() | ( | int | i, |
int | j | ||
) |
Definition at line 114 of file MatParams.cpp.
References stiffness_tensor_.
double polyfem::assembler::ElasticityTensor::operator() | ( | int | i, |
int | j | ||
) | const |
Definition at line 103 of file MatParams.cpp.
References stiffness_tensor_.
void polyfem::assembler::ElasticityTensor::resize | ( | const int | size | ) |
Definition at line 91 of file MatParams.cpp.
References size_, and stiffness_tensor_.
Referenced by polyfem::autogen::saint_venant_2d_function(), polyfem::assembler::HookeLinearElasticity::set_size(), and polyfem::assembler::SaintVenantElasticity::set_size().
void polyfem::assembler::ElasticityTensor::rotate_stiffness | ( | const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, 0, 6, 6 > & | rotation_mtx_voigt | ) |
Definition at line 346 of file MatParams.cpp.
References reference_stiffness_tensor_, and stiffness_tensor_.
Referenced by polyfem::assembler::HookeLinearElasticity::assemble(), polyfem::assembler::HookeLinearElasticity::assign_stress_tensor(), polyfem::assembler::SaintVenantElasticity::assign_stress_tensor(), and polyfem::assembler::SaintVenantElasticity::compute_energy_aux().
void polyfem::assembler::ElasticityTensor::set_from_entries | ( | const std::vector< double > & | entries, |
const std::string & | stress_unit | ||
) |
Definition at line 125 of file MatParams.cpp.
References entries, set_orthotropic(), set_transversely_isotropic(), and size_.
Referenced by polyfem::assembler::HookeLinearElasticity::add_multimaterial(), and polyfem::assembler::SaintVenantElasticity::add_multimaterial().
void polyfem::assembler::ElasticityTensor::set_from_lambda_mu | ( | const double | lambda, |
const double | mu, | ||
const std::string & | stress_unit | ||
) |
Definition at line 211 of file MatParams.cpp.
References size_.
Referenced by polyfem::assembler::HookeLinearElasticity::add_multimaterial(), and polyfem::assembler::SaintVenantElasticity::add_multimaterial().
void polyfem::assembler::ElasticityTensor::set_from_young_poisson | ( | const double | young, |
const double | poisson, | ||
const std::string & | stress_unit | ||
) |
Definition at line 255 of file MatParams.cpp.
References size_, and stiffness_tensor_.
Referenced by polyfem::assembler::HookeLinearElasticity::add_multimaterial(), and polyfem::assembler::SaintVenantElasticity::add_multimaterial().
void polyfem::assembler::ElasticityTensor::set_orthotropic | ( | double | Ex, |
double | Ey, | ||
double | Ez, | ||
double | nuXY, | ||
double | nuXZ, | ||
double | nuYZ, | ||
double | muYZ, | ||
double | muZX, | ||
double | muXY, | ||
const std::string & | stress_unit | ||
) |
Definition at line 278 of file MatParams.cpp.
References size_, and stiffness_tensor_.
Referenced by set_from_entries().
void polyfem::assembler::ElasticityTensor::set_orthotropic | ( | double | Ex, |
double | Ey, | ||
double | nuXY, | ||
double | muXY, | ||
const std::string & | stress_unit | ||
) |
Definition at line 301 of file MatParams.cpp.
References size_, and stiffness_tensor_.
void polyfem::assembler::ElasticityTensor::set_transversely_isotropic | ( | double | Et, |
double | Ea, | ||
double | nu_t, | ||
double | nu_a, | ||
double | Ga, | ||
const std::string & | stress_units | ||
) |
Definition at line 316 of file MatParams.cpp.
References size_, and stiffness_tensor_.
Referenced by set_from_entries().
void polyfem::assembler::ElasticityTensor::unrotate_stiffness | ( | ) |
Definition at line 352 of file MatParams.cpp.
References reference_stiffness_tensor_, and stiffness_tensor_.
|
private |
Definition at line 71 of file MatParams.hpp.
Referenced by rotate_stiffness(), and unrotate_stiffness().
|
private |
Definition at line 72 of file MatParams.hpp.
Referenced by resize(), set_from_entries(), set_from_lambda_mu(), set_from_young_poisson(), set_orthotropic(), set_orthotropic(), and set_transversely_isotropic().
|
private |
Definition at line 70 of file MatParams.hpp.
Referenced by operator()(), operator()(), resize(), rotate_stiffness(), set_from_young_poisson(), set_orthotropic(), set_orthotropic(), set_transversely_isotropic(), and unrotate_stiffness().