www.mooseframework.org
DomainIntegralAction.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 // MOOSE includes
13 #include "Action.h"
14 #include "MooseEnum.h"
15 #include "MooseTypes.h"
16 
17 #include "libmesh/vector_value.h"
18 
20 
21 template <>
22 InputParameters validParams<DomainIntegralAction>();
23 
24 class DomainIntegralAction : public Action
25 {
26 public:
27  static InputParameters validParams();
28 
29  DomainIntegralAction(const InputParameters & params);
30 
32 
33  virtual void act();
34 
35 protected:
36  enum INTEGRAL
37  {
43  };
44 
46  {
49  };
50 
51  unsigned int calcNumCrackFrontPoints();
52 
53  std::set<INTEGRAL> _integrals;
54  const std::vector<BoundaryName> & _boundary_names;
55  std::vector<Point> _crack_front_points;
59  const std::string _order;
60  const std::string _family;
64  RealVectorValue _crack_direction_vector;
69  std::vector<BoundaryName> _crack_mouth_boundary_names;
70  std::vector<BoundaryName> _intersecting_boundary_names;
72  unsigned int _axis_2d;
73  std::vector<Real> _radius_inner;
74  std::vector<Real> _radius_outer;
75  unsigned int _ring_first;
76  unsigned int _ring_last;
77  std::vector<VariableName> _output_variables;
80  std::vector<SubdomainName> _blocks;
81  std::vector<VariableName> _displacements;
82  VariableName _temp;
85  unsigned int _symmetry_plane;
86  MooseEnum _position_type;
87  MooseEnum _q_function_type;
90  bool _output_q;
91  std::vector<unsigned int> _ring_vec;
94 };
DomainIntegralAction::_closed_loop
bool _closed_loop
Definition: DomainIntegralAction.h:56
DomainIntegralAction::_crack_front_points_provider
UserObjectName _crack_front_points_provider
Definition: DomainIntegralAction.h:57
DomainIntegralAction::INTERACTION_INTEGRAL_T
Definition: DomainIntegralAction.h:42
DomainIntegralAction::_output_q
bool _output_q
Definition: DomainIntegralAction.h:90
DomainIntegralAction::calcNumCrackFrontPoints
unsigned int calcNumCrackFrontPoints()
Definition: DomainIntegralAction.C:824
DomainIntegralAction::_ring_first
unsigned int _ring_first
Definition: DomainIntegralAction.h:75
DomainIntegralAction::INTERACTION_INTEGRAL_KI
Definition: DomainIntegralAction.h:39
DomainIntegralAction::_family
const std::string _family
Definition: DomainIntegralAction.h:60
DomainIntegralAction::INTEGRAL
INTEGRAL
Definition: DomainIntegralAction.h:36
DomainIntegralAction::_crack_direction_vector_end_2
RealVectorValue _crack_direction_vector_end_2
Definition: DomainIntegralAction.h:68
DomainIntegralAction::_crack_direction_vector_end_1
RealVectorValue _crack_direction_vector_end_1
Definition: DomainIntegralAction.h:66
DomainIntegralAction::_end_direction_method_moose_enum
MooseEnum _end_direction_method_moose_enum
Definition: DomainIntegralAction.h:62
DomainIntegralAction::TOPOLOGY
Definition: DomainIntegralAction.h:48
DomainIntegralAction::_displacements
std::vector< VariableName > _displacements
Definition: DomainIntegralAction.h:81
DomainIntegralAction::DomainIntegralAction
DomainIntegralAction(const InputParameters &params)
Definition: DomainIntegralAction.C:100
DomainIntegralAction::_treat_as_2d
bool _treat_as_2d
Definition: DomainIntegralAction.h:71
DomainIntegralAction::_crack_mouth_boundary_names
std::vector< BoundaryName > _crack_mouth_boundary_names
Definition: DomainIntegralAction.h:69
DomainIntegralAction::_output_variables
std::vector< VariableName > _output_variables
Definition: DomainIntegralAction.h:77
DomainIntegralAction::GEOMETRY
Definition: DomainIntegralAction.h:47
validParams< DomainIntegralAction >
InputParameters validParams< DomainIntegralAction >()
DomainIntegralAction::_integrals
std::set< INTEGRAL > _integrals
Definition: DomainIntegralAction.h:53
DomainIntegralAction::_crack_direction_vector
RealVectorValue _crack_direction_vector
Definition: DomainIntegralAction.h:64
DomainIntegralAction::_ring_vec
std::vector< unsigned int > _ring_vec
Definition: DomainIntegralAction.h:91
DomainIntegralAction::_symmetry_plane
unsigned int _symmetry_plane
Definition: DomainIntegralAction.h:85
DomainIntegralAction::_direction_method_moose_enum
MooseEnum _direction_method_moose_enum
Definition: DomainIntegralAction.h:61
DomainIntegralAction::Q_FUNCTION_TYPE
Q_FUNCTION_TYPE
Definition: DomainIntegralAction.h:45
DomainIntegralAction::_order
const std::string _order
Definition: DomainIntegralAction.h:59
DomainIntegralAction::J_INTEGRAL
Definition: DomainIntegralAction.h:38
DomainIntegralAction::_poissons_ratio
Real _poissons_ratio
Definition: DomainIntegralAction.h:78
DomainIntegralAction::act
virtual void act()
Definition: DomainIntegralAction.C:284
DomainIntegralAction::_radius_inner
std::vector< Real > _radius_inner
Definition: DomainIntegralAction.h:73
DomainIntegralAction::_youngs_modulus
Real _youngs_modulus
Definition: DomainIntegralAction.h:79
DomainIntegralAction::INTERACTION_INTEGRAL_KII
Definition: DomainIntegralAction.h:40
DomainIntegralAction::_intersecting_boundary_names
std::vector< BoundaryName > _intersecting_boundary_names
Definition: DomainIntegralAction.h:70
DomainIntegralAction::_use_crack_front_points_provider
bool _use_crack_front_points_provider
Definition: DomainIntegralAction.h:58
DomainIntegralAction::_blocks
std::vector< SubdomainName > _blocks
Definition: DomainIntegralAction.h:80
DomainIntegralAction::_q_function_type
MooseEnum _q_function_type
Definition: DomainIntegralAction.h:87
DomainIntegralAction::_incremental
bool _incremental
Definition: DomainIntegralAction.h:93
DomainIntegralAction::_use_displaced_mesh
bool _use_displaced_mesh
Definition: DomainIntegralAction.h:89
DomainIntegralAction::_convert_J_to_K
bool _convert_J_to_K
Definition: DomainIntegralAction.h:83
DomainIntegralAction::_get_equivalent_k
bool _get_equivalent_k
Definition: DomainIntegralAction.h:88
DomainIntegralAction::_have_crack_direction_vector_end_2
bool _have_crack_direction_vector_end_2
Definition: DomainIntegralAction.h:67
DomainIntegralAction::_have_crack_direction_vector
bool _have_crack_direction_vector
Definition: DomainIntegralAction.h:63
DomainIntegralAction::INTERACTION_INTEGRAL_KIII
Definition: DomainIntegralAction.h:41
DomainIntegralAction
Definition: DomainIntegralAction.h:24
DomainIntegralAction::_radius_outer
std::vector< Real > _radius_outer
Definition: DomainIntegralAction.h:74
DomainIntegralAction::_has_symmetry_plane
bool _has_symmetry_plane
Definition: DomainIntegralAction.h:84
DomainIntegralAction::_position_type
MooseEnum _position_type
Definition: DomainIntegralAction.h:86
DomainIntegralAction::_temp
VariableName _temp
Definition: DomainIntegralAction.h:82
DomainIntegralAction::_boundary_names
const std::vector< BoundaryName > & _boundary_names
Definition: DomainIntegralAction.h:54
DomainIntegralAction::~DomainIntegralAction
~DomainIntegralAction()
Definition: DomainIntegralAction.C:281
DomainIntegralAction::_have_crack_direction_vector_end_1
bool _have_crack_direction_vector_end_1
Definition: DomainIntegralAction.h:65
DomainIntegralAction::_crack_front_points
std::vector< Point > _crack_front_points
Definition: DomainIntegralAction.h:55
DomainIntegralAction::_ring_last
unsigned int _ring_last
Definition: DomainIntegralAction.h:76
DomainIntegralAction::validParams
static InputParameters validParams()
Definition: DomainIntegralAction.C:33
DomainIntegralAction::_axis_2d
unsigned int _axis_2d
Definition: DomainIntegralAction.h:72
DomainIntegralAction::_solid_mechanics
bool _solid_mechanics
Definition: DomainIntegralAction.h:92