www.mooseframework.org
JIntegral.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 #include "CrackFrontDefinition.h"
14 
15 // Forward Declarations
16 class JIntegral;
17 template <typename>
20 
21 template <>
22 InputParameters validParams<JIntegral>();
23 
28 class JIntegral : public ElementIntegralPostprocessor
29 {
30 public:
31  static InputParameters validParams();
32 
33  JIntegral(const InputParameters & parameters);
34  virtual Real getValue();
35 
36 protected:
37  virtual void initialSetup();
38  virtual Real computeQpIntegral();
39  virtual Real computeIntegral();
42  const unsigned int _crack_front_point_index;
44  const MaterialProperty<RankTwoTensor> & _Eshelby_tensor;
45  const MaterialProperty<RealVectorValue> * _J_thermal_term_vec;
50  unsigned int _ring_index;
51  unsigned int _ring_first;
52  MooseEnum _q_function_type;
53  std::vector<Real> _q_curr_elem;
54  const std::vector<std::vector<Real>> * _phi_curr_elem;
55  const std::vector<std::vector<RealGradient>> * _dphi_curr_elem;
56 };
JIntegral::_ring_first
unsigned int _ring_first
Definition: JIntegral.h:51
JIntegral::_treat_as_2d
bool _treat_as_2d
Definition: JIntegral.h:43
JIntegral::_has_crack_front_point_index
bool _has_crack_front_point_index
Definition: JIntegral.h:41
JIntegral::_crack_front_definition
const CrackFrontDefinition *const _crack_front_definition
Definition: JIntegral.h:40
JIntegral::_crack_front_point_index
const unsigned int _crack_front_point_index
Definition: JIntegral.h:42
JIntegral::_poissons_ratio
Real _poissons_ratio
Definition: JIntegral.h:48
CrackFrontDefinition
Works on top of NodalNormalsPreprocessor.
Definition: CrackFrontDefinition.h:36
JIntegral
This postprocessor computes the J-Integral.
Definition: JIntegral.h:28
RankTwoTensor
RankTwoTensorTempl< Real > RankTwoTensor
Definition: JIntegral.h:18
JIntegral::_q_curr_elem
std::vector< Real > _q_curr_elem
Definition: JIntegral.h:53
JIntegral::_q_function_type
MooseEnum _q_function_type
Definition: JIntegral.h:52
CrackFrontDefinition.h
JIntegral::JIntegral
JIntegral(const InputParameters &parameters)
Definition: JIntegral.C:51
JIntegral::_Eshelby_tensor
const MaterialProperty< RankTwoTensor > & _Eshelby_tensor
Definition: JIntegral.h:44
JIntegral::_J_thermal_term_vec
const MaterialProperty< RealVectorValue > * _J_thermal_term_vec
Definition: JIntegral.h:45
JIntegral::getValue
virtual Real getValue()
Definition: JIntegral.C:176
validParams< JIntegral >
InputParameters validParams< JIntegral >()
JIntegral::initialSetup
virtual void initialSetup()
Definition: JIntegral.C:74
JIntegral::computeIntegral
virtual Real computeIntegral()
Definition: JIntegral.C:137
JIntegral::_youngs_modulus
Real _youngs_modulus
Definition: JIntegral.h:49
JIntegral::_dphi_curr_elem
const std::vector< std::vector< RealGradient > > * _dphi_curr_elem
Definition: JIntegral.h:55
JIntegral::_ring_index
unsigned int _ring_index
Definition: JIntegral.h:50
RankTwoTensorTempl
Definition: ACGrGrElasticDrivingForce.h:17
JIntegral::computeQpIntegral
virtual Real computeQpIntegral()
Definition: JIntegral.C:83
JIntegral::validParams
static InputParameters validParams()
Definition: JIntegral.C:22
JIntegral::_has_symmetry_plane
bool _has_symmetry_plane
Definition: JIntegral.h:47
JIntegral::_phi_curr_elem
const std::vector< std::vector< Real > > * _phi_curr_elem
Definition: JIntegral.h:54
JIntegral::_convert_J_to_K
bool _convert_J_to_K
Definition: JIntegral.h:46