#include <Sphere.h>

Public Member Functions | |
| std::pair< Point, Point > | box () const override final |
| Return the bounding box. | |
| Point | centroid () const override final |
| Return the centroid. | |
| std::unique_ptr< AMP::Geometry::Geometry > | clone () const override final |
| Clone the object. | |
| void | displace (const double *x) override final |
| Displace the entire geometry. | |
| double | distance (const Point &pos, const Point &dir) const override final |
| Calculate the distance to the object given a ray. | |
| uint8_t | getDim () const |
| Get the number of dimensions for the object. | |
| AMP::Mesh::GeomType | getGeomType () const override final |
| Get the geometric type for the geometry. | |
| virtual uint64_t | getID () const |
| Return a unique hash id. | |
| uint8_t | getLogicalDim () const |
| Return the number of logical dimensions. | |
| ArraySize | getLogicalGridSize (const ArraySize &x) const override final |
| Return the logical grid size. | |
| ArraySize | getLogicalGridSize (const std::vector< double > &res) const override final |
| Return the logical grid size. | |
| const auto & | getLogicalSurfaceIds () const |
| Return the surface ids for the logical boundaries. | |
| std::string | getName () const override final |
| Get the name of the geometry. | |
| std::array< bool, 3 > | getPeriodicDim () const |
| Return the logical grid periodic dimensions. | |
| bool | inside (const Point &pos) const override final |
| Is the point in the geometry. | |
| bool | isConvex () const override final |
| Is the object convex. | |
| Point | logical (const Point &x) const override final |
| Return the logical position. | |
| Point | nearest (const Point &pos) const override final |
| Calculate the nearest point on the surface. | |
| int | NSurface () const override final |
| Get the number of surfaces. | |
| bool | operator!= (const Geometry &rhs) const |
| Check if two geometries are not equal. | |
| bool | operator== (const Geometry &rhs) const override final |
| Check if two geometries are equal. | |
| Point | physical (const Point &x) const override final |
| Return the physical position. | |
| virtual void | registerChildObjects (AMP::IO::RestartManager *manager) const |
| Register child objects. | |
| Sphere (double R) | |
| Construct a Sphere geometry. | |
| Sphere (int64_t) | |
| Construct from restart. | |
| Sphere (std::shared_ptr< const AMP::Database > db) | |
| Construct a Sphere geometry. | |
| int | surface (const Point &) const override final |
| Get the surface id. | |
| Point | surfaceNorm (const Point &) const override final |
| Return the outward normal to a surface. | |
| double | volume () const override final |
| Return the volume. | |
| void | writeRestart (int64_t) const override |
| Write restart data to file. | |
Static Public Member Functions | |
| static std::shared_ptr< AMP::Geometry::Geometry > | buildGeometry (std::shared_ptr< const AMP::Database > db) |
| Create a geometry. | |
Protected Attributes | |
| const std::array< int, 6 > | d_ids |
| const uint8_t | d_logicalDim |
| std::array< double, 3 > | d_offset |
| const uint8_t | d_physicalDim |
| double | d_r |
Private Member Functions | |
| Sphere () | |
|
explicit |
Construct a Sphere geometry.
| db | Input database |
|
explicit |
Construct a Sphere geometry.
| R | The radius of the sphere |
| AMP::Geometry::Sphere::Sphere | ( | int64_t | ) |
Construct from restart.
|
private |
Return the bounding box.
This function will return the bounding box of the object
Implements AMP::Geometry::Geometry.
|
staticinherited |
Create a geometry.
This function will create a geometry based on the input database.
| [in] | db | Parameters for constructing a geometry from an input database |
|
finaloverridevirtual |
Return the centroid.
This function will return the centroid of the object. The centroid is equivalent to the center of mass of object of uniform density.
Implements AMP::Geometry::Geometry.
|
finaloverridevirtual |
Clone the object.
Implements AMP::Geometry::Geometry.
|
finaloverridevirtual |
Displace the entire geometry.
This function will displace the entire geometry by a scalar value. The displacement vector should be the size of the physical dimension.
| [in] | x | Displacement vector |
Implements AMP::Geometry::Geometry.
|
finaloverridevirtual |
Calculate the distance to the object given a ray.
This function computes the distance to the object given a ray. If the ray is inside the object, this distance is negitive. If the ray will never intersect the object, this distance is inf.
| [in] | pos | Current position of ray |
| [in] | dir | Direction of ray (should be normalized for most uses) |
Implements AMP::Geometry::Geometry.
|
inlineinherited |
Get the number of dimensions for the object.
This function returns the number of physical dimensions for the geometry
Definition at line 42 of file Geometry.h.
References AMP::Geometry::Geometry::d_physicalDim.
|
finaloverridevirtualinherited |
Get the geometric type for the geometry.
This function returns the largest geometric type supported by the geometry
Reimplemented from AMP::Geometry::Geometry.
|
virtualinherited |
Return a unique hash id.
|
inlineinherited |
Return the number of logical dimensions.
This function will return the number of logical dimensions of the underlying geometry. If the geometry is not logically rectangular this function should return 0.
Definition at line 44 of file LogicalGeometry.h.
References AMP::Geometry::LogicalGeometry::d_logicalDim.
|
finaloverridevirtual |
Return the logical grid size.
This function will return the dimensions of a logical grid given a size that makes sense for the object.
| [in] | x | Input size |
Implements AMP::Geometry::LogicalGeometry.
|
finaloverridevirtual |
Return the logical grid size.
This function will return the dimensions of a logical grid given a desired resolution
| [in] | res | Desired resolution |
Implements AMP::Geometry::LogicalGeometry.
|
inlineinherited |
Return the surface ids for the logical boundaries.
This function will return the surface ids for each logical boundary. If a logical boundary is periodic, it will return -1. If a logical boundary maps to another point on the boundary, it will return -2. If a logical boundary is not periodic, is not physical, and does not map to another point on the boundary (i.e. unused dimensions), it will return -3. Note: The returned array may be larger than the number of dimensions
Definition at line 83 of file LogicalGeometry.h.
References AMP::Geometry::LogicalGeometry::d_ids.
|
inlinefinaloverridevirtual |
Get the name of the geometry.
Implements AMP::Geometry::Geometry.
|
inherited |
Return the logical grid periodic dimensions.
This function will return a vector indicating which logical grid dimensions are periodic. Note: The returned array may be larger than the number of dimensions
|
finaloverridevirtual |
Is the point in the geometry.
This function checks if the ray is in the geometry. If it is on the surface, it will return true.
| [in] | pos | Current position |
Implements AMP::Geometry::Geometry.
|
inlinefinaloverridevirtual |
Is the object convex.
Check if the geometric object is convex
Implements AMP::Geometry::Geometry.
Return the logical position.
This function will return logical coordinate given the physical coordinates
| [in] | x | Physical coordinate of the point |
Implements AMP::Geometry::LogicalGeometry.
Calculate the nearest point on the surface.
This function computes the nearest point on the surface
| [in] | pos | Current position of ray |
Implements AMP::Geometry::Geometry.
|
inlinefinaloverridevirtual |
Get the number of surfaces.
This function will return the number of unique surfaces
Implements AMP::Geometry::Geometry.
|
inlineinherited |
Check if two geometries are not equal.
Definition at line 151 of file Geometry.h.
References AMP::Geometry::Geometry::operator==().
|
finaloverridevirtual |
Check if two geometries are equal.
Implements AMP::Geometry::Geometry.
Return the physical position.
This function will return physical coordinate given the logical coordinates
| [in] | x | Logical coordinate of the point |
Implements AMP::Geometry::LogicalGeometry.
|
virtualinherited |
Register child objects.
This function register child objects if necessary
| manager | Restart manager |
Reimplemented in AMP::Geometry::MultiGeometry.
|
inlinefinaloverridevirtual |
Get the surface id.
This function will return the surface id closest to the point
| [in] | x | Current position |
Implements AMP::Geometry::Geometry.
Return the outward normal to a surface.
This function will return the surface id and outward normal to the surface at the given point
| [in] | x | Current position |
Implements AMP::Geometry::Geometry.
|
finaloverridevirtual |
Return the volume.
This function will return the interior volume of the object
Implements AMP::Geometry::Geometry.
|
overridevirtual |
Write restart data to file.
This function will write the mesh to an HDF5 file
| fid | File identifier to write |
Reimplemented from AMP::Geometry::LogicalGeometry.
|
protectedinherited |
Definition at line 113 of file LogicalGeometry.h.
Referenced by AMP::Geometry::LogicalGeometry::getLogicalSurfaceIds(), and AMP::Geometry::RotationalGeometry::RotationalGeometry().
|
protectedinherited |
Definition at line 112 of file LogicalGeometry.h.
Referenced by AMP::Geometry::LogicalGeometry::getLogicalDim(), and AMP::Geometry::RotationalGeometry::RotationalGeometry().
|
protected |
|
protectedinherited |
Definition at line 200 of file Geometry.h.
Referenced by AMP::Geometry::Geometry::getDim().
|
Advanced Multi-Physics (AMP) Oak Ridge National Laboratory Idaho National Laboratory Los Alamos National Laboratory |
This page automatically produced from the source code by Last updated: Tue Mar 10 2026 13:06:42. Comments on this page |