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::core_data< Data, Id > Class Template Reference

#include <problem.hpp>

Detailed Description

template<typename Data, int Id = FUNCTIONAL>
class Feel::core_data< Data, Id >

Author
Christophe Prud'homme

Public Types

enum  {
  _E_n = Data::_E_n,
  _E_f = 1,
  _E_g = Data::_E_g,
  _E_ng = Data::_E_g + 2*_E_n,
  _E_h = Data::_E_h,
  _E_nA = Data::_E_n + ( _E_n )*( _E_n-1 )/2
}
 
typedef IF< Id==FUNCTIONAL,
typename array_fixed
< numerical_gradient_type,
_E_f >::type, typename IF< Id==EQUALITIES,
typename array_fixed
< numerical_gradient_type,
_E_h >::type, typename
array_fixed
< numerical_gradient_type,
_E_g >::type >::Result >
::Result 
gradient_type
 value type for the functional gradient
 
typedef IF< Id==FUNCTIONAL,
typename array_fixed
< numerical_hessian_type, _E_f >
::type, typename IF< Id==EQUALITIES,
typename array_fixed
< numerical_hessian_type, _E_h >
::type, typename array_fixed
< numerical_hessian_type, _E_g >
::type >::Result >::Result 
hessian_type
 value type for the functional hessian: in packed format
 
typedef ublas::vector< double > numerical_gradient_type
 
typedef
ublas::symmetric_matrix
< double, ublas::upper > 
numerical_hessian_type
 matrix type
 
typedef Data::value_type numerical_type
 
typedef IF< Id==FUNCTIONAL,
typename array_fixed
< numerical_type, _E_f >::type,
typename IF< Id==EQUALITIES,
typename array_fixed
< numerical_type, _E_h >::type,
typename array_fixed
< numerical_type, _E_ng >
::type >::Result >::Result 
value_type
 value type for the functional
 

Public Member Functions

gradient_type const & gradient () const
 
gradient_typegradient ()
 
numerical_gradient_type & gradient (int __i)
 
numerical_gradient_type gradient (int __i) const
 
numerical_type & gradient (int __i, int __j)
 
numerical_type gradient (int __i, int __j) const
 
hessian_type const & hessian () const
 
hessian_typehessian ()
 
numerical_hessian_type const & hessian (int __i) const
 
numerical_hessian_typehessian (int __i)
 
numerical_type & hessian (int __i, int __j, int __k)
 
numerical_type hessian (int __i, int __j, int __k) const
 
value_type value () const
 
value_typevalue ()
 
numerical_type value (int __i) const
 
numerical_type & value (int __i)
 

Protected Attributes

gradient_type M_grad
 
hessian_type M_hess
 
value_type M_val
 

Member Enumeration Documentation

template<typename Data, int Id = FUNCTIONAL>
anonymous enum
Enumerator
_E_n 

number of control variables

_E_f 

number of objective functions

_E_g 

number of inequalities

_E_ng 

size of informations stored for inequalities

_E_h 

number of equalities

_E_nA 

number of entries in the matrix


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

Generated on Sun Dec 22 2013 13:11:17 for Feel++ by doxygen 1.8.5