16 #include "libmesh/numeric_vector.h" 17 #include "libmesh/quadrature.h" 32 _phi(_variable->phiFace()),
33 _system(_variable->sys()),
34 _aux_solution(_system.solution())
43 const auto & na =
static_cast<const NodalArea &
>(fred);
45 std::map<const Node *, Real>::const_iterator it = na.
_node_areas.begin();
46 const std::map<const Node *, Real>::const_iterator it_end = na._node_areas.end();
47 for (; it != it_end; ++it)
68 std::vector<Real> nodeAreas(
_phi.size());
69 for (
unsigned qp(0); qp <
_qrule->n_points(); ++qp)
71 for (
unsigned j(0);
j <
_phi.size(); ++
j)
76 for (
unsigned j(0);
j <
_phi.size(); ++
j)
78 const Real area = nodeAreas[
j];
90 const std::map<const Node *, Real>::iterator it_end =
_node_areas.end();
91 for (std::map<const Node *, Real>::iterator it =
_node_areas.begin(); it != it_end; ++it)
93 const Node *
const node = it->first;
99 for (std::map<const Node *, Real>::iterator it =
_node_areas.begin(); it != it_end; ++it)
101 const Node *
const node = it->first;
111 std::map<const Node *, Real>::const_iterator it =
_node_areas.find(node);
unsigned int number() const
virtual void threadJoin(const UserObject &uo)
virtual Real computeQpIntegral()
NumericVector< Number > & _aux_solution
const MooseArray< Real > & _JxW
static InputParameters validParams()
Real nodalArea(const Node *node) const
static InputParameters validParams()
unsigned int number() const
MooseVariableFE< Real > * _variable
const ExecFlagType EXEC_LINEAR
const MooseArray< Real > & _coord
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const QBase *const & _qrule
static const std::complex< double > j(0, 1)
Complex number "j" (also known as "i")
virtual void set(const numeric_index_type i, const Number value)=0
const Elem *const & _current_elem
std::map< const Node *, Real > _node_areas
virtual void add(const numeric_index_type i, const Number value)=0
NodalArea(const InputParameters ¶meters)
virtual void initialize()
const VariablePhiValue & _phi
registerMooseObject("ContactApp", NodalArea)