Logo  0.95.0-final
Finite Element Embedded Library and Language in C++
Feel++ Feel++ on Github Feel++ community
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Feel::SystemImplicitNonLinear< SpaceType > Class Template Referenceabstract

#include <systemimplicitnonlinear.hpp>

Detailed Description

template<typename SpaceType>
class Feel::SystemImplicitNonLinear< SpaceType >

Describes nonlinear implicit systems.

Author
Christophe Prud'homme
See Also
+ Inheritance diagram for Feel::SystemImplicitNonLinear< SpaceType >:

Public Types

Typedefs
typedef
SystemImplicitNonLinear
< SpaceType > 
self_type
 
typedef
SystemImplicitNonLinear
< SpaceType > 
system_type
 
typedef super::value_type value_type
 
typedef super::functionspace_type functionspace_type
 
typedef super::functionspace_type functionspace_ptrtype
 
typedef super::element_type element_type
 
typedef super::backend_type backend_type
 
typedef super::backend_ptrtype backend_ptrtype
 
typedef super::sparse_matrix_type sparse_matrix_type
 
typedef
super::sparse_matrix_ptrtype 
sparse_matrix_ptrtype
 
typedef super::vector_type vector_type
 
typedef super::vector_ptrtype vector_ptrtype
 
- Public Types inherited from Feel::SystemImplicit< SpaceType >
typedef SystemImplicit< SpaceType > system_type
 
typedef super::value_type value_type
 
typedef super::functionspace_type functionspace_type
 
typedef super::functionspace_type functionspace_ptrtype
 
typedef super::element_type element_type
 
typedef Backend< value_type > backend_type
 
typedef boost::shared_ptr
< backend_type
backend_ptrtype
 
typedef
backend_type::sparse_matrix_type 
sparse_matrix_type
 
typedef
backend_type::sparse_matrix_ptrtype 
sparse_matrix_ptrtype
 
typedef backend_type::vector_type vector_type
 
typedef
backend_type::vector_ptrtype 
vector_ptrtype
 

Public Member Functions

Constructors, destructor
 SystemImplicitNonLinear (functionspace_ptrtype const &Xh, po::variables_map const &vm)
 default constructor
 
 SystemImplicitNonLinear (SystemImplicitNonLinear const &)
 copy constructor
 
 ~SystemImplicitNonLinear ()
 destructor
 
Operator overloads
SystemImplicitNonLinearoperator= (SystemImplicitNonLinear const &o)
 copy operator
 
Accessors
sparse_matrix_ptrtype const & jacobian () const
 
sparse_matrix_ptrtype & jacobian ()
 
vector_ptrtype const & residual () const
 
vector_ptrtype & residual ()
 
Methods
virtual void updateResidual (const vector_ptrtype &X, vector_ptrtype &R)=0
 function that update the residual at each non linear iteration
 
virtual void updateJacobian (const vector_ptrtype &X, sparse_matrix_ptrtype &J)=0
 function that update the jacobian at each non linear iteration
 
void solve (element_type &u)
 default implementation that solves the nonlinear system
 
- Public Member Functions inherited from Feel::SystemImplicit< SpaceType >
 SystemImplicit (functionspace_ptrtype const &Xh, po::variables_map const &vm)
 
 SystemImplicit (SystemImplicit const &si)
 copy constructor
 
 ~SystemImplicit ()
 destructor
 
SystemImplicitoperator= (SystemImplicit const &o)
 copy operator
 
backend_ptrtype & backend ()
 set the backend
 
backend_ptrtype const & backend () const
 
void backend (backend_ptrtype const &b)
 set the backend
 

Protected Attributes

sparse_matrix_ptrtype M_J
 
vector_ptrtype M_R
 
- Protected Attributes inherited from Feel::SystemImplicit< SpaceType >
backend_ptrtype M_backend
 

Member Function Documentation

template<typename SpaceType >
sparse_matrix_ptrtype const& Feel::SystemImplicitNonLinear< SpaceType >::jacobian ( ) const
inline
Returns
the jacobian matrix
template<typename SpaceType >
sparse_matrix_ptrtype& Feel::SystemImplicitNonLinear< SpaceType >::jacobian ( )
inline
Returns
the jacobian matrix
template<typename SpaceType >
vector_ptrtype const& Feel::SystemImplicitNonLinear< SpaceType >::residual ( ) const
inline
Returns
the residual
template<typename SpaceType >
vector_ptrtype& Feel::SystemImplicitNonLinear< SpaceType >::residual ( )
inline
Returns
the residual

The documentation for this class was generated from the following file:

Generated on Sun Oct 20 2013 08:25:09 for Feel++ by doxygen 1.8.4