https://mooseframework.inl.gov
CrackGrowthReporterBase.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 "GeneralReporter.h"
13 
19 {
20 public:
23  virtual void execute() override final;
24  virtual void initialize() override final {}
25  virtual void finalize() override final {}
26 
27 protected:
33  virtual void computeGrowth(std::vector<int> & index) = 0;
34 
36  const UserObjectName & _cutter_name;
41 
43  const std::vector<Real> & _ki_vpp;
44 
48  const std::vector<Real> & _ki_x;
49  const std::vector<Real> & _ki_y;
50  const std::vector<Real> & _ki_z;
51  const std::vector<Real> & _ki_id;
53 
57  std::vector<Real> & _x;
58  std::vector<Real> & _y;
59  std::vector<Real> & _z;
60  std::vector<Real> & _id;
62 
63 private:
68  std::vector<int> getCutterMeshIndices() const;
70  void copyCoordinates() const;
71 };
CrackMeshCut3DUserObject: (1) reads in a mesh describing the crack surface, (2) uses the mesh to do i...
const std::vector< Real > & _ki_z
const Real _max_growth_increment
Maximum crack growth increment allowed for any of the crack front points.
const InputParameters & parameters() const
virtual void execute() override final
static InputParameters validParams()
const std::vector< Real > & _ki_y
const std::vector< Real > & _ki_vpp
The name of the reporter with K_I fracture integral values.
virtual void finalize() override final
const std::vector< Real > & _ki_x
void copyCoordinates() const
copy data into coordinate reporters
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void computeGrowth(std::vector< int > &index)=0
Compute crack growth increment at the specified crack front point and store increments in an internal...
const UserObjectName & _cutter_name
cutter mesh object name
CrackMeshCut3DUserObject * _3Dcutter
3D mesh cutter object that provides active nodes
virtual void initialize() override final
std::vector< int > getCutterMeshIndices() const
get indexing from the cutter mesh
CrackGrowthReporterBase(const InputParameters &parameters)
const std::vector< Real > & _ki_id