SmoothSuperellipsoidBaseIC is the base class for all initial conditions that create superellipsoids. More...
#include <SmoothSuperellipsoidBaseIC.h>
Public Member Functions | |
SmoothSuperellipsoidBaseIC (const InputParameters ¶meters) | |
virtual Real | value (const Point &p) |
virtual RealGradient | gradient (const Point &p) |
virtual void | initialSetup () |
Protected Member Functions | |
virtual Real | computeSuperellipsoidValue (const Point &p, const Point ¢er, Real a, Real b, Real c, Real n) |
virtual Real | computeSuperellipsoidInverseValue (const Point &p, const Point ¢er, Real a, Real b, Real c, Real n) |
RealGradient | computeSuperellipsoidGradient (const Point &p, const Point ¢er, Real a, Real b, Real c, Real n) |
virtual void | computeSuperellipsoidSemiaxes ()=0 |
virtual void | computeSuperellipsoidExponents ()=0 |
virtual void | computeSuperellipsoidCenters ()=0 |
Protected Attributes | |
MooseMesh & | _mesh |
Real | _invalue |
Real | _outvalue |
Real | _nestedvalue |
Real | _int_width |
bool | _zero_gradient |
unsigned int | _num_dim |
std::vector< Point > | _centers |
std::vector< Real > | _as |
std::vector< Real > | _bs |
std::vector< Real > | _cs |
std::vector< Real > | _ns |
MooseRandom | _random |
SmoothSuperellipsoidBaseIC is the base class for all initial conditions that create superellipsoids.
A superellipsoid is described by \( \left|\frac{x}{a}\right|^n + \left|\frac{y}{b}\right|^n + \left|\frac{z}{c}\right|^n = 1\). Note that all children must resize _as, _bs, _cs, _ns, and _centers.
Definition at line 28 of file SmoothSuperellipsoidBaseIC.h.
SmoothSuperellipsoidBaseIC::SmoothSuperellipsoidBaseIC | ( | const InputParameters & | parameters | ) |
Definition at line 37 of file SmoothSuperellipsoidBaseIC.C.
|
protectedpure virtual |
Implemented in BimodalInverseSuperellipsoidsIC, BimodalSuperellipsoidsIC, MultiSmoothSuperellipsoidIC, SmoothSuperellipsoidIC, and SpecifiedSmoothSuperellipsoidIC.
Referenced by initialSetup().
|
protectedpure virtual |
Implemented in BimodalSuperellipsoidsIC, MultiSmoothSuperellipsoidIC, SmoothSuperellipsoidIC, and SpecifiedSmoothSuperellipsoidIC.
Referenced by initialSetup().
|
protected |
|
protectedvirtual |
Definition at line 155 of file SmoothSuperellipsoidBaseIC.C.
Referenced by BimodalInverseSuperellipsoidsIC::value().
|
protectedpure virtual |
Implemented in BimodalSuperellipsoidsIC, MultiSmoothSuperellipsoidIC, SmoothSuperellipsoidIC, and SpecifiedSmoothSuperellipsoidIC.
Referenced by initialSetup().
|
protectedvirtual |
Definition at line 114 of file SmoothSuperellipsoidBaseIC.C.
Referenced by gradient(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
virtual |
Definition at line 89 of file SmoothSuperellipsoidBaseIC.C.
|
virtual |
Reimplemented in BimodalInverseSuperellipsoidsIC, BimodalSuperellipsoidsIC, and MultiSmoothSuperellipsoidIC.
Definition at line 51 of file SmoothSuperellipsoidBaseIC.C.
Referenced by MultiSmoothSuperellipsoidIC::initialSetup(), and BimodalSuperellipsoidsIC::initialSetup().
|
virtual |
Reimplemented in BimodalInverseSuperellipsoidsIC.
Definition at line 72 of file SmoothSuperellipsoidBaseIC.C.
Referenced by computeSuperellipsoidInverseValue(), computeSuperellipsoidValue(), and gradient().
|
protected |
Definition at line 61 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), SpecifiedSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), SmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), BimodalSuperellipsoidsIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), gradient(), initialSetup(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 62 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), SpecifiedSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), SmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), BimodalSuperellipsoidsIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), gradient(), initialSetup(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 60 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), SpecifiedSmoothSuperellipsoidIC::computeSuperellipsoidCenters(), SmoothSuperellipsoidIC::computeSuperellipsoidCenters(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidCenters(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), gradient(), initialSetup(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 63 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), SpecifiedSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), SmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), BimodalSuperellipsoidsIC::computeSuperellipsoidSemiaxes(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), gradient(), initialSetup(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 55 of file SmoothSuperellipsoidBaseIC.h.
Referenced by computeSuperellipsoidGradient(), computeSuperellipsoidInverseValue(), and computeSuperellipsoidValue().
|
protected |
Definition at line 52 of file SmoothSuperellipsoidBaseIC.h.
Referenced by computeSuperellipsoidGradient(), computeSuperellipsoidInverseValue(), computeSuperellipsoidValue(), gradient(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 50 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidCenters(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), computeSuperellipsoidGradient(), computeSuperellipsoidInverseValue(), computeSuperellipsoidValue(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), MultiSmoothSuperellipsoidIC::initialSetup(), and BimodalSuperellipsoidsIC::initialSetup().
|
protected |
Definition at line 54 of file SmoothSuperellipsoidBaseIC.h.
Referenced by computeSuperellipsoidInverseValue().
|
protected |
Definition at line 64 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::checkExtremes(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), SpecifiedSmoothSuperellipsoidIC::computeSuperellipsoidExponents(), SmoothSuperellipsoidIC::computeSuperellipsoidExponents(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidExponents(), BimodalSuperellipsoidsIC::computeSuperellipsoidExponents(), MultiSmoothSuperellipsoidIC::ellipsoidsOverlap(), gradient(), initialSetup(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 58 of file SmoothSuperellipsoidBaseIC.h.
|
protected |
Definition at line 53 of file SmoothSuperellipsoidBaseIC.h.
Referenced by computeSuperellipsoidGradient(), computeSuperellipsoidValue(), gradient(), value(), and BimodalInverseSuperellipsoidsIC::value().
|
protected |
Definition at line 66 of file SmoothSuperellipsoidBaseIC.h.
Referenced by MultiSmoothSuperellipsoidIC::computeSuperellipsoidCenters(), BimodalSuperellipsoidsIC::computeSuperellipsoidCenters(), BimodalInverseSuperellipsoidsIC::computeSuperellipsoidCenters(), MultiSmoothSuperellipsoidIC::computeSuperellipsoidSemiaxes(), BimodalSuperellipsoidsIC::computeSuperellipsoidSemiaxes(), and SmoothSuperellipsoidBaseIC().
|
protected |
Definition at line 56 of file SmoothSuperellipsoidBaseIC.h.
Referenced by gradient().