https://mooseframework.inl.gov
MandelConverter.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 "Material.h"
13 
14 #include "RankTwoTensor.h"
15 #include "SymmetricRankTwoTensor.h"
16 
17 #include "RankFourTensor.h"
19 
20 template <typename T, bool symmetrize>
22 {
23  using from = std::false_type;
24  using to = std::false_type;
25 };
26 template <>
28 {
31 };
32 template <>
34 {
36  using to = RankTwoTensor;
37 };
38 template <>
40 {
43 };
44 template <>
46 {
48  using to = RankFourTensor;
49 };
50 
54 template <typename T, bool symmetrize>
55 class MandelConverter : public Material
56 {
57 public:
59 
61 
64 
65 protected:
66  void initQpStatefulProperties() override;
67  void computeQpProperties() override;
68 
71 };
72 
MandelConverter(const InputParameters &parameters)
std::false_type to
std::false_type from
typename MandelConversion< T, symmetrize >::from FromType
void initQpStatefulProperties() override
typename MandelConversion< T, symmetrize >::to ToType
MaterialProperty< ToType > & _to
void computeQpProperties() override
static InputParameters validParams()
Convert tensorial material properties between Mandel notation and full notation.
const InputParameters & parameters() const
const MaterialProperty< FromType > & _from