QUGaR 0.1.3
Loading...
Searching...
No Matches
qugar::impl::funcs::Ellipsoid< dim > Class Template Reference

Dimension independent ellipsoidal function. The function is defined by the ellipsoid's semi-axes and centered at the origin. The function presents a negative sign around the origin, and positive far away. More...

#include <primitive_funcs_lib.hpp>

Inheritance diagram for qugar::impl::funcs::Ellipsoid< dim >:
[legend]
Collaboration diagram for qugar::impl::funcs::Ellipsoid< dim >:
[legend]

Public Member Functions

 Ellipsoid (const Point< dim > &semi_axes)
 Constructor.
 Ellipsoid (const Point< dim > &semi_axes, const RefSystem< dim > &system)
 Constructs an Ellipsoid object with specified semi-axes and reference system.
Public Member Functions inherited from qugar::impl::funcs::EllipsoidBase< dim >
 EllipsoidBase (const Point< dim > &semi_axes, const RefSystem< dim > &system)
 Constructs an Ellipsoid object with specified semi-axes and reference system.
const Point< dim > & semi_axes () const
 Gets the semi-axes of the ellipsoid.
const RefSystem< dim > & ref_system () const
 Gets the reference system of the ellipsoid.
Public Member Functions inherited from qugar::impl::DomainFunc< dim, 1 >
 DomainFunc ()=default
 Default constructor.
 DomainFunc (const DomainFunc &)=default
 Default copy constructor.
 DomainFunc (DomainFunc &&)=default
 Default move constructor.
DomainFuncoperator= (const DomainFunc &)=default
 Default copy assignment operator.
DomainFuncoperator= (DomainFunc &&)=default
 Default move assignment operator.
virtual ~DomainFunc ()=default
 Default virtual destructor.
virtual Value< realoperator() (const Point< dim > &point) const=0
 Evaluator operator.
virtual Value< Interval< dim > > operator() (const Point< dim, Interval< dim > > &point) const=0
 Evaluator operator.
virtual Gradient< realgrad (const Point< dim > &point) const=0
 Gradient evaluator operator.
virtual Gradient< Interval< dim > > grad (const Point< dim, Interval< dim > > &point) const=0
 Gradient evaluator operator.
virtual Hessian< realhessian (const Point< dim > &point) const=0
 Hessian evaluator operator.

Public Attributes

 declare_impl_func_virtual_interface

Additional Inherited Members

Public Types inherited from qugar::impl::DomainFunc< dim, 1 >
using Interval
 Algoim's interval alias.
using Value
 Value type.
using Gradient
 Gradient type.
using Hessian
 Hessian (symmetric type).
Static Public Attributes inherited from qugar::impl::DomainFunc< dim, 1 >
static const int num_hessian
 Number of Hessian (symmetric) components.
Static Protected Member Functions inherited from qugar::impl::funcs::EllipsoidBase< dim >
static RefSystem< dim > get_default_system ()
 Gets the default reference system of the ellipsoid.
Protected Attributes inherited from qugar::impl::funcs::EllipsoidBase< dim >
Point< dim > semi_axes_
 Ellipsoid's semi-axes.
RefSystem< dim > system_
 Ellipsoid's reference system.

Detailed Description

template<int dim>
class qugar::impl::funcs::Ellipsoid< dim >

Dimension independent ellipsoidal function. The function is defined by the ellipsoid's semi-axes and centered at the origin. The function presents a negative sign around the origin, and positive far away.

Note
This class is implemented as an orthotropic scaling of a sphere.
Template Parameters
dimParametric dimension.
Note
Non-Bezier version.

Constructor & Destructor Documentation

◆ Ellipsoid() [1/2]

template<int dim>
qugar::impl::funcs::Ellipsoid< dim >::Ellipsoid ( const Point< dim > & semi_axes)
explicit

Constructor.

Parameters
semi_axesSemi-axes length along the Cartesian axes.
Here is the call graph for this function:

◆ Ellipsoid() [2/2]

template<int dim>
qugar::impl::funcs::Ellipsoid< dim >::Ellipsoid ( const Point< dim > & semi_axes,
const RefSystem< dim > & system )

Constructs an Ellipsoid object with specified semi-axes and reference system.

Parameters
semi_axesA Point object representing the semi-axes of the ellipsoid.
systemA RefSystem object representing the reference system in which the ellipsoid is defined.
Here is the call graph for this function:

Member Data Documentation

◆ declare_impl_func_virtual_interface

template<int dim>
qugar::impl::funcs::Ellipsoid< dim >::declare_impl_func_virtual_interface

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