Diode Solver using continuous approximation spaces solve on
and
on
Dim | the geometric dimension of the problem (e.g. Dim=1, 2 or 3) |
Public Types | |
typedef boost::shared_ptr < backend_type > | backend_ptrtype |
linear algebra backend factory shared_ptr<> type | |
typedef Backend< value_type > | backend_type |
linear algebra backend factory | |
typedef bases< Lagrange< Order, Scalar, Discontinuous > > | basis_type |
the basis type of our approximation space | |
typedef bases< Lagrange< Order, Scalar > > | c_basis_type |
typedef c_space_type::element_type | c_element_type |
typedef boost::shared_ptr < c_space_type > | c_space_ptrtype |
typedef FunctionSpace < mesh_type, c_basis_type > | c_space_type |
typedef Simplex< 2, 1 > | convex1_type |
typedef Simplex< 2, OrderGeo > | convex_type |
geometry entities type composing the mesh, here Simplex in Dimension Dim of Order 2 | |
typedef space_type::element_type | element_type |
an element type of the approximation function space | |
typedef boost::shared_ptr < export_type > | export_ptrtype |
the exporter factory (shared_ptr<> type) | |
typedef Exporter< mesh_type, OrderGeo > | export_type |
the exporter factory type | |
typedef boost::shared_ptr < mesh_type > | mesh_ptrtype |
mesh shared_ptr<> type | |
typedef Mesh< convex_type > | mesh_type |
mesh type | |
typedef boost::shared_ptr < space_type > | space_ptrtype |
the approximation function space type (shared_ptr<> type) | |
typedef FunctionSpace < mesh_type, basis_type > | space_type |
the approximation function space type | |
typedef backend_type::sparse_matrix_ptrtype | sparse_matrix_ptrtype |
sparse matrix type associated with backend (shared_ptr<> type) | |
typedef backend_type::sparse_matrix_type | sparse_matrix_type |
sparse matrix type associated with backend | |
typedef double | value_type |
numerical type is double | |
typedef backend_type::vector_ptrtype | vector_ptrtype |
vector type associated with backend (shared_ptr<> type) | |
typedef backend_type::vector_type | vector_type |
vector type associated with backend | |
Public Member Functions | |
template<typename ExExpr > | |
void | checkDG (ExExpr expr) |
Diode () | |
template<typename BdyExpr > | |
void | EulerModifiedStep (double &time, double dt, BdyExpr &wbdy, element_type &Ex, element_type &Ey, element_type &Bz) |
template<typename BdyExpr > | |
void | EulerStep (double &time, double dt, BdyExpr &wbdy, element_type &Ex, element_type &Ey, element_type &Bz) |
template<typename BdyExpr > | |
void | FSolve (BdyExpr &wbdy, double dt, element_type const &Ex, element_type const &Ey, element_type const &Bz, element_type &Exstar, element_type &Eystar, element_type &Bzstar) |
template<typename BdyExpr > | |
void | HeunStep (double &time, double dt, BdyExpr &wbdy, element_type &Ex, element_type &Ey, element_type &Bz) |
template<typename BdyExpr > | |
void | RK4Step (double &time, double dt, BdyExpr &wbdy, element_type &Ex, element_type &Ey, element_type &Bz) |
void | run () |
void | run (const double *X, unsigned long P, double *Y, unsigned long N) |
![]() | |
Simget () | |
virtual | ~Simget () |
destructor | |
Simget & | operator= (Simget const &o) |
copy operator | |
virtual std::string | name () const |
return the name of the simget | |
mpi::communicator | comm () const |
po::variables_map const & | vm () const |
AboutData const & | about () const |
double | meshSize () const |
return the mesh size | |
double | meshSizeInit () const |
return the mesh size | |
int | level () const |
return the refinement level | |
ptree::ptree const & | stats () const |
return the statistics associated to the simget after calling run | |
ptree::ptree & | stats () |
return the statistics associated to the simget after calling run | |
void | setMeshSize (double h) |
set the mesh size | |
void | setMeshSizeInit (double h) |
set the initial mesh size | |
void | setLevel (int level) |
set the refinment level if applicable | |
void | print (std::ostream &out, std::vector< ptree::ptree > &stats) |
Static Public Attributes | |
static const uint16_type | Order = 4 |
Polynomial order ![]() | |
static const uint16_type | OrderGeo = 4 |
Additional Inherited Members | |
![]() | |
Simget & | changeRepository (boost::format fmt) |
![]() | |
int | M_level |
double | M_meshSize |
double | M_meshSizeInit |
ptree::ptree | M_stats |
|
inline |
Constructor
|
virtual |
simply execute the simget
Implements Feel::Simget.
|
virtual |
models the input/output relation
The function space and some associated elements(functions) are then defined
Reimplemented from Feel::Simget.
References Feel::Backend< T >::build(), Feel::elements(), Feel::integrate(), and Feel::projector().