Domain representing a quarter pipe. More...
#include <quarter_pipe_domain.h>
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... | |
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... | |
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 Inner_boundary_cross_section_pt, and Outer_boundary_cross_section_pt.
|
inline |
Broken copy constructor.
Definition at line 79 of file quarter_pipe_domain.h.
|
inline |
Destructor: Cleanup.
Definition at line 92 of file quarter_pipe_domain.h.
References Inner_boundary_cross_section_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, and macro_element_boundary().
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 |
| void oomph::QuarterPipeDomain::macro_element_boundary | ( | const unsigned & | t, |
| const unsigned & | imacro, | ||
| const unsigned & | idirect, | ||
| 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).
Vector representation of the imacro-th macro element boundary idirect (U/D/L/R/F/B) at time level t: f(s)
Definition at line 222 of file quarter_pipe_domain.h.
References axial_spacing_fct(), Length, Nr, Ntheta, Nz, r_B(), r_D(), r_F(), r_L(), r_R(), r_U(), Rmax, and Rmin.
Referenced by axial_spacing_fct().
|
inline |
Broken assignment operator.
Definition at line 86 of file quarter_pipe_domain.h.
|
private |
Boundary of macro element zeta
.
Back face of a macro element
.
Definition at line 472 of file quarter_pipe_domain.h.
References Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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 Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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 Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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 Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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 Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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 Inner_boundary_cross_section_pt, Outer_boundary_cross_section_pt, 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().