mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-27 21:55:41 -04:00
Creating a new subclass, CADSurface, with empty definitions for now.
This commit is contained in:
parent
959514e8be
commit
4a43e28560
2 changed files with 38 additions and 1 deletions
|
|
@ -65,7 +65,7 @@ public:
|
|||
std::vector<int> neighbor_neg_; //!< List of cells on negative side
|
||||
|
||||
explicit Surface(pugi::xml_node surf_node);
|
||||
|
||||
|
||||
virtual ~Surface() {}
|
||||
|
||||
//! Determine which side of a surface a point lies on.
|
||||
|
|
@ -110,6 +110,22 @@ protected:
|
|||
virtual void to_hdf5_inner(hid_t group_id) const = 0;
|
||||
};
|
||||
|
||||
//==============================================================================
|
||||
//! A `Surface` representing a CAD-based surface in DAGMC.
|
||||
//==============================================================================
|
||||
|
||||
class CADSurface : public Surface
|
||||
{
|
||||
public:
|
||||
explicit CADSurface(pugi::xml_node surf_node);
|
||||
double evaluate(const double xyz[3]) const;
|
||||
double distance(const double xyz[3], const double uvw[3],
|
||||
bool coincident) const;
|
||||
void normal(const double xyz[3], double uvw[3]) const;
|
||||
//! Get the bounding box of this surface.
|
||||
BoundingBox bounding_box() const;
|
||||
};
|
||||
|
||||
//==============================================================================
|
||||
//! A `Surface` that supports periodic boundary conditions.
|
||||
//!
|
||||
|
|
|
|||
|
|
@ -239,6 +239,27 @@ Surface::to_hdf5(hid_t group_id) const
|
|||
close_group(surf_group);
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
// CADSurface implementation
|
||||
//==============================================================================
|
||||
|
||||
CADSurface::CADSurface(pugi::xml_node surf_node) : Surface {surf_node} {} // empty constructor
|
||||
|
||||
double CADSurface::evaluate(const double xyz[3]) const
|
||||
{
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
double CADSurface::distance(const double xyz[3], const double uvw[3], bool coincident) const {
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
void CADSurface::normal(const double xyz[3], double uvw[3]) const {
|
||||
return;
|
||||
}
|
||||
|
||||
BoundingBox CADSurface::bounding_box() const { return BoundingBox(); }
|
||||
|
||||
//==============================================================================
|
||||
// PeriodicSurface implementation
|
||||
//==============================================================================
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue