Go to the documentation of this file.
11 #include "libmesh/point.h"
21 params.
addRequiredParam<Real>(
"x1",
"The x coordinate of the lower left-hand corner of the box");
22 params.
addRequiredParam<Real>(
"y1",
"The y coordinate of the lower left-hand corner of the box");
23 params.
addParam<Real>(
"z1", 0.0,
"The z coordinate of the lower left-hand corner of the box");
25 params.
addRequiredParam<Real>(
"x2",
"The x coordinate of the upper right-hand corner of the box");
26 params.
addRequiredParam<Real>(
"y2",
"The y coordinate of the upper right-hand corner of the box");
27 params.
addParam<Real>(
"z2", 0.0,
"The z coordinate of the upper right-hand corner of the box");
29 params.
addParam<Real>(
"inside", 0.0,
"The value of the variable inside the box");
30 params.
addParam<Real>(
"outside", 0.0,
"The value of the variable outside the box");
33 "int_width", 0.0,
"The width of the diffuse interface. Set to 0 for sharp interface.");
35 params.
addClassDescription(
"BoundingBoxIC allows setting the initial condition of a value inside "
36 "and outside of a specified box. The box is aligned with the x, y, z "
44 _x1(getParam<Real>(
"x1")),
45 _y1(getParam<Real>(
"y1")),
46 _z1(getParam<Real>(
"z1")),
47 _x2(getParam<Real>(
"x2")),
48 _y2(getParam<Real>(
"y2")),
49 _z2(getParam<Real>(
"z2")),
50 _inside(getParam<Real>(
"inside")),
51 _outside(getParam<Real>(
"outside")),
52 _bottom_left(_x1, _y1, _z1),
53 _top_right(_x2, _y2, _z2),
54 _int_width(getParam<Real>(
"int_width"))
62 mooseError(
"'int_width' should be non-negative");
66 for (
unsigned int i = 0; i < LIBMESH_DIM; ++i)
75 for (
unsigned int i = 0; i < LIBMESH_DIM; ++i)
BoundingBoxIC(const InputParameters ¶meters)
const Point _top_right
The Point object constructed from the x2, y2, z2 components for the bottom left BB corner.
defineLegacyParams(BoundingBoxIC)
registerMooseObject("MooseApp", BoundingBoxIC)
void mooseError(Args &&... args) const
static InputParameters validParams()
const Real _outside
The constant value to assign outside of the bounding box.
This is a template class that implements the workhorse compute and computeNodal methods.
virtual Real value(const Point &p) override
The value of the variable at a point.
const Real _int_width
Interfacial width.
static InputParameters validParams()
const Point _bottom_left
The Point object constructed from the x1, y1, z1 components for the bottom left BB corner.
BoundingBoxIC allows setting the initial condition of a value inside and outside of a specified box.
const Real _inside
The constant value to assign within the bounding box.