|
CppNoddy
0.92
|
A class to represent a one dimensional hyperbolic system of equations. More...
#include <OneD_Hyperbolic_System.h>
Public Member Functions | |
| OneD_Hyperbolic_System (const unsigned &order) | |
| virtual | ~OneD_Hyperbolic_System () |
| An empty destructor, virtual since we have virtual methods. More... | |
| virtual void | flux_fn (const double &x, const DenseVector< double > &q, DenseVector< double > &f) const |
| A virtual flux function. More... | |
| virtual void | Jac_flux_fn (const double &x, const DenseVector< double > &q, DenseMatrix< double > &J) const |
| A virtual function function to define the Jacobian of the flux function. More... | |
| virtual double | max_charac_speed (const DenseVector< double > &q) const |
| A virtual method that is used to bound the shock speed and must be implemented by the user. More... | |
| virtual bool_vec | edge_values (const int face_index, const double &x, DenseVector< double > &q, const double &t=0.0) const |
| Define the edge boundary conditions. More... | |
| virtual void | source_fn (const double &x, const DenseVector< double > &q, const DenseVector< double > &slope, DenseVector< double > &r) const |
| unsigned | get_order () |
Protected Attributes | |
| const std::size_t | ORDER_OF_SYSTEM |
| The order of the system of equations. More... | |
A class to represent a one dimensional hyperbolic system of equations.
Definition at line 13 of file OneD_Hyperbolic_System.h.
|
inlineexplicit |
| order | The order of the hyperbolic system |
Definition at line 20 of file OneD_Hyperbolic_System.h.
|
inlinevirtual |
An empty destructor, virtual since we have virtual methods.
Definition at line 24 of file OneD_Hyperbolic_System.h.
|
inlinevirtual |
Define the edge boundary conditions.
| face_index | An index for the face: -1=left +1=right for OneD_TVDLF_Mesh |
| x | The position vector along the face |
| q | The unknowns specified along the face |
| t | A time for unsteady edge conditions |
Reimplemented in CppNoddy::Example::Acoustic_1d_ref, and CppNoddy::Example::NlinAdv.
Definition at line 78 of file OneD_Hyperbolic_System.h.
References ORDER_OF_SYSTEM.
|
inlinevirtual |
A virtual flux function.
| x | The spatial coordinate |
| q | The unknowns |
| f | The flux function |
Reimplemented in CppNoddy::Example::Acoustic_1d, CppNoddy::Example::Acoustic_1d_ref, CppNoddy::Example::NlinAdv, CppNoddy::Example::Shallow_1d_rad, and CppNoddy::Example::Euler_1d.
Definition at line 31 of file OneD_Hyperbolic_System.h.
Referenced by Jac_flux_fn().
|
inline |
Definition at line 85 of file OneD_Hyperbolic_System.h.
References ORDER_OF_SYSTEM.
|
inlinevirtual |
A virtual function function to define the Jacobian of the flux function.
The default method uses first-order finite differencing to compute the Jacobian if not otherwise specified by the user.
| x | The position |
| q | The unknowns |
| J | The Jacobian of the flux function |
first order differencing is the default unless overloaded
Definition at line 45 of file OneD_Hyperbolic_System.h.
References flux_fn(), ORDER_OF_SYSTEM, and CppNoddy::DenseMatrix< _Type >::set_col().
|
inlinevirtual |
A virtual method that is used to bound the shock speed and must be implemented by the user.
| q | The unknowns |
Reimplemented in CppNoddy::Example::Acoustic_1d, CppNoddy::Example::Acoustic_1d_ref, CppNoddy::Example::NlinAdv, CppNoddy::Example::Shallow_1d_rad, and CppNoddy::Example::Euler_1d.
Definition at line 65 of file OneD_Hyperbolic_System.h.
|
inlinevirtual |
Reimplemented in CppNoddy::Example::Shallow_1d_rad.
Definition at line 82 of file OneD_Hyperbolic_System.h.
|
protected |
The order of the system of equations.
Definition at line 92 of file OneD_Hyperbolic_System.h.
Referenced by edge_values(), get_order(), and Jac_flux_fn().
1.9.5
© 2012
R.E. Hewitt