|
| | LatheIF (const BaseIF &a_impFunc1, const bool &a_inside) |
| |
| | LatheIF (const BaseIF &a_impFunc1, const BaseIF &a_impFunc2, const RealVect &a_point, const bool &a_inside) |
| |
| | LatheIF (const LatheIF &a_inputIF) |
| | Copy constructor. More...
|
| |
| virtual | ~LatheIF () |
| | Destructor. More...
|
| |
| virtual Real | value (const RealVect &a_point) const |
| |
| virtual BaseIF * | newImplicitFunction () const |
| |
| virtual bool | fastIntersection (const RealVect &a_low, const RealVect &a_high) const |
| |
| virtual GeometryService::InOut | InsideOutside (const RealVect &a_low, const RealVect &a_high) const |
| |
| virtual void | boxLayoutChanged (const DisjointBoxLayout &a_newBoxLayout, const RealVect &a_dx) |
| |
| | BaseIF () |
| | Default constructor. More...
|
| |
| virtual | ~BaseIF () |
| | Default destructor. More...
|
| |
| virtual IndMomSpaceDim | getExactVolumeMoments (const VolIndex &a_vof, const Real &a_dx) const |
| | return int x^p dV for the vof More...
|
| |
| virtual IndMomSpaceDim | getExactEBMoments (const VolIndex &a_vof, const Real &a_dx) const |
| | return int_eb x^p dA for the eb More...
|
| |
| virtual IndMomSpaceDim | getExactEBNormalMoments (const VolIndex &a_vof, const Real &a_dx, const int &a_ni) const |
| | return int_eb x^p n_i dA for the eb More...
|
| |
| virtual IndMomSpaceDim | getExactEBNormalPartialDerivs (const VolIndex &a_vof, const Real &a_dx, const int &a_ni) const |
| |
| virtual IndMomSDMinOne | getExactFaceMoments (const FaceIndex &a_face, const Real &a_dx) const |
| | return int x^p dA for the face More...
|
| |
| virtual Real | derivative (const IntVect &a_deriv, const RealVect &a_point) const |
| | return the partial derivative at the point More...
|
| |
| virtual Real | value (const IndexTM< int, GLOBALDIM > &a_partialDerivative, const IndexTM< Real, GLOBALDIM > &a_point) const |
| |
| virtual Real | value (const IntVect &a_deriv, const RealVect &a_point) const |
| |
| virtual bool | fastIntersection (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
| |
| virtual GeometryService::InOut | InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
| |
| virtual Real | value (const IndexTM< Real, GLOBALDIM > &a_point) const |
| |
| virtual Real | derivative (const IndexTM< int, GLOBALDIM > &a_deriv, const IndexTM< Real, GLOBALDIM > &a_point) const |
| |
| virtual void | print (ostream &out) const |
| |
| virtual void | makeGrids (const ProblemDomain &a_domain, DisjointBoxLayout &a_grids, const int &a_maxGridSize, const int &a_maxIrregGridSize) |
| |
This implicit function takes one or two implicit functions and uses them to produce a generalized surface of revolution.
In 3D, if one function is given, then it is restricted to x >= 0 in the x-y plane (z = 0), revolved around the y axis, and the y axis is rotated to the z axis. In 2D, the function is restricted to x >= 0 and the x axis (y = 0) and revolved around the origin.
In 3D, if two functions are given then the first is restricted to x >= 0 in the x-y plane (z = 0), revolved around the y axis, and the y axis is rotated to the z axis. At each angle between 0 and 2*Pi, the second function restricted to the x axis (y = z = 0) is used to get an angle to rotate the first function in the x-y plane with respect to a given point before it is rotated about the y axis. In 2D, the first function is used as above and the second function is ignored.
Note: the second function (if given) should have the same value at x = 0 and x = 2*Pi (y = z = 0) or a values that differs by some integer multiple of 2*Pi.