Domain representing a quarter pipe. More...
#include <quarter_pipe_domain.h>
Inheritance diagram for oomph::QuarterPipeDomain:Public Types | |
| typedef double(* | AxialSpacingFctPt) (const double &xi) |
| Typedef for function pointer for function that implements axial spacing of macro elements. More... | |
Public Member Functions | |
| QuarterPipeDomain (const unsigned &ntheta, const unsigned &nr, const unsigned &nz, const double &rmin, const double &rmax, const double &length) | |
| Constructor: Pass number of elements in various directions, the inner and outer radius and the length of the tube. More... | |
| QuarterPipeDomain (const QuarterPipeDomain &) | |
| Broken copy constructor. More... | |
| void | operator= (const QuarterPipeDomain &) |
| Broken assignment operator. More... | |
| ~QuarterPipeDomain () | |
| Destructor: Cleanup. More... | |
| AxialSpacingFctPt & | axial_spacing_fct_pt () |
| Function pointer for function that implements axial spacing of macro elements. More... | |
| double | axial_spacing_fct (const double &xi) |
| Function that implements axial spacing of macro elements. More... | |
| void | macro_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 i_direct (U/D/L/R/F/B) at time level t (t=0: present; t>0: previous): f(s). More... | |
Public Member Functions inherited from oomph::Domain | |
| Domain () | |
| Constructor. More... | |
| Domain (const Domain &) | |
| Broken copy constructor. More... | |
| void | operator= (const Domain &) |
| Broken assignment operator. More... | |
| virtual | ~Domain () |
| Virtual destructor: Empty. More... | |
| MacroElement * | macro_element_pt (const unsigned &i) |
| Access to i-th macro element. More... | |
| unsigned | nmacro_element () |
| Number of macro elements in domain. More... | |
| void | output (const std::string &filename, const unsigned &nplot) |
| Output macro elements. More... | |
| void | output (std::ostream &outfile, const unsigned &nplot) |
| Output macro elements. More... | |
| 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). More... | |
| void | output_macro_element_boundaries (const std::string &filename, const unsigned &nplot) |
| Output all macro element boundaries as tecplot zones. More... | |
| void | output_macro_element_boundaries (std::ostream &outfile, const unsigned &nplot) |
| Output all macro element boundaries as tecplot zones. More... | |
| 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. More... | |
| 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). More... | |
| 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. More... | |
| 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). More... | |
Private Member Functions | |
| void | r_U (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
| void | r_L (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
| void | r_D (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
| void | r_R (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
| void | r_F (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
| void | r_B (const unsigned &t, const Vector< double > &zeta, Vector< double > &f, const double &rmin, const double &rmax, const double &thetamin, const double &thetamax, const double &zmin, const double &zmax) |
Boundary of macro element zeta . More... | |
Static Private Member Functions | |
| static double | default_axial_spacing_fct (const double &xi) |
| Default for function that implements axial spacing of macro elements. More... | |
Private Attributes | |
| unsigned | Ntheta |
| Number of elements azimuthal direction. More... | |
| unsigned | Nr |
| Number of elements radial direction. More... | |
| unsigned | Nz |
| Number of elements axial direction. More... | |
| double | Rmin |
| Inner radius. More... | |
| double | Rmax |
| Outer radius. More... | |
| double | Length |
| Length. More... | |
| GeomObject * | Outer_boundary_cross_section_pt |
| Geom object representing the outer boundary of the cross section. More... | |
| GeomObject * | Inner_boundary_cross_section_pt |
| Geom object representing the inner boundary of the cross section. More... | |
| AxialSpacingFctPt | Axial_spacing_fct_pt |
| Function pointer for function that implements axial spacing of macro elements. More... | |
Additional Inherited Members | |
Protected Attributes inherited from oomph::Domain | |
| Vector< MacroElement * > | Macro_element_pt |
| Vector of pointers to macro elements. More... | |
Domain representing a quarter pipe.
Definition at line 46 of file quarter_pipe_domain.h.
| typedef double(* oomph::QuarterPipeDomain::AxialSpacingFctPt) (const double &xi) |
Typedef for function pointer for function that implements axial spacing of macro elements.
Definition at line 105 of file quarter_pipe_domain.h.
|
inline |
Constructor: Pass number of elements in various directions, the inner and outer radius and the length of the tube.
Definition at line 53 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, oomph::Domain::Macro_element_pt, and Outer_boundary_cross_section_pt.
|
inline |
Broken copy constructor.
Definition at line 79 of file quarter_pipe_domain.h.
References oomph::BrokenCopy::broken_copy().
|
inline |
Destructor: Cleanup.
Definition at line 92 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, oomph::Domain::Macro_element_pt, Nr, Ntheta, Nz, and Outer_boundary_cross_section_pt.
|
inline |
Function that implements axial spacing of macro elements.
Definition at line 116 of file quarter_pipe_domain.h.
References Axial_spacing_fct_pt, macro_element_boundary(), s, and t.
Referenced by macro_element_boundary().
|
inline |
Function pointer for function that implements axial spacing of macro elements.
Definition at line 109 of file quarter_pipe_domain.h.
References Axial_spacing_fct_pt.
|
inlinestaticprivate |
|
virtual |
Vector representation of the i_macro-th macro element boundary i_direct (U/D/L/R/F/B) at time level t (t=0: present; t>0: previous): f(s).
Vector representation of the imacro-th macro element boundary idirect (U/D/L/R/F/B) at time level t: f(s)
Implements oomph::Domain.
Definition at line 222 of file quarter_pipe_domain.h.
References axial_spacing_fct(), oomph::OcTreeNames::B, oomph::OcTreeNames::D, oomph::OcTreeNames::F, oomph::BinaryTreeNames::L, Length, Nr, Ntheta, Nz, oomph::MathematicalConstants::Pi, oomph::BinaryTreeNames::R, r_B(), r_D(), r_F(), r_L(), r_R(), r_U(), Rmax, Rmin, and oomph::OcTreeNames::U.
Referenced by axial_spacing_fct().
|
inline |
Broken assignment operator.
Definition at line 86 of file quarter_pipe_domain.h.
References oomph::BrokenCopy::broken_assign().
|
private |
Boundary of macro element zeta
.
Back face of a macro element
.
Definition at line 472 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Boundary of macro element zeta
.
Left face of a macro element
.
Definition at line 376 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Boundary of macro element zeta
.
Front face of a macro element
.
Definition at line 441 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Boundary of macro element zeta
.
Left face of a macro element
.
Definition at line 300 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Boundary of macro element zeta
.
Right face of a macro element
.
Definition at line 336 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Boundary of macro element zeta
.
Right face of a macro element
.
Definition at line 408 of file quarter_pipe_domain.h.
References i, Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, oomph::GeomObject::position(), Rmax, and Rmin.
Referenced by default_axial_spacing_fct(), and macro_element_boundary().
|
private |
Function pointer for function that implements axial spacing of macro elements.
Definition at line 160 of file quarter_pipe_domain.h.
Referenced by axial_spacing_fct(), and axial_spacing_fct_pt().
|
private |
Geom object representing the inner boundary of the cross section.
Definition at line 156 of file quarter_pipe_domain.h.
Referenced by QuarterPipeDomain(), r_B(), r_D(), r_F(), r_L(), r_R(), r_U(), and ~QuarterPipeDomain().
|
private |
Length.
Definition at line 148 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary().
|
private |
Number of elements radial direction.
Definition at line 136 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary(), and ~QuarterPipeDomain().
|
private |
Number of elements azimuthal direction.
Definition at line 133 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary(), and ~QuarterPipeDomain().
|
private |
Number of elements axial direction.
Definition at line 139 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary(), and ~QuarterPipeDomain().
|
private |
Geom object representing the outer boundary of the cross section.
Definition at line 152 of file quarter_pipe_domain.h.
Referenced by QuarterPipeDomain(), r_B(), r_D(), r_F(), r_L(), r_R(), r_U(), and ~QuarterPipeDomain().
|
private |
Outer radius.
Definition at line 145 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary(), r_B(), r_D(), r_F(), r_L(), r_R(), and r_U().
|
private |
Inner radius.
Definition at line 142 of file quarter_pipe_domain.h.
Referenced by macro_element_boundary(), r_B(), r_D(), r_F(), r_L(), r_R(), and r_U().