This postprocessor computes homogenized elastic constants.
More...
#include <AsymptoticExpansionHomogenizationElasticConstants.h>
This postprocessor computes homogenized elastic constants.
Definition at line 23 of file AsymptoticExpansionHomogenizationElasticConstants.h.
◆ AsymptoticExpansionHomogenizationElasticConstants()
AsymptoticExpansionHomogenizationElasticConstants::AsymptoticExpansionHomogenizationElasticConstants |
( |
const InputParameters & |
parameters | ) |
|
Definition at line 58 of file AsymptoticExpansionHomogenizationElasticConstants.C.
59 : ElementIntegralPostprocessor(parameters),
60 _base_name(isParamValid(
"base_name") ? getParam<std::string>(
"base_name") +
"_" :
""),
61 _grad({{{{&coupledGradient(
"dx_xx"),
62 &coupledGradient(
"dy_xx"),
63 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_xx") : &_grad_zero)}},
64 {{&coupledGradient(
"dx_yy"),
65 &coupledGradient(
"dy_yy"),
66 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_yy") : &_grad_zero)}},
67 {{(_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dx_zz") : &_grad_zero),
68 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dy_zz") : &_grad_zero),
69 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_zz") : &_grad_zero)}},
70 {{(_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dx_yz") : &_grad_zero),
71 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dy_yz") : &_grad_zero),
72 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_yz") : &_grad_zero)}},
73 {{(_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dx_zx") : &_grad_zero),
74 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dy_zx") : &_grad_zero),
75 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_zx") : &_grad_zero)}},
76 {{(&coupledGradient(
"dx_xy")),
77 (&coupledGradient(
"dy_xy")),
78 (_subproblem.mesh().dimension() == 3 ? &coupledGradient(
"dz_xy") : &_grad_zero)}}}}),
80 _column(getParam<MooseEnum>(
"column")),
81 _row(getParam<MooseEnum>(
"row")),
◆ computeQpIntegral()
Real AsymptoticExpansionHomogenizationElasticConstants::computeQpIntegral |
( |
| ) |
|
|
protectedvirtual |
◆ execute()
void AsymptoticExpansionHomogenizationElasticConstants::execute |
( |
| ) |
|
|
virtual |
◆ getValue()
Real AsymptoticExpansionHomogenizationElasticConstants::getValue |
( |
| ) |
|
|
virtual |
◆ initialize()
void AsymptoticExpansionHomogenizationElasticConstants::initialize |
( |
| ) |
|
|
virtual |
◆ threadJoin()
void AsymptoticExpansionHomogenizationElasticConstants::threadJoin |
( |
const UserObject & |
y | ) |
|
|
virtual |
◆ validParams()
InputParameters AsymptoticExpansionHomogenizationElasticConstants::validParams |
( |
| ) |
|
|
static |
Definition at line 18 of file AsymptoticExpansionHomogenizationElasticConstants.C.
21 params.addClassDescription(
22 "Postprocessor for asymptotic expansion homogenization for elasticity");
23 params.addRequiredCoupledVar(
"dx_xx",
"solution in xx");
24 params.addRequiredCoupledVar(
"dy_xx",
"solution in xx");
25 params.addCoupledVar(
"dz_xx",
"solution in xx");
26 params.addRequiredCoupledVar(
"dx_yy",
"solution in yy");
27 params.addRequiredCoupledVar(
"dy_yy",
"solution in yy");
28 params.addCoupledVar(
"dz_yy",
"solution in yy");
29 params.addCoupledVar(
"dx_zz",
"solution in zz");
30 params.addCoupledVar(
"dy_zz",
"solution in zz");
31 params.addCoupledVar(
"dz_zz",
"solution in zz");
32 params.addRequiredCoupledVar(
"dx_xy",
"solution in xy");
33 params.addRequiredCoupledVar(
"dy_xy",
"solution in xy");
34 params.addCoupledVar(
"dz_xy",
"solution in xy");
35 params.addCoupledVar(
"dx_yz",
"solution in yz");
36 params.addCoupledVar(
"dy_yz",
"solution in yz");
37 params.addCoupledVar(
"dz_yz",
"solution in yz");
38 params.addCoupledVar(
"dx_zx",
"solution in zx");
39 params.addCoupledVar(
"dy_zx",
"solution in zx");
40 params.addCoupledVar(
"dz_zx",
"solution in zx");
41 params.addParam<std::string>(
"base_name",
42 "Optional parameter that allows the user to define "
43 "multiple mechanics material systems on the same "
44 "block, i.e. for multiple phases");
45 MooseEnum column(
"xx yy zz yz xz xy");
46 params.addRequiredParam<MooseEnum>(
"column",
48 "The column of the material matrix this kernel acts in. "
49 "(xx, yy, zz, yz, xz, or xy)");
50 params.addRequiredParam<MooseEnum>(
"row",
52 "The row of the material matrix this kernel acts in. "
53 "(xx, yy, zz, yz, xz, or xy)");
◆ _base_name
const std::string AsymptoticExpansionHomogenizationElasticConstants::_base_name |
|
private |
◆ _column
const unsigned int AsymptoticExpansionHomogenizationElasticConstants::_column |
|
private |
◆ _elasticity_tensor
const MaterialProperty<RankFourTensor>& AsymptoticExpansionHomogenizationElasticConstants::_elasticity_tensor |
|
private |
◆ _grad
const std::array<std::array<const VariableGradient *, 3>, 6> AsymptoticExpansionHomogenizationElasticConstants::_grad |
|
private |
◆ _i
const unsigned AsymptoticExpansionHomogenizationElasticConstants::_i |
|
private |
◆ _ik_index
const std::array<unsigned int, 6> AsymptoticExpansionHomogenizationElasticConstants::_ik_index |
|
private |
◆ _integral_value
Real AsymptoticExpansionHomogenizationElasticConstants::_integral_value |
|
private |
◆ _j
const unsigned AsymptoticExpansionHomogenizationElasticConstants::_j |
|
private |
◆ _jl_index
const std::array<unsigned int, 6> AsymptoticExpansionHomogenizationElasticConstants::_jl_index |
|
private |
◆ _k
const unsigned AsymptoticExpansionHomogenizationElasticConstants::_k |
|
private |
◆ _l
const unsigned AsymptoticExpansionHomogenizationElasticConstants::_l |
|
private |
◆ _row
const unsigned int AsymptoticExpansionHomogenizationElasticConstants::_row |
|
private |
◆ _volume
Real AsymptoticExpansionHomogenizationElasticConstants::_volume |
|
private |
The documentation for this class was generated from the following files: