Example codes
and tutorials
The (Not-so) Quick Guide
List of tutorials/demo codes
Single-Physics Problems
Poisson
Adaptivity illustrated for Poisson
Advection-Diffusion
Unsteady heat equation
Linear wave equation
The Young-Laplace equation
Navier-Stokes
Free-surface Navier-Stokes
Axisymmetric Navier-Stokes
Solid mechanics
Beam structures
Shell structures
Multi-physics Problems
Fluid-structure interaction
Boussinesq convection
Steady thermoelasticity
Methods-based example codes and tutorials
Mesh generation
Linear solvers and preconditioners
Visualisation of the results
Parallel processing
How to write a new element
How to write a new refineable element
Default nonlinear solvers -- the sequence of action functions
...
Documentation
FE theory and top-down discussion of the data structure
The (Not-so) Quick Guide
Comprehensive bottom-up discussion of the data structure
List of available structured and unstructured meshes
Linear solvers and preconditioners
Visualisation of the results
Parallel processing
Coding conventions and C++ style
Creating documentation
Optimisation - robustness vs. "raw speed"
Linear vs. nonlinear problems
Storing shape functions
Changing the default "full" integration scheme
Disabling the ALE formulation of unsteady equations
C vs. C++ output
Different sparse assembly techniques and the STL memory pool
Publications
Publications
Talks
Journal publications
Theses
Picture show
Download
Copyright
Download/installation instructions
Download page
FAQ & Contact
FAQ
Change log
Bugs and other known problems
Completeness of the library & our "To-Do List"
Contact the developers
Get involved

 


Beta release!

Please note that the library has not been "officially" released. While we continue to work on the documentation, these web pages are likely to contain broken links and documents in draft form. Please send an email to

oomph-lib AT maths DOT man DOT ac DOT uk

if you wish to be informed of the library's "official" release.

ConvectionProblem< ELEMENT > Class Template Reference

List of all members.

Detailed Description

template<class ELEMENT>
class ConvectionProblem< ELEMENT >

2D Convection problem on rectangular domain, discretised with refineable elements. The specific type of element is specified via the template parameter.

Definition at line 674 of file boussinesq_convection.cc.


Public Member Functions

 ConvectionProblem ()
 Constructor.
 ~ConvectionProblem ()
 Destructor. Empty.
void actions_before_newton_solve ()
 Update the problem specs before solve (empty).
void actions_after_newton_solve ()
 Update the problem after solve (empty).
void actions_before_adapt ()
 Actions before adapt:(empty).
void actions_before_implicit_timestep ()
 Actions before the timestep (update the the time-dependent boundary conditions).
void fix_pressure (const unsigned &e, const unsigned &pdof, const double &pvalue)
 Fix pressure in element e at pressure dof pdof and set to pvalue.
void doc_solution ()
 Doc the solution.
void set_boundary_conditions (const double &time)
 Set the boundary conditions.
RectangularQuadMesh< ELEMENT > * mesh_pt ()
 Overloaded version of the problem's access function to the mesh. Recasts the pointer to the base Mesh object to the actual mesh type.
 ConvectionProblem ()
 Constructor.
 ~ConvectionProblem ()
 Destructor. Empty.
void actions_before_newton_solve ()
 Update the problem specs before solve (empty).
void actions_after_newton_solve ()
 Update the problem after solve (empty).
void actions_before_adapt ()
 Actions before adapt:(empty).
void actions_before_implicit_timestep ()
 Actions before the timestep (update the the time-dependent boundary conditions).
void fix_pressure (const unsigned &e, const unsigned &pdof, const double &pvalue)
 Fix pressure in element e at pressure dof pdof and set to pvalue.
void doc_solution ()
 Doc the solution.
void set_boundary_conditions (const double &time)
 Set the boundary conditions.
RectangularQuadMesh< NST_ELEMENT > * nst_mesh_pt ()
 Access function to the Navier-Stokes mesh.
RectangularQuadMesh< AD_ELEMENT > * adv_diff_mesh_pt ()
 Access function to the Advection-Diffusion mesh.

Protected Attributes

RectangularQuadMesh< NST_ELEMENT > * Nst_mesh_pt
 Mesh of Navier Stokes elements.
RectangularQuadMesh< AD_ELEMENT > * Adv_diff_mesh_pt
 Mesh of advection diffusion elements.

Private Attributes

DocInfo Doc_info
 DocInfo object.

Constructor & Destructor Documentation

template<class NST_ELEMENT, class AD_ELEMENT>
ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::ConvectionProblem (  ) 

Constructor.

Definition at line 736 of file boussinesq_convection.cc.

References Global_Physical_Variables::Direction_of_gravity(), ConvectionProblem< ELEMENT >::Doc_info, ConvectionProblem< ELEMENT >::fix_pressure(), Global_Physical_Variables::Inverse_Prandtl, ConvectionProblem< ELEMENT >::mesh_pt(), Global_Physical_Variables::Peclet, and Global_Physical_Variables::Rayleigh.

template<class ELEMENT>
ConvectionProblem< ELEMENT >::~ConvectionProblem (  )  [inline]

Destructor. Empty.

Definition at line 683 of file boussinesq_convection.cc.

template<class ELEMENT>
ConvectionProblem< ELEMENT >::ConvectionProblem (  ) 

Constructor.

template<class ELEMENT>
ConvectionProblem< ELEMENT >::~ConvectionProblem (  )  [inline]

Destructor. Empty.

Definition at line 87 of file multi_domain_boussinesq_convection.cc.


Member Function Documentation

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_after_newton_solve (  )  [inline]

Update the problem after solve (empty).

Definition at line 93 of file multi_domain_boussinesq_convection.cc.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_after_newton_solve (  )  [inline]

Update the problem after solve (empty).

Definition at line 689 of file boussinesq_convection.cc.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_adapt (  )  [inline]

Actions before adapt:(empty).

Definition at line 96 of file multi_domain_boussinesq_convection.cc.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_adapt (  )  [inline]

Actions before adapt:(empty).

Definition at line 692 of file boussinesq_convection.cc.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_implicit_timestep (  )  [inline]

Actions before the timestep (update the the time-dependent boundary conditions).

Definition at line 100 of file multi_domain_boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::set_boundary_conditions().

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_implicit_timestep (  )  [inline]

Actions before the timestep (update the the time-dependent boundary conditions).

Definition at line 696 of file boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::set_boundary_conditions().

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_newton_solve (  )  [inline]

Update the problem specs before solve (empty).

Definition at line 90 of file multi_domain_boussinesq_convection.cc.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::actions_before_newton_solve (  )  [inline]

Update the problem specs before solve (empty).

Definition at line 686 of file boussinesq_convection.cc.

template<class ELEMENT>
RectangularQuadMesh<AD_ELEMENT>* ConvectionProblem< ELEMENT >::adv_diff_mesh_pt (  )  [inline]

Access function to the Advection-Diffusion mesh.

Definition at line 127 of file multi_domain_boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::Adv_diff_mesh_pt.

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::doc_solution (  ) 

Doc the solution.

template<class NST_ELEMENT, class AD_ELEMENT>
void ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution (  ) 

Doc the solution.

Definition at line 892 of file boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::Doc_info, and ConvectionProblem< ELEMENT >::mesh_pt().

Referenced by main().

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::fix_pressure ( const unsigned &  e,
const unsigned &  pdof,
const double &  pvalue 
) [inline]

Fix pressure in element e at pressure dof pdof and set to pvalue.

Definition at line 106 of file multi_domain_boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::fix_pressure(), and ConvectionProblem< ELEMENT >::nst_mesh_pt().

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::fix_pressure ( const unsigned &  e,
const unsigned &  pdof,
const double &  pvalue 
) [inline]

Fix pressure in element e at pressure dof pdof and set to pvalue.

Definition at line 702 of file boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::mesh_pt().

Referenced by ConvectionProblem< ELEMENT >::ConvectionProblem(), and ConvectionProblem< ELEMENT >::fix_pressure().

template<class ELEMENT>
RectangularQuadMesh<ELEMENT>* ConvectionProblem< ELEMENT >::mesh_pt (  )  [inline]

Overloaded version of the problem's access function to the mesh. Recasts the pointer to the base Mesh object to the actual mesh type.

Definition at line 719 of file boussinesq_convection.cc.

Referenced by ConvectionProblem< ELEMENT >::ConvectionProblem(), ConvectionProblem< ELEMENT >::doc_solution(), ConvectionProblem< ELEMENT >::fix_pressure(), and ConvectionProblem< ELEMENT >::set_boundary_conditions().

template<class ELEMENT>
RectangularQuadMesh<NST_ELEMENT>* ConvectionProblem< ELEMENT >::nst_mesh_pt (  )  [inline]

Access function to the Navier-Stokes mesh.

Definition at line 121 of file multi_domain_boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::Nst_mesh_pt.

Referenced by ConvectionProblem< ELEMENT >::fix_pressure().

template<class ELEMENT>
void ConvectionProblem< ELEMENT >::set_boundary_conditions ( const double &  time  ) 

Set the boundary conditions.

template<class NST_ELEMENT, class AD_ELEMENT>
void ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::set_boundary_conditions ( const double &  time  ) 

Set the boundary conditions.

Set the boundary conditions as a function of continuous time

Definition at line 839 of file boussinesq_convection.cc.

References ConvectionProblem< ELEMENT >::mesh_pt().

Referenced by ConvectionProblem< ELEMENT >::actions_before_implicit_timestep(), and main().


Member Data Documentation

template<class ELEMENT>
RectangularQuadMesh<AD_ELEMENT>* ConvectionProblem< ELEMENT >::Adv_diff_mesh_pt [protected]

Mesh of advection diffusion elements.

Definition at line 143 of file multi_domain_boussinesq_convection.cc.

Referenced by ConvectionProblem< ELEMENT >::adv_diff_mesh_pt().

template<class ELEMENT>
DocInfo ConvectionProblem< ELEMENT >::Doc_info [private]

DocInfo object.

Definition at line 728 of file boussinesq_convection.cc.

Referenced by ConvectionProblem< ELEMENT >::ConvectionProblem(), and ConvectionProblem< ELEMENT >::doc_solution().

template<class ELEMENT>
RectangularQuadMesh<NST_ELEMENT>* ConvectionProblem< ELEMENT >::Nst_mesh_pt [protected]

Mesh of Navier Stokes elements.

Definition at line 140 of file multi_domain_boussinesq_convection.cc.

Referenced by ConvectionProblem< ELEMENT >::nst_mesh_pt().


The documentation for this class was generated from the following files:
Generated on Mon Aug 10 11:46:18 2009 by  doxygen 1.4.7