chombo-discharge
|
A Cartesian array of spheres. More...
#include <CD_SphereArray.H>
Public Member Functions | |
SphereArray ()=delete | |
Disallowed (for now) | |
SphereArray (const Real a_radius, const RealVect a_loCenter, const RealVect a_sphereGap, const IntVect a_numSpheres, const bool a_useFast, const bool a_flipInside, const Real a_zCoord=0.0) | |
SphereArray full constructor. Constructs an array of spheres. | |
SphereArray (const SphereArray &a_inputIF) | |
Copy constructor. Sends the pointers to the object. | |
virtual | ~SphereArray () |
Destructor (does nothing) | |
virtual Real | value (const RealVect &a_point) const override |
Value function. | |
virtual BaseIF * | newImplicitFunction () const override |
Factory method – calls the copy constructor. | |
Protected Attributes | |
bool | m_useFast |
Switch for using fast or slow union. | |
bool | m_flipInside |
Make inside to outside. | |
std::shared_ptr< EBGeometry::ImplicitFunction< Real > > | m_slowUnion |
Standard union ala Chombo. | |
std::shared_ptr< EBGeometry::ImplicitFunction< Real > > | m_fastUnion |
Union that uses bounding volume hierarchy acceleration. | |
Static Protected Attributes | |
static constexpr size_t | K = 4 |
Tree degree for BVH accelerator. | |
A Cartesian array of spheres.
SphereArray::SphereArray | ( | const Real | a_radius, |
const RealVect | a_loCenter, | ||
const RealVect | a_sphereGap, | ||
const IntVect | a_numSpheres, | ||
const bool | a_useFast, | ||
const bool | a_flipInside, | ||
const Real | a_zCoord = 0.0 |
||
) |
SphereArray full constructor. Constructs an array of spheres.
[in] | a_radius | Sphere radius |
[in] | a_lowerLeft | Lower-left sphere center |
[in] | a_sphereGap | Distance between spheres |
[in] | a_numSpheres | Number of spheres in each coordinate direction |
[in] | a_useFast | Use fast union or not |
[in] | a_flipInside | Make outside to inside |
[in] | a_zCoord | If 2D, this sets the z-coordinate |
Value function.
[in] | a_point | Coordinate |