// $Id: mainpage.txt 609 2012-09-12 19:45:22Z johnoel $
\mainpage Comprehensive Documentation of Functions and Classes
\image html admb-logo-notext-72.png
Documentation of mathematical functions can be found on the
Partial documentation of some of the AUTODIF Library and ADMB classes can
found on the "Classes" tab. No class is
fully documented, but see class \ref dvector for an example of
how it might look.
This preliminary version of the API documentation is a work in progress.
If you would like ton contribute your expertize to the enterprize please
For up-to-date information and download and installation instructions
Comments on groupings
/** \defgroup matop Vector and Matrix Operations.
\details The syntax of ADMB Matrix and vector operations follows normal
mathematical conventions as much as possible. If \c u and \c v are
vectors and \c M is a matrix, \code u*M \endcode is a normal matrix
multiplication and \code u*v \endcode is a dot product.
Element-wise multiplications and divisions are accomplished by
\ref elem_prod and \ref elem_div respectively.
If the arguments to these operations are not conformable for the appropriate
type and operation, the application will exit with an error message.
These operations have been overloaded for appropriate combinations of
constant and variable objects.
The overloaded versions with variable
types are optimized for efficient derivative computation.
Only the constant types are currently documented here.
/** \defgroup PDF Probability Density Functions.
/** \defgroup RNG Random Numbers.
/** \defgroup misc "Helper" Functions
\details ADMB functions to perform common operations. These functions are
typically optimized for automatic differentiation and automatically
invoke custom adjoint code.
/** \defgroup DEVEL Development Utilities
\details ADMB functions of use to developers of ADMB code.
* \defgroup gammafunc Factorial, gamma and related functions.
* \defgroup eigen Eigenvalues and eigenvectors.
* \defgroup cub_spline Class and methods for cubic splines.
\defgroup RA RETURN_ARRAY_INCREMENT and RETURN_ARRAY_DECREMENT
These functions must be called in any function that returns
a "variable" object, ie dvariable, dvar_vector, ... Failure to do so
may generate an error message related to an overflow in the
RETURN_ARRAYS stack, or even worse cause derivatives to be incorrect.
\defgroup AD Classes for Automatic Differentiation.
The algorithms for AD in ADMB are invoked by declaring variables to be
instances of specific classes, usually of type dvariable. Operations on instances of these classes invoke specialized overloaded
operators and functions to the required computations and to automatically
compute the required deravitives.
/** \defgroup BAD Reverse mode Automatic Differentiation.
/** \defgroup FAD Forward mode Automatic Differentiation.
/** \defgroup CONTRIB User-Contributed Libraries.
Collections of C++ and source code for implementing specialized
models in ADMB. These modules are maintained by the original authors.
/** \defgroup STATLIB Statistical Fuctions.
\details Contributed by Steven Martell.
/** \defgroup ECOL Functions Useful in Ecology.
\details Contributed by Mollie Brooks.
/** \defgroup QFC Functions created at the Quantitative Fisheries Center(QFC), Michigan State University.
\details Contributed by Weihai Liu