[dune-functions] Inconsistency in Derivative types

Carsten Gräser graeser at mi.fu-berlin.de
Thu Mar 20 17:39:01 CET 2014

for me the definition in dune-functions is
simply wrong. For f:R^n ->R^m the
Jacobian should definitively be in
in R^(m x n). I'm afraid I introduced this.
Sorry for this.


On 20. März 2014 17:18:53 MEZ, Christian Engwer <christian.engwer at uni-muenster.de> wrote:
>I just discovered that we have an inconsistency between LocalFunctions
>and Functions regarding the definition of derivate types.
>In LocalFunctions we provide the convinience method evaluateJacobian,
>which takes a JacobianType by reference to store the result. You would
>usually expect this JacobianType to be the same type as the type of
>the first derivative in Functions, but...
>In Functions we define
>  FieldMatrix<F,GridDim,RangeDim>
>where as in LocalFunctions we define
>  FieldMatrix<F,RangeDim,GridDim>
>It is not a huge problem, but kind of ugly. How shall we proceed. The
>reason in LocalFunctions was that in case of scalar functions, we can
>easily get the gradient fomr the jacobian as jac[0]. 
>We could avoid this, if we use Traits like in Functions and add
>specilizations for FieldVector<F,1>, such that we use this thing
>directly. In Functions we define Traits for scalar types like double,
>but in practice these are never used. As we extract the RangeType from
>LocalFunctions it is always FieldVector, even in the scalar case.
>On the long run we have to find a nice solution and should be
>consistent between LocalFunctions and Functions. In my opinion this
>fix could also include interface changes in LocalFunctions.
>dune-functions mailing list
>dune-functions at dune-project.org

Prof. Dr. Carsten Gräser
Freie Universität Berlin
Institut für Mathematik
Arnimallee 6
14195 Berlin, Germany
phone: +49 30 838 75349
fax  : +49 30 838 54977
email: graeser at mi.fu-berlin.de
URL  : http://page.mi.fu-berlin.de/graeser

More information about the dune-functions mailing list