#include <users_modules/eshelbian_plasticty/src/EshelbianPlasticity.hpp>
Definition at line 832 of file EshelbianPlasticity.hpp.
◆ OpCalculateStrainEnergy()
EshelbianPlasticity::OpCalculateStrainEnergy::OpCalculateStrainEnergy |
( |
const std::string |
field_name, |
|
|
boost::shared_ptr< DataAtIntegrationPts > |
data_at_pts, |
|
|
boost::shared_ptr< double > & |
e |
|
) |
| |
|
inline |
Definition at line 834 of file EshelbianPlasticity.hpp.
VolumeElementForcesAndSourcesCore::UserDataOperator VolUserDataOperator
constexpr auto field_name
boost::shared_ptr< DataAtIntegrationPts > dataAtPts
boost::shared_ptr< double > energy
@ OPROW
operator doWork function is executed on FE rows
◆ doWork()
- Examples
- EshelbianOperators.cpp.
Definition at line 1822 of file EshelbianOperators.cpp.
1823 {
1825 if (type == MBTET) {
1826 int nb_integration_pts = data.
getN().size1();
1827 auto v = getVolume();
1828 auto t_w = getFTensor0IntegrationWeight();
1829 auto t_P = getFTensor2FromMat<3, 3>(
dataAtPts->approxPAtPts);
1830 auto t_h = getFTensor2FromMat<3, 3>(
dataAtPts->hAtPts);
1831
1834
1835 for (int gg = 0; gg != nb_integration_pts; ++gg) {
1836 const double a = t_w *
v;
1837 (*energy) +=
a * t_P(
i,
J) * t_h(
i,
J);
1838 ++t_w;
1839 ++t_P;
1840 ++t_h;
1841 }
1842 }
1844}
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
FTensor::Index< 'i', SPACE_DIM > i
const double v
phase velocity of light in medium (cm/ns)
MatrixDouble & getN(const FieldApproximationBase base)
get base functions this return matrix (nb. of rows is equal to nb. of Gauss pts, nb....
◆ dataAtPts
◆ energy
boost::shared_ptr<double> EshelbianPlasticity::OpCalculateStrainEnergy::energy |
|
private |
The documentation for this struct was generated from the following files: