Monte Carlo Integration Library 1.0
High-performance Monte Carlo methods for numerical integration and optimization
Public Member Functions | Public Attributes | List of all members
DroneArmDomain Class Reference
Inheritance diagram for DroneArmDomain:
Collaboration diagram for DroneArmDomain:

Public Member Functions

 DroneArmDomain ()
 
mc::geom::Bounds< DIMgetBounds () const override
 Get the axis-aligned bounding box of the domain.
 
double getBoxVolume () const override
 Compute the volume of the bounding box.
 
bool isInside (const mc::geom::Point< DIM > &p) const override
 
void exportGeometry (const std::string &output_dir, double hx, double hy, double hz, double hr) const
 
- Public Member Functions inherited from mc::domains::IntegrationDomain< DIM >
virtual bool isInside (const mc::geom::Point< dim > &point) const=0
 Test whether a point lies inside the domain.
 
virtual ~IntegrationDomain ()=default
 Virtual destructor for proper cleanup of derived classes.
 

Public Attributes

std::unique_ptr< mc::domains::HyperRectangle< DIM > > arm
 
std::unique_ptr< mc::domains::HyperCylinder< DIM > > motor_housing
 
std::unique_ptr< mc::domains::PolyTope< DIM > > cabin
 
std::array< double, DIMmotor_offset
 
std::array< double, DIMcabin_offset
 

Detailed Description

Definition at line 166 of file drone_optimization.cpp.

Constructor & Destructor Documentation

◆ DroneArmDomain()

DroneArmDomain::DroneArmDomain ( )
inline

Definition at line 177 of file drone_optimization.cpp.

Member Function Documentation

◆ exportGeometry()

void DroneArmDomain::exportGeometry ( const std::string &  output_dir,
double  hx,
double  hy,
double  hz,
double  hr 
) const
inline

Definition at line 241 of file drone_optimization.cpp.

◆ getBounds()

mc::geom::Bounds< DIM > DroneArmDomain::getBounds ( ) const
inlineoverridevirtual

Get the axis-aligned bounding box of the domain.

Returns
Bounds object containing min/max extents along each axis

Used by samplers to generate candidate points uniformly within a hyperrectangle enclosing the actual domain.

Implements mc::domains::IntegrationDomain< DIM >.

Definition at line 206 of file drone_optimization.cpp.

◆ getBoxVolume()

double DroneArmDomain::getBoxVolume ( ) const
inlineoverridevirtual

Compute the volume of the bounding box.

Returns
Volume of the hyperrectangular bounding region

Required for acceptance-rejection sampling and Hit-or-Miss volume estimation. Returns the product of extents along all axes.

Implements mc::domains::IntegrationDomain< DIM >.

Definition at line 214 of file drone_optimization.cpp.

◆ isInside()

bool DroneArmDomain::isInside ( const mc::geom::Point< DIM > &  p) const
inlineoverride

Definition at line 219 of file drone_optimization.cpp.

Member Data Documentation

◆ arm

std::unique_ptr<mc::domains::HyperRectangle<DIM> > DroneArmDomain::arm

Definition at line 169 of file drone_optimization.cpp.

◆ cabin

std::unique_ptr<mc::domains::PolyTope<DIM> > DroneArmDomain::cabin

Definition at line 171 of file drone_optimization.cpp.

◆ cabin_offset

std::array<double, DIM> DroneArmDomain::cabin_offset

Definition at line 175 of file drone_optimization.cpp.

◆ motor_housing

std::unique_ptr<mc::domains::HyperCylinder<DIM> > DroneArmDomain::motor_housing

Definition at line 170 of file drone_optimization.cpp.

◆ motor_offset

std::array<double, DIM> DroneArmDomain::motor_offset

Definition at line 174 of file drone_optimization.cpp.


The documentation for this class was generated from the following file: