www.mooseframework.org
AsymptoticExpansionHomogenizationElasticConstants.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "ElementIntegralPostprocessor.h"
13 
14 // Forward Declarations
16 
17 template <>
19 
23 class AsymptoticExpansionHomogenizationElasticConstants : public ElementIntegralPostprocessor
24 {
25 public:
26  static InputParameters validParams();
27 
28  AsymptoticExpansionHomogenizationElasticConstants(const InputParameters & parameters);
29 
30  virtual void initialize();
31  virtual void execute();
32  virtual Real getValue();
33  virtual void threadJoin(const UserObject & y);
34 
35 protected:
36  virtual Real computeQpIntegral();
37 
38 private:
39  const std::string _base_name;
40 
41  const std::array<std::array<const VariableGradient *, 3>, 6> _grad;
42 
43  const MaterialProperty<RankFourTensor> & _elasticity_tensor;
44  const unsigned int _column, _row;
45  const std::array<unsigned int, 6> _ik_index;
46  const std::array<unsigned int, 6> _jl_index;
47  const unsigned _i, _j, _k, _l;
48  Real _volume;
50 };
AsymptoticExpansionHomogenizationElasticConstants::_j
const unsigned _j
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:47
AsymptoticExpansionHomogenizationElasticConstants::initialize
virtual void initialize()
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:94
AsymptoticExpansionHomogenizationElasticConstants::_jl_index
const std::array< unsigned int, 6 > _jl_index
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:46
AsymptoticExpansionHomogenizationElasticConstants::_elasticity_tensor
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:43
AsymptoticExpansionHomogenizationElasticConstants::threadJoin
virtual void threadJoin(const UserObject &y)
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:118
validParams< AsymptoticExpansionHomogenizationElasticConstants >
InputParameters validParams< AsymptoticExpansionHomogenizationElasticConstants >()
AsymptoticExpansionHomogenizationElasticConstants::_column
const unsigned int _column
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:44
AsymptoticExpansionHomogenizationElasticConstants::validParams
static InputParameters validParams()
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:18
AsymptoticExpansionHomogenizationElasticConstants::_grad
const std::array< std::array< const VariableGradient *, 3 >, 6 > _grad
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:41
AsymptoticExpansionHomogenizationElasticConstants::getValue
virtual Real getValue()
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:108
AsymptoticExpansionHomogenizationElasticConstants::_integral_value
Real _integral_value
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:49
AsymptoticExpansionHomogenizationElasticConstants::_row
const unsigned int _row
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:44
AsymptoticExpansionHomogenizationElasticConstants
This postprocessor computes homogenized elastic constants.
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:23
AsymptoticExpansionHomogenizationElasticConstants::_l
const unsigned _l
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:47
AsymptoticExpansionHomogenizationElasticConstants::AsymptoticExpansionHomogenizationElasticConstants
AsymptoticExpansionHomogenizationElasticConstants(const InputParameters &parameters)
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:58
AsymptoticExpansionHomogenizationElasticConstants::execute
virtual void execute()
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:101
AsymptoticExpansionHomogenizationElasticConstants::_volume
Real _volume
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:48
AsymptoticExpansionHomogenizationElasticConstants::_base_name
const std::string _base_name
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:39
AsymptoticExpansionHomogenizationElasticConstants::_k
const unsigned _k
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:47
AsymptoticExpansionHomogenizationElasticConstants::_ik_index
const std::array< unsigned int, 6 > _ik_index
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:45
AsymptoticExpansionHomogenizationElasticConstants::computeQpIntegral
virtual Real computeQpIntegral()
Definition: AsymptoticExpansionHomogenizationElasticConstants.C:128
AsymptoticExpansionHomogenizationElasticConstants::_i
const unsigned _i
Definition: AsymptoticExpansionHomogenizationElasticConstants.h:47