27#ifndef OOMPH_EIGHTH_SPHERE_DOMAIN_HEADER
28#define OOMPH_EIGHTH_SPHERE_DOMAIN_HEADER
31#include "../generic/quadtree.h"
32#include "../generic/domain.h"
33#include "../generic/geom_objects.h"
82#ifdef WARN_ABOUT_SUBTLY_CHANGED_OOMPH_INTERFACES
85 "Order of function arguments has changed between versions 0.8 and 0.85",
86 "EighthSphereDomain::macro_element_boundary(...)",
125 <<
"not one of L, R, U, D, B, F" << std::endl;
167 <<
"not one of L, R, U, D, B, F" << std::endl;
208 <<
"not one of L, R, U, D, B, F" << std::endl;
248 <<
"not one of L, R, U, D, B, F" << std::endl;
261 <<
", but should be in the range 0-3" << std::endl;
527 double k0 = 0.5 * (1.0 +
zeta[0]);
528 double k1 = 0.5 * (1.0 +
zeta[1]);
540 for (
unsigned i = 0;
i < 3;
i++)
546 for (
unsigned i = 0;
i < 3;
i++)
573 for (
unsigned i = 0;
i < 3;
i++)
602 for (
unsigned i = 0;
i < 3;
i++)
630 for (
unsigned i = 0;
i < 3;
i++)
659 for (
unsigned i = 0;
i < 3;
i++)
687 for (
unsigned i = 0;
i < 3;
i++)
726 double k0 = 0.5 * (1.0 +
zeta[0]);
727 double k1 = 0.5 * (1.0 +
zeta[1]);
739 for (
unsigned i = 0;
i < 3;
i++)
745 for (
unsigned i = 0;
i < 3;
i++)
772 for (
unsigned i = 0;
i < 3;
i++)
801 for (
unsigned i = 0;
i < 3;
i++)
830 for (
unsigned i = 0;
i < 3;
i++)
874 for (
unsigned i = 0;
i < 3;
i++)
914 double k0 = 0.5 * (1.0 +
zeta[0]);
915 double k1 = 0.5 * (1.0 +
zeta[1]);
927 for (
unsigned i = 0;
i < 3;
i++)
933 for (
unsigned i = 0;
i < 3;
i++)
Eighth sphere as domain. Domain is parametrised by four macro elements.
void r_right_U(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
void r_centr_F(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
void r_front_L(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_centr_R(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
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 (...
void r_up_U(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_centr_B(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
void r_front_D(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_right_R(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
void r_front_R(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
EighthSphereDomain(const EighthSphereDomain &)=delete
Broken copy constructor.
void r_front_F(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_right_D(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
EighthSphereDomain(const double &radius)
Constructor: Pass the radius of the sphere.
void operator=(const EighthSphereDomain &)=delete
Broken assignment operator.
void r_up_F(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_right_F(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
void r_front_B(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_centr_D(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
void r_up_B(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
~EighthSphereDomain()
Destructor: Empty; cleanup done in base class.
void r_right_B(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
void r_right_L(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of right box macro element zeta .
void r_up_R(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_up_D(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_centr_L(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
void r_front_U(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_up_L(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of top left box macro element zeta .
void r_centr_U(const unsigned &t, const Vector< double > &zeta, Vector< double > &f)
Boundary of central box macro element zeta .
/////////////////////////////////////////////////////////////////// /////////////////////////////////...
////////////////////////////////////////////////////////////////////// //////////////////////////////...