NGSolve
4.9
|
Datatype for automatic differentiation. More...
#include <autodiff.hpp>
Public Types | |
typedef AutoDiff< D, SCAL > | TELEM |
typedef SCAL | TSCAL |
Public Member Functions | |
ALWAYS_INLINE | AutoDiff () throw () |
elements are undefined | |
ALWAYS_INLINE | AutoDiff (const AutoDiff &ad2) throw () |
copy constructor | |
ALWAYS_INLINE | AutoDiff (SCAL aval) throw () |
initial object with constant value | |
ALWAYS_INLINE | AutoDiff (SCAL aval, int diffindex) throw () |
init object with (val, e_diffindex) | |
ALWAYS_INLINE AutoDiff & | operator= (SCAL aval) throw () |
assign constant value | |
SCAL | Value () const throw () |
returns value | |
SCAL | DValue (int i) const throw () |
returns partial derivative | |
SCAL & | Value () throw () |
access value | |
SCAL & | DValue (int i) throw () |
accesses partial derivative | |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator+= (const SCAL &y) throw () |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator+= (const AutoDiff< D, SCAL > &y) throw () |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator-= (const AutoDiff< D, SCAL > &y) throw () |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator*= (const AutoDiff< D, SCAL > &y) throw () |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator*= (const SCAL &y) throw () |
ALWAYS_INLINE AutoDiff< D, SCAL > & | operator/= (const SCAL &y) throw () |
ALWAYS_INLINE bool | operator== (SCAL val2) throw () |
bool | operator!= (SCAL val2) throw () |
bool | operator< (SCAL val2) throw () |
bool | operator> (SCAL val2) throw () |
Datatype for automatic differentiation.
Contains function value and D derivatives. Algebraic operations are overloaded by using product-rule etc. etc.