16#include "libmesh/numeric_vector.h"
17#include "libmesh/quadrature.h"
32 _phi(_variable->phiFace()),
33 _system(_variable->sys()),
34 _aux_solution(_system.solution()),
35 _wave_speed(getMaterialProperty<Real>(
"wave_speed"))
47 const std::map<const Node *, Real>::const_iterator it_end = na.
_node_wave_speeds.end();
48 for (; it != it_end; ++it)
61 std::vector<Real> node_wave_speeds(
_phi.size());
62 for (
unsigned qp(0); qp <
_qrule->n_points(); ++qp)
63 for (
unsigned j(0); j <
_phi.size(); ++j)
66 for (
unsigned j(0); j <
_phi.size(); ++j)
68 const Real wave_speed = node_wave_speeds[j];
78 for (std::map<const Node *, Real>::iterator it =
_node_wave_speeds.begin(); it != it_end; ++it)
80 const Node *
const node = it->first;
const ExecFlagType EXEC_LINEAR
registerMooseObject("ContactApp", NodalWaveSpeed)
unsigned int number() const
MooseVariableFE< Real > * _variable
virtual ~NodalWaveSpeed()
static InputParameters validParams()
NumericVector< Number > & _aux_solution
virtual void threadJoin(const UserObject &uo)
const MaterialProperty< Real > & _wave_speed
virtual void initialize()
const VariablePhiValue & _phi
std::map< const Node *, Real > _node_wave_speeds
NodalWaveSpeed(const InputParameters ¶meters)
static InputParameters validParams()
const QBase *const & _qrule
const Elem *const & _current_elem
unsigned int number() const
virtual void set(const numeric_index_type i, const T value)=0