Public Member Functions | Private Attributes | List of all members
MyEllipse Class Reference

Oscillating ellipse. More...

Inheritance diagram for MyEllipse:

Public Member Functions

 MyEllipse (const double &a, const double &a_hat, const double &period, Time *time_pt)
 Constructor: Pass initial x-half axis, amplitude of x-variation, period of oscillation and pointer to time object. More...
 
virtual ~MyEllipse ()
 Destructor: Empty. More...
 
void position (const Vector< double > &xi, Vector< double > &r) const
 Current position vector to material point at Lagrangian coordinate xi. More...
 
void position (const unsigned &t, const Vector< double > &xi, Vector< double > &r) const
 Parametrised position on object: r(xi). Evaluated at previous time level. t=0: current time; t>0: previous time level. More...
 

Private Attributes

double A
 x-half axis More...
 
double A_hat
 Amplitude of variation in x-half axis. More...
 
double T
 Period of oscillation. More...
 
Time * Time_pt
 Pointer to time object. More...
 

Detailed Description

Oscillating ellipse.

\[ x = (A + \widehat{A} \cos(2\pi t/T)) \cos(\xi) \]

\[ y = \frac{\sin(\xi)}{A + \widehat{A} \cos(2\pi t/T)} \]

Note that cross-sectional area is conserved.

Definition at line 47 of file osc_quarter_ellipse.cc.

Constructor & Destructor Documentation

◆ MyEllipse()

MyEllipse::MyEllipse ( const double &  a,
const double &  a_hat,
const double &  period,
Time *  time_pt 
)
inline

Constructor: Pass initial x-half axis, amplitude of x-variation, period of oscillation and pointer to time object.

Definition at line 54 of file osc_quarter_ellipse.cc.

◆ ~MyEllipse()

virtual MyEllipse::~MyEllipse ( )
inlinevirtual

Destructor: Empty.

Definition at line 59 of file osc_quarter_ellipse.cc.

Member Function Documentation

◆ position() [1/2]

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

Parametrised position on object: r(xi). Evaluated at previous time level. t=0: current time; t>0: previous time level.

Definition at line 77 of file osc_quarter_ellipse.cc.

References Global_Physical_Variables::A, Global_Physical_Variables::A_hat, and Global_Physical_Variables::T.

◆ position() [2/2]

void MyEllipse::position ( const Vector< double > &  xi,
Vector< double > &  r 
) const
inline

Current position vector to material point at Lagrangian coordinate xi.

Definition at line 63 of file osc_quarter_ellipse.cc.

References Global_Physical_Variables::A, Global_Physical_Variables::A_hat, and Global_Physical_Variables::T.

Member Data Documentation

◆ A

double MyEllipse::A
private

x-half axis

Definition at line 92 of file osc_quarter_ellipse.cc.

◆ A_hat

double MyEllipse::A_hat
private

Amplitude of variation in x-half axis.

Definition at line 95 of file osc_quarter_ellipse.cc.

◆ T

double MyEllipse::T
private

Period of oscillation.

Definition at line 98 of file osc_quarter_ellipse.cc.

◆ Time_pt

Time* MyEllipse::Time_pt
private

Pointer to time object.

Definition at line 101 of file osc_quarter_ellipse.cc.


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