[ < ] [ > ]   [Contents] [Index] [ ? ]

3.5 Partial Derivatives

The partial derivative rules are included in a Mortran macro series in ‘Derive_mac’ of Miniker files. When using an anusual function, one should verify that the corersponding rules are in that file. It is easy to understand and add new rules in analogy with the already existing ones.

For instance, suppose one wants to use the intrinsic Fortran function abs(). Its derivatives uses the other function sign() this way:

 &'(ABS(#))(/#)' = '((#1)(/#2)*SIGN(1.,#1))'

In such cases when one is adding a new rule, it is important to use the generic function names only (i.e. sin not dsin), because when compilating Miniker in the double precision version, or complex version, the generic names will correctly handle the different variable types - which is not the case when coding with specific function names.


[ < ] [ > ]   [Contents] [Index] [ ? ]

3.5.1 Derivating a power function

Partial derivative of a function in exponent is not secure in its Fortran form g(x,y)**(f(y)). It should be replaced by power(g,f) of the Miniker ‘mathlib’, or by the explicit form exp(f(y)*log(g(x,y))).

Its derivative will have the following form:

∂xf g = gfg-1∂xf + f glogf ∂xg
        g-1
     = f   (g∂xf + f∂xg)

and is in the macros list already defined in: ‘DERIVE_MAC’.


[Contents] [Index] [ ? ]

This document was generated on May 20, 2012 using texi2any.