oomph::HalfEllipse Class Reference

My own Ellipse class. More...

#include <half_rectangle_with_hole_mesh.h>

+ Inheritance diagram for oomph::HalfEllipse:

Public Member Functions

 HalfEllipse (const double &centre_z, const double &a, const double &b)
 Constructor. More...
 
 ~HalfEllipse ()
 Destructor (empty) More...
 
void position (const Vector< double > &xi, Vector< double > &r) const
 Return the position of the Half Ellipse. More...
 
doublecentre_z ()
 Access to z-coordinate of centre. More...
 
doublea ()
 Access to r-half axis. More...
 
doubleb ()
 Access to z-half axis. More...
 
 HalfEllipse (const double &centre_z, const double &a, const double &b)
 Constructor. More...
 
 ~HalfEllipse ()
 Destructor (empty) More...
 
void position (const Vector< double > &xi, Vector< double > &r) const
 Return the position of the Half Ellipse. More...
 
doublecentre_z ()
 Access to z-coordinate of centre. More...
 
doublea ()
 Access to r-half axis. More...
 
doubleb ()
 Access to z-half axis. More...
 
- Public Member Functions inherited from oomph::GeomObject
 GeomObject ()
 Default constructor. More...
 
 GeomObject (const unsigned &ndim)
 
 GeomObject (const unsigned &nlagrangian, const unsigned &ndim)
 
 GeomObject (const unsigned &nlagrangian, const unsigned &ndim, TimeStepper *time_stepper_pt)
 
 GeomObject (const GeomObject &dummy)=delete
 Broken copy constructor. More...
 
void operator= (const GeomObject &)=delete
 Broken assignment operator. More...
 
virtual ~GeomObject ()
 (Empty) destructor More...
 
unsigned nlagrangian () const
 Access function to # of Lagrangian coordinates. More...
 
unsigned ndim () const
 Access function to # of Eulerian coordinates. More...
 
void set_nlagrangian_and_ndim (const unsigned &n_lagrangian, const unsigned &n_dim)
 Set # of Lagrangian and Eulerian coordinates. More...
 
TimeStepper *& time_stepper_pt ()
 
TimeSteppertime_stepper_pt () const
 
virtual unsigned ngeom_data () const
 
virtual Datageom_data_pt (const unsigned &j)
 
virtual void position (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) const
 
virtual void position (const double &t, const Vector< double > &zeta, Vector< double > &r) const
 
virtual void dposition_dt (const Vector< double > &zeta, const unsigned &j, Vector< double > &drdt)
 
virtual void dposition (const Vector< double > &zeta, DenseMatrix< double > &drdzeta) const
 
virtual void d2position (const Vector< double > &zeta, RankThreeTensor< double > &ddrdzeta) const
 
virtual void d2position (const Vector< double > &zeta, Vector< double > &r, DenseMatrix< double > &drdzeta, RankThreeTensor< double > &ddrdzeta) const
 
virtual void locate_zeta (const Vector< double > &zeta, GeomObject *&sub_geom_object_pt, Vector< double > &s, const bool &use_coordinate_as_initial_guess=false)
 
virtual void interpolated_zeta (const Vector< double > &s, Vector< double > &zeta) const
 

Private Attributes

double Centre_z
 z-coordinate of centre More...
 
double A
 r-half axis More...
 
double B
 z-half axis More...
 

Additional Inherited Members

- Protected Attributes inherited from oomph::GeomObject
unsigned NLagrangian
 Number of Lagrangian (intrinsic) coordinates. More...
 
unsigned Ndim
 Number of Eulerian coordinates. More...
 
TimeStepperGeom_object_time_stepper_pt
 

Detailed Description

My own Ellipse class.

Constructor & Destructor Documentation

◆ HalfEllipse() [1/2]

oomph::HalfEllipse::HalfEllipse ( const double centre_z,
const double a,
const double b 
)
inline

Constructor.

47  : GeomObject(1,2), Centre_z(centre_z), A(a), B(b)
48  {}
GeomObject()
Default constructor.
Definition: geom_objects.h:104
double & b()
Access to z-half axis.
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:68
double Centre_z
z-coordinate of centre
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:74
double B
z-half axis
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:80
double & centre_z()
Access to z-coordinate of centre.
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:62
double & a()
Access to r-half axis.
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:65
double A
r-half axis
Definition: axisym_heat_sphere/half_rectangle_with_hole_mesh.h:77

◆ ~HalfEllipse() [1/2]

oomph::HalfEllipse::~HalfEllipse ( )
inline

Destructor (empty)

51 {}

◆ HalfEllipse() [2/2]

oomph::HalfEllipse::HalfEllipse ( const double centre_z,
const double a,
const double b 
)
inline

Constructor.

47  : GeomObject(1,2), Centre_z(centre_z), A(a), B(b)
48  {}

◆ ~HalfEllipse() [2/2]

oomph::HalfEllipse::~HalfEllipse ( )
inline

Destructor (empty)

51 {}

Member Function Documentation

◆ a() [1/2]

double& oomph::HalfEllipse::a ( )
inline

Access to r-half axis.

65 {return A;}

◆ a() [2/2]

double& oomph::HalfEllipse::a ( )
inline

Access to r-half axis.

65 {return A;}

◆ b() [1/2]

double& oomph::HalfEllipse::b ( )
inline

Access to z-half axis.

68 {return B;}

◆ b() [2/2]

double& oomph::HalfEllipse::b ( )
inline

Access to z-half axis.

68 {return B;}

◆ centre_z() [1/2]

double& oomph::HalfEllipse::centre_z ( )
inline

Access to z-coordinate of centre.

62 {return Centre_z;}

◆ centre_z() [2/2]

double& oomph::HalfEllipse::centre_z ( )
inline

Access to z-coordinate of centre.

62 {return Centre_z;}

◆ position() [1/2]

void oomph::HalfEllipse::position ( const Vector< double > &  xi,
Vector< double > &  r 
) const
inlinevirtual

Return the position of the Half Ellipse.

Implements oomph::GeomObject.

55  {
56  r[0] = A*sin(xi[0]);
57  r[1] = Centre_z + B*cos(xi[0]);
58  }
AnnoyingScalar cos(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:136
AnnoyingScalar sin(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:137
Matrix< SCALARA, Dynamic, Dynamic, opt_A > A
Definition: bench_gemm.cpp:47
Definition: matrices.h:74
r
Definition: UniformPSDSelfTest.py:20

References cos(), UniformPSDSelfTest::r, and sin().

◆ position() [2/2]

void oomph::HalfEllipse::position ( const Vector< double > &  xi,
Vector< double > &  r 
) const
inlinevirtual

Return the position of the Half Ellipse.

Implements oomph::GeomObject.

55  {
56  r[0] = A*sin(xi[0]);
57  r[1] = Centre_z + B*cos(xi[0]);
58  }

References cos(), UniformPSDSelfTest::r, and sin().

Member Data Documentation

◆ A

double oomph::HalfEllipse::A
private

r-half axis

◆ B

double oomph::HalfEllipse::B
private

z-half axis

◆ Centre_z

double oomph::HalfEllipse::Centre_z
private

z-coordinate of centre


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