https://mooseframework.inl.gov
BondStatusConvergedPostprocessorPD.C
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 
11 
13 
16 {
18  params.addClassDescription(
19  "Postprocessor to check whether the bond status is converged within a time step");
20 
21  return params;
22 }
23 
25  const InputParameters & parameters)
26  : ElementPostprocessor(parameters),
27  _bond_status_var(&_subproblem.getStandardVariable(_tid, "bond_status")),
28  _pdmesh(dynamic_cast<PeridynamicsMesh &>(_mesh)),
29  _dim(_pdmesh.dimension())
30 {
31 }
32 
33 void
35 {
37 }
38 
39 void
41 {
45 }
46 
47 Real
49 {
51 }
52 
53 void
55 {
57 }
58 
59 void
61 {
62  const auto & pps = static_cast<const BondStatusConvergedPostprocessorPD &>(uo);
63  _num_bond_status_updated += pps._num_bond_status_updated;
64 }
unsigned int _num_bond_status_updated
total number of times bond_status updated
Peridynamics mesh class.
BondStatusConvergedPostprocessorPD(const InputParameters &parameters)
static InputParameters validParams()
OutputData getElementalValue(const Elem *elem, unsigned int idx=0) const
void gatherSum(T &value)
MooseVariable * _bond_status_var
Bond status aux variable.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
OutputData getElementalValueOld(const Elem *elem, unsigned int idx=0) const
const Elem *const & _current_elem
Postprocessor to commpute the number of bonds whose stataus has changed in the most update...
registerMooseObject("PeridynamicsApp", BondStatusConvergedPostprocessorPD)
void addClassDescription(const std::string &doc_string)
virtual void threadJoin(const UserObject &uo) override