Public Member Functions | Private Member Functions | Private Attributes | List of all members
oomph::EighthSphereDomain Class Reference

Eighth sphere as domain. Domain is parametrised by four macro elements. More...

#include <eighth_sphere_domain.h>

+ Inheritance diagram for oomph::EighthSphereDomain:

Public Member Functions

 EighthSphereDomain (const double &radius)
 Constructor: Pass the radius of the sphere.
 
 EighthSphereDomain (const EighthSphereDomain &)=delete
 Broken copy constructor.
 
void operator= (const EighthSphereDomain &)=delete
 Broken assignment operator.
 
 ~EighthSphereDomain ()
 Destructor: Empty; cleanup done in base class.
 
void macro_element_boundary (const unsigned &t, const unsigned &imacro, const unsigned &idirect, const Vector< double > &s, Vector< double > &f)
 Vector representation of the imacro-th macro element boundary idirect (L/R/D/U/B/F) at time level t (t=0: present; t>0: previous): f(s).
 
- Public Member Functions inherited from oomph::Domain
 Domain ()
 Constructor.
 
 Domain (const Domain &)=delete
 Broken copy constructor.
 
void operator= (const Domain &)=delete
 Broken assignment operator.
 
virtual ~Domain ()
 Destructor: Strictly speaking, whoever creates an object dynamically should be responsible for the cleanup of said object but it makes sense here for the Domain to generically kill any MacroElements left over in the MacroElement container (if it hasn't already been done in the derived class) to avoid memory leaks.
 
MacroElementmacro_element_pt (const unsigned &i)
 Access to i-th macro element.
 
unsigned nmacro_element ()
 Number of macro elements in domain.
 
void output (const std::string &filename, const unsigned &nplot)
 Output macro elements.
 
void output (std::ostream &outfile, const unsigned &nplot)
 Output macro elements.
 
virtual void macro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary i_direct (e.g. N/S/W/E in 2D) at continuous time, t.
 
void macro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary i_direct (e.g. N/S/W/E in 2D) at current time: f(s).
 
void output_macro_element_boundaries (const std::string &filename, const unsigned &nplot)
 Output all macro element boundaries as tecplot zones.
 
void output_macro_element_boundaries (std::ostream &outfile, const unsigned &nplot)
 Output all macro element boundaries as tecplot zones.
 
virtual void dmacro_element_boundary (const unsigned &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary derivatives i_direct (e.g. N/S/W/E in 2D) at time level t (t=0: present; t>0: previous): f(s). Broken virtual.
 
virtual void dmacro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary derivatives i_direct (e.g. N/S/W/E in 2D) at continuous time level t. Broken virtual.
 
void dmacro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary derivatives i_direct (e.g. N/S/W/E in 2D) at current time: f(s).
 
virtual void d2macro_element_boundary (const unsigned &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary second derivatives i_direct (e.g. N/S/W/E in 2D) at time level t (t=0: present; t>0: previous): f(s). Broken virtual.
 
virtual void d2macro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary seocond derivatives i_direct (e.g. N/S/W/E in 2D) at continuous time level t. Broken virtual.
 
void d2macro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f)
 Vector representation of the i_macro-th macro element boundary second derivatives i_direct (e.g. N/S/W/E in 2D) at current time: f(s).
 

Private Member Functions

void r_centr_L (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_centr_R (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_centr_D (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_centr_U (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_centr_B (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_centr_F (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of central box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_L (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_R (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_D (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_U (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_B (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_right_F (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of right box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_L (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_R (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_D (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_U (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_B (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_up_F (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_L (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_R (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_D (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_U (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_B (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 
void r_front_F (const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
 Boundary of top left box macro element zeta $ \in [-1,1]^2 $.
 

Private Attributes

double Radius
 

Additional Inherited Members

- Protected Attributes inherited from oomph::Domain
Vector< MacroElement * > Macro_element_pt
 Vector of pointers to macro elements.
 

Detailed Description

Eighth sphere as domain. Domain is parametrised by four macro elements.

Definition at line 41 of file eighth_sphere_domain.h.

Constructor & Destructor Documentation

◆ EighthSphereDomain() [1/2]

oomph::EighthSphereDomain::EighthSphereDomain ( const double radius)
inline

Constructor: Pass the radius of the sphere.

Definition at line 45 of file eighth_sphere_domain.h.

References i, and oomph::Domain::Macro_element_pt.

◆ EighthSphereDomain() [2/2]

oomph::EighthSphereDomain::EighthSphereDomain ( const EighthSphereDomain )
delete

Broken copy constructor.

◆ ~EighthSphereDomain()

oomph::EighthSphereDomain::~EighthSphereDomain ( )
inline

Destructor: Empty; cleanup done in base class.

Definition at line 67 of file eighth_sphere_domain.h.

Member Function Documentation

◆ macro_element_boundary()

void oomph::EighthSphereDomain::macro_element_boundary ( const unsigned t,
const unsigned imacro,
const unsigned idirect,
const Vector< double > &  s,
Vector< double > &  f 
)
inlinevirtual

Vector representation of the imacro-th macro element boundary idirect (L/R/D/U/B/F) at time level t (t=0: present; t>0: previous): f(s).

Implements oomph::Domain.

Definition at line 74 of file eighth_sphere_domain.h.

References oomph::OcTree::Direct_string, r_centr_B(), r_centr_D(), r_centr_F(), r_centr_L(), r_centr_R(), r_centr_U(), r_front_B(), r_front_D(), r_front_F(), r_front_L(), r_front_R(), r_front_U(), r_right_B(), r_right_D(), r_right_F(), r_right_L(), r_right_R(), r_right_U(), r_up_B(), r_up_D(), r_up_F(), r_up_L(), r_up_R(), r_up_U(), s, and t.

◆ operator=()

void oomph::EighthSphereDomain::operator= ( const EighthSphereDomain )
delete

Broken assignment operator.

◆ r_centr_B()

void oomph::EighthSphereDomain::r_centr_B ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 477 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary().

◆ r_centr_D()

void oomph::EighthSphereDomain::r_centr_D ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 451 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary().

◆ r_centr_F()

void oomph::EighthSphereDomain::r_centr_F ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 490 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary(), and r_front_B().

◆ r_centr_L()

void oomph::EighthSphereDomain::r_centr_L ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 425 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary().

◆ r_centr_R()

void oomph::EighthSphereDomain::r_centr_R ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 438 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary(), and r_right_L().

◆ r_centr_U()

void oomph::EighthSphereDomain::r_centr_U ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of central box macro element zeta $ \in [-1,1]^2 $.

Definition at line 464 of file eighth_sphere_domain.h.

References Radius.

Referenced by macro_element_boundary(), and r_up_D().

◆ r_front_B()

void oomph::EighthSphereDomain::r_front_B ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 879 of file eighth_sphere_domain.h.

References r_centr_F(), and t.

Referenced by macro_element_boundary().

◆ r_front_D()

void oomph::EighthSphereDomain::r_front_D ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 840 of file eighth_sphere_domain.h.

References i, r_front_F(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_front_F()

void oomph::EighthSphereDomain::r_front_F ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 890 of file eighth_sphere_domain.h.

References i, and Radius.

Referenced by macro_element_boundary(), r_front_D(), and r_front_L().

◆ r_front_L()

void oomph::EighthSphereDomain::r_front_L ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 798 of file eighth_sphere_domain.h.

References i, r_front_F(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_front_R()

void oomph::EighthSphereDomain::r_front_R ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 826 of file eighth_sphere_domain.h.

References r_right_F(), and t.

Referenced by macro_element_boundary().

◆ r_front_U()

void oomph::EighthSphereDomain::r_front_U ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 868 of file eighth_sphere_domain.h.

References r_up_F(), and t.

Referenced by macro_element_boundary().

◆ r_right_B()

void oomph::EighthSphereDomain::r_right_B ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 603 of file eighth_sphere_domain.h.

References i, r_right_R(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_right_D()

void oomph::EighthSphereDomain::r_right_D ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 547 of file eighth_sphere_domain.h.

References i, r_right_R(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_right_F()

void oomph::EighthSphereDomain::r_right_F ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 631 of file eighth_sphere_domain.h.

References i, r_right_R(), Radius, and t.

Referenced by macro_element_boundary(), and r_front_R().

◆ r_right_L()

void oomph::EighthSphereDomain::r_right_L ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 503 of file eighth_sphere_domain.h.

References r_centr_R(), and t.

Referenced by macro_element_boundary().

◆ r_right_R()

void oomph::EighthSphereDomain::r_right_R ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 514 of file eighth_sphere_domain.h.

References i, and Radius.

Referenced by macro_element_boundary(), r_right_B(), r_right_D(), r_right_F(), and r_right_U().

◆ r_right_U()

void oomph::EighthSphereDomain::r_right_U ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of right box macro element zeta $ \in [-1,1]^2 $.

Definition at line 575 of file eighth_sphere_domain.h.

References i, r_right_R(), Radius, and t.

Referenced by macro_element_boundary(), and r_up_R().

◆ r_up_B()

void oomph::EighthSphereDomain::r_up_B ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 742 of file eighth_sphere_domain.h.

References i, r_up_U(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_up_D()

void oomph::EighthSphereDomain::r_up_D ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 698 of file eighth_sphere_domain.h.

References r_centr_U(), and t.

Referenced by macro_element_boundary().

◆ r_up_F()

void oomph::EighthSphereDomain::r_up_F ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 770 of file eighth_sphere_domain.h.

References i, r_up_U(), Radius, and t.

Referenced by macro_element_boundary(), and r_front_U().

◆ r_up_L()

void oomph::EighthSphereDomain::r_up_L ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 659 of file eighth_sphere_domain.h.

References i, r_up_U(), Radius, and t.

Referenced by macro_element_boundary().

◆ r_up_R()

void oomph::EighthSphereDomain::r_up_R ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 687 of file eighth_sphere_domain.h.

References r_right_U(), and t.

Referenced by macro_element_boundary().

◆ r_up_U()

void oomph::EighthSphereDomain::r_up_U ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  f 
)
private

Boundary of top left box macro element zeta $ \in [-1,1]^2 $.

Definition at line 709 of file eighth_sphere_domain.h.

References i, and Radius.

Referenced by macro_element_boundary(), r_up_B(), r_up_F(), and r_up_L().

Member Data Documentation

◆ Radius

double oomph::EighthSphereDomain::Radius
private

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