dune-fem  2.6-git
differentiableoperator.hh
Go to the documentation of this file.
1 #ifndef DUNE_FEM_DIFFERENTIABLEOPERATOR_HH
2 #define DUNE_FEM_DIFFERENTIABLEOPERATOR_HH
3 
5 
6 namespace Dune
7 {
8 
9  namespace Fem
10  {
11 
25  template< class JacobianOperator >
27  : public virtual Dune::Fem::Operator< typename JacobianOperator::DomainFunctionType,
28  typename JacobianOperator::RangeFunctionType >
29  {
30  typedef Dune::Fem::Operator< typename JacobianOperator::DomainFunctionType,
31  typename JacobianOperator::RangeFunctionType > BaseType;
32 
33  public:
35  typedef JacobianOperator JacobianOperatorType;
36 
41 
43  typedef typename DomainFunctionType::RangeFieldType DomainFieldType;
45  typedef typename RangeFunctionType::RangeFieldType RangeFieldType;
46 
54  virtual void jacobian ( const DomainFunctionType &u, JacobianOperatorType &jOp ) const = 0;
55  };
56 
57  } // namespace Fem
58 
59 } // namespace Dune
60 
61 #endif // #ifndef DUNE_FEM_DIFFERENTIABLEOPERATOR_HH
Definition: bindguard.hh:11
abstract differentiable operator
Definition: differentiableoperator.hh:29
BaseType::RangeFunctionType RangeFunctionType
type of discrete function in the operator's range
Definition: differentiableoperator.hh:40
JacobianOperator JacobianOperatorType
type of linear operator modelling the operator's Jacobian
Definition: differentiableoperator.hh:35
BaseType::DomainFunctionType DomainFunctionType
type of discrete function in the operator's domain
Definition: differentiableoperator.hh:38
DomainFunctionType::RangeFieldType DomainFieldType
field type of the operator's domain
Definition: differentiableoperator.hh:43
virtual void jacobian(const DomainFunctionType &u, JacobianOperatorType &jOp) const =0
obtain linearization
RangeFunctionType::RangeFieldType RangeFieldType
field type of the operator's range
Definition: differentiableoperator.hh:45
abstract operator
Definition: operator.hh:26
DomainFunction DomainFunctionType
type of discrete function in the operator's domain
Definition: operator.hh:28
RangeFunction RangeFunctionType
type of discrete function in the operator's range
Definition: operator.hh:30
Definition: dghelmholtz.hh:20