UnitCircle Class Reference
+ Inheritance diagram for UnitCircle:

Public Member Functions

 UnitCircle ()
 
virtual ~UnitCircle ()
 Destructor – emtpy. More...
 
void position (const Vector< double > &xi, Vector< double > &r) const
 
void position (const unsigned &t, const Vector< double > &xi, Vector< double > &r) const
 
- 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 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
 

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

Unit circle in 2D, centred at the origin, parametrised by a single Lagrangian coordinate, the polar angle.

Constructor & Destructor Documentation

◆ UnitCircle()

UnitCircle::UnitCircle ( )
inline

Constructor: Pass the number of Lagrangian and Eulerian coordinates to the constructor of the GeomObject base class.

51 : GeomObject(1,2) {}
GeomObject()
Default constructor.
Definition: geom_objects.h:104

◆ ~UnitCircle()

virtual UnitCircle::~UnitCircle ( )
inlinevirtual

Destructor – emtpy.

54 {}

Member Function Documentation

◆ position() [1/2]

void UnitCircle::position ( const unsigned t,
const Vector< double > &  xi,
Vector< double > &  r 
) const
inlinevirtual

Position vector, r, to the point on the circle identified by
its 1D Lagrangian coordinate, xi (passed as a 1D Vector) at discrete time level t (t=0: present; t>0: previous). The shape of the object is not time-dependent, therefore we forward this call to the steady version.

Reimplemented from oomph::GeomObject.

73  {
74  position(xi,r);
75  }
void position(const Vector< double > &xi, Vector< double > &r) const
Definition: fish_domain.cc:58
r
Definition: UniformPSDSelfTest.py:20

References UniformPSDSelfTest::r.

◆ position() [2/2]

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

Position vector, r, to the point on the circle identified by
its 1D Lagrangian coordinate, xi (passed as a 1D Vector):

Implements oomph::GeomObject.

59  {
60  // Eulerian position vector
61  r[0] = cos(xi[0]);
62  r[1] = sin(xi[0]);
63  }
AnnoyingScalar cos(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:136
AnnoyingScalar sin(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:137

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

Referenced by main().


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