www.mooseframework.org
XFEMMovingInterfaceVelocityBase.C
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 
11 
14 {
16  params.addRequiredParam<UserObjectName>(
17  "value_at_interface_uo",
18  "The name of the userobject that obtains the value and gradient at the interface.");
19  return params;
20 }
21 
23  : DiscreteElementUserObject(parameters)
24 {
25 }
26 
27 void
29 {
30  const UserObject * uo =
31  &(_fe_problem.getUserObjectBase(getParam<UserObjectName>("value_at_interface_uo")));
32 
33  if (dynamic_cast<const NodeValueAtXFEMInterface *>(uo) == nullptr)
34  mooseError("UserObject casting to NodeValueAtXFEMInterface in XFEMMovingInterfaceVelocity");
35 
36  _value_at_interface_uo = dynamic_cast<const NodeValueAtXFEMInterface *>(uo);
37 }
void addRequiredParam(const std::string &name, const std::string &doc_string)
XFEMMovingInterfaceVelocityBase(const InputParameters &parameters)
const NodeValueAtXFEMInterface * _value_at_interface_uo
Pointer to NodeValueAtXFEMInterface object.
FEProblemBase & _fe_problem
void mooseError(Args &&... args) const
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
static InputParameters validParams()