summaryrefslogtreecommitdiffstats
path: root/ast/cminpack/cminpack.h
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-01-09 19:26:44 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-01-09 19:26:44 (GMT)
commit1332d38f2805d986ea130e43218c0d2e870b4dc1 (patch)
treeaa72853cb8d0d8fcd53a6f5eddf196a374226706 /ast/cminpack/cminpack.h
parent5e545ec8058cc5238dc870468b34b5d4617f307f (diff)
downloadblt-1332d38f2805d986ea130e43218c0d2e870b4dc1.zip
blt-1332d38f2805d986ea130e43218c0d2e870b4dc1.tar.gz
blt-1332d38f2805d986ea130e43218c0d2e870b4dc1.tar.bz2
update ast 8.6.2
Diffstat (limited to 'ast/cminpack/cminpack.h')
-rw-r--r--ast/cminpack/cminpack.h370
1 files changed, 0 insertions, 370 deletions
diff --git a/ast/cminpack/cminpack.h b/ast/cminpack/cminpack.h
deleted file mode 100644
index 6d3f757..0000000
--- a/ast/cminpack/cminpack.h
+++ /dev/null
@@ -1,370 +0,0 @@
-/* Header file for cminpack, by Frederic Devernay.
- The documentation for all functions can be found in the file
- minpack-documentation.txt from the distribution, or in the source
- code of each function. */
-
-#ifndef __CMINPACK_H__
-#define __CMINPACK_H__
-
-/* The default floating-point type is "double" for C/C++ and "float" for CUDA,
- but you can change this by defining one of the following symbols when
- compiling the library, and before including cminpack.h when using it:
- __cminpack_double__ for double
- __cminpack_float__ for float
- __cminpack_half__ for half from the OpenEXR library (in this case, you must
- compile cminpack with a C++ compiler)
-*/
-#ifdef __cminpack_double__
-#define __cminpack_real__ double
-#endif
-
-#ifdef __cminpack_float__
-#define __cminpack_real__ float
-#endif
-
-#ifdef __cminpack_half__
-#include <OpenEXR/half.h>
-#define __cminpack_real__ half
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/* Cmake will define cminpack_EXPORTS on Windows when it
-configures to build a shared library. If you are going to use
-another build system on windows or create the visual studio
-projects by hand you need to define cminpack_EXPORTS when
-building a DLL on windows.
-*/
-#if defined (__GNUC__)
-#define CMINPACK_DECLSPEC_EXPORT __declspec(__dllexport__)
-#define CMINPACK_DECLSPEC_IMPORT __declspec(__dllimport__)
-#endif
-#if defined (_MSC_VER) || defined (__BORLANDC__)
-#define CMINPACK_DECLSPEC_EXPORT __declspec(dllexport)
-#define CMINPACK_DECLSPEC_IMPORT __declspec(dllimport)
-#endif
-#ifdef __WATCOMC__
-#define CMINPACK_DECLSPEC_EXPORT __export
-#define CMINPACK_DECLSPEC_IMPORT __import
-#endif
-#ifdef __IBMC__
-#define CMINPACK_DECLSPEC_EXPORT _Export
-#define CMINPACK_DECLSPEC_IMPORT _Import
-#endif
-
-#if !defined(CMINPACK_NO_DLL) && (defined(__WIN32__) || defined(WIN32) || defined (_WIN32))
-#if defined(cminpack_EXPORTS) || defined(CMINPACK_EXPORTS) || defined(CMINPACK_DLL_EXPORTS)
- #define CMINPACK_EXPORT CMINPACK_DECLSPEC_EXPORT
- #else
- #define CMINPACK_EXPORT CMINPACK_DECLSPEC_IMPORT
- #endif /* cminpack_EXPORTS */
-#else /* defined (_WIN32) */
- #define CMINPACK_EXPORT
-#endif
-
-#if defined(__CUDA_ARCH__) || defined(__CUDACC__)
-#define __cminpack_attr__ __device__
-#ifndef __cminpack_real__
-#define __cminpack_float__
-#define __cminpack_real__ float
-#endif
-#define __cminpack_type_fcn_nn__ __cminpack_attr__ int fcn_nn
-#define __cminpack_type_fcnder_nn__ __cminpack_attr__ int fcnder_nn
-#define __cminpack_type_fcn_mn__ __cminpack_attr__ int fcn_mn
-#define __cminpack_type_fcnder_mn__ __cminpack_attr__ int fcnder_mn
-#define __cminpack_type_fcnderstr_mn__ __cminpack_attr__ int fcnderstr_mn
-#define __cminpack_decl_fcn_nn__
-#define __cminpack_decl_fcnder_nn__
-#define __cminpack_decl_fcn_mn__
-#define __cminpack_decl_fcnder_mn__
-#define __cminpack_decl_fcnderstr_mn__
-#define __cminpack_param_fcn_nn__
-#define __cminpack_param_fcnder_nn__
-#define __cminpack_param_fcn_mn__
-#define __cminpack_param_fcnder_mn__
-#define __cminpack_param_fcnderstr_mn__
-#else
-#define __cminpack_attr__
-#ifndef __cminpack_real__
-#define __cminpack_double__
-#define __cminpack_real__ double
-#endif
-#define __cminpack_type_fcn_nn__ typedef int (*cminpack_func_nn)
-#define __cminpack_type_fcnder_nn__ typedef int (*cminpack_funcder_nn)
-#define __cminpack_type_fcn_mn__ typedef int (*cminpack_func_mn)
-#define __cminpack_type_fcnder_mn__ typedef int (*cminpack_funcder_mn)
-#define __cminpack_type_fcnderstr_mn__ typedef int (*cminpack_funcderstr_mn)
-#define __cminpack_decl_fcn_nn__ cminpack_func_nn fcn_nn,
-#define __cminpack_decl_fcnder_nn__ cminpack_funcder_nn fcnder_nn,
-#define __cminpack_decl_fcn_mn__ cminpack_func_mn fcn_mn,
-#define __cminpack_decl_fcnder_mn__ cminpack_funcder_mn fcnder_mn,
-#define __cminpack_decl_fcnderstr_mn__ cminpack_funcderstr_mn fcnderstr_mn,
-#define __cminpack_param_fcn_nn__ fcn_nn,
-#define __cminpack_param_fcnder_nn__ fcnder_nn,
-#define __cminpack_param_fcn_mn__ fcn_mn,
-#define __cminpack_param_fcnder_mn__ fcnder_mn,
-#define __cminpack_param_fcnderstr_mn__ fcnderstr_mn,
-#endif
-
-#ifdef __cminpack_double__
-#define __cminpack_func__(func) func
-#endif
-
-#ifdef __cminpack_float__
-#define __cminpack_func__(func) s ## func
-#endif
-
-#ifdef __cminpack_half__
-#define __cminpack_func__(func) h ## func
-#endif
-
-/* Declarations for minpack */
-
-/* Function types: */
-/* The first argument can be used to store extra function parameters, thus */
-/* avoiding the use of global variables. */
-/* the iflag parameter is input-only (with respect to the FORTRAN */
-/* version), the output iflag value is the return value of the function. */
-/* If iflag=0, the function shoulkd just print the current values (see */
-/* the nprint parameters below). */
-
-/* for hybrd1 and hybrd: */
-/* calculate the functions at x and */
-/* return this vector in fvec. */
-/* return a negative value to terminate hybrd1/hybrd */
-__cminpack_type_fcn_nn__(void *p, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec, int iflag );
-
-/* for hybrj1 and hybrj */
-/* if iflag = 1 calculate the functions at x and */
-/* return this vector in fvec. do not alter fjac. */
-/* if iflag = 2 calculate the jacobian at x and */
-/* return this matrix in fjac. do not alter fvec. */
-/* return a negative value to terminate hybrj1/hybrj */
-__cminpack_type_fcnder_nn__(void *p, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, int iflag );
-
-/* for lmdif1 and lmdif */
-/* calculate the functions at x and */
-/* return this vector in fvec. */
-/* if iflag = 1 the result is used to compute the residuals. */
-/* if iflag = 2 the result is used to compute the Jacobian by finite differences. */
-/* Jacobian computation requires exactly n function calls with iflag = 2. */
-/* return a negative value to terminate lmdif1/lmdif */
-__cminpack_type_fcn_mn__(void *p, int m, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec,
- int iflag );
-
-/* for lmder1 and lmder */
-/* if iflag = 1 calculate the functions at x and */
-/* return this vector in fvec. do not alter fjac. */
-/* if iflag = 2 calculate the jacobian at x and */
-/* return this matrix in fjac. do not alter fvec. */
-/* return a negative value to terminate lmder1/lmder */
-__cminpack_type_fcnder_mn__(void *p, int m, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec,
- __cminpack_real__ *fjac, int ldfjac, int iflag );
-
-/* for lmstr1 and lmstr */
-/* if iflag = 1 calculate the functions at x and */
-/* return this vector in fvec. */
-/* if iflag = i calculate the (i-1)-st row of the */
-/* jacobian at x and return this vector in fjrow. */
-/* return a negative value to terminate lmstr1/lmstr */
-__cminpack_type_fcnderstr_mn__(void *p, int m, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec,
- __cminpack_real__ *fjrow, int iflag );
-
-
-
-
-
-
-/* MINPACK functions: */
-/* the info parameter was removed from most functions: the return */
-/* value of the function is used instead. */
-/* The argument 'p' can be used to store extra function parameters, thus */
-/* avoiding the use of global variables. You can also think of it as a */
-/* 'this' pointer a la C++. */
-
-/* find a zero of a system of N nonlinear functions in N variables by
- a modification of the Powell hybrid method (Jacobian calculated by
- a forward-difference approximation) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(hybrd1)( __cminpack_decl_fcn_nn__
- void *p, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ tol,
- __cminpack_real__ *wa, int lwa );
-
-/* find a zero of a system of N nonlinear functions in N variables by
- a modification of the Powell hybrid method (Jacobian calculated by
- a forward-difference approximation, more general). */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(hybrd)( __cminpack_decl_fcn_nn__
- void *p, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ xtol, int maxfev,
- int ml, int mu, __cminpack_real__ epsfcn, __cminpack_real__ *diag, int mode,
- __cminpack_real__ factor, int nprint, int *nfev,
- __cminpack_real__ *fjac, int ldfjac, __cminpack_real__ *r, int lr, __cminpack_real__ *qtf,
- __cminpack_real__ *wa1, __cminpack_real__ *wa2, __cminpack_real__ *wa3, __cminpack_real__ *wa4);
-
-/* find a zero of a system of N nonlinear functions in N variables by
- a modification of the Powell hybrid method (user-supplied Jacobian) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(hybrj1)( __cminpack_decl_fcnder_nn__ void *p, int n, __cminpack_real__ *x,
- __cminpack_real__ *fvec, __cminpack_real__ *fjac, int ldfjac, __cminpack_real__ tol,
- __cminpack_real__ *wa, int lwa );
-
-/* find a zero of a system of N nonlinear functions in N variables by
- a modification of the Powell hybrid method (user-supplied Jacobian,
- more general) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(hybrj)( __cminpack_decl_fcnder_nn__ void *p, int n, __cminpack_real__ *x,
- __cminpack_real__ *fvec, __cminpack_real__ *fjac, int ldfjac, __cminpack_real__ xtol,
- int maxfev, __cminpack_real__ *diag, int mode, __cminpack_real__ factor,
- int nprint, int *nfev, int *njev, __cminpack_real__ *r,
- int lr, __cminpack_real__ *qtf, __cminpack_real__ *wa1, __cminpack_real__ *wa2,
- __cminpack_real__ *wa3, __cminpack_real__ *wa4 );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (Jacobian calculated by a forward-difference approximation) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmdif1)( __cminpack_decl_fcn_mn__
- void *p, int m, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ tol,
- int *iwa, __cminpack_real__ *wa, int lwa );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (Jacobian calculated by a forward-difference approximation, more
- general) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmdif)( __cminpack_decl_fcn_mn__
- void *p, int m, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ ftol,
- __cminpack_real__ xtol, __cminpack_real__ gtol, int maxfev, __cminpack_real__ epsfcn,
- __cminpack_real__ *diag, int mode, __cminpack_real__ factor, int nprint,
- int *nfev, __cminpack_real__ *fjac, int ldfjac, int *ipvt,
- __cminpack_real__ *qtf, __cminpack_real__ *wa1, __cminpack_real__ *wa2, __cminpack_real__ *wa3,
- __cminpack_real__ *wa4 );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (user-supplied Jacobian) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmder1)( __cminpack_decl_fcnder_mn__
- void *p, int m, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, __cminpack_real__ tol, int *ipvt,
- __cminpack_real__ *wa, int lwa );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (user-supplied Jacobian, more general) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmder)( __cminpack_decl_fcnder_mn__
- void *p, int m, int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, __cminpack_real__ ftol, __cminpack_real__ xtol, __cminpack_real__ gtol,
- int maxfev, __cminpack_real__ *diag, int mode, __cminpack_real__ factor,
- int nprint, int *nfev, int *njev, int *ipvt,
- __cminpack_real__ *qtf, __cminpack_real__ *wa1, __cminpack_real__ *wa2, __cminpack_real__ *wa3,
- __cminpack_real__ *wa4 );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (user-supplied Jacobian, minimal storage) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmstr1)( __cminpack_decl_fcnderstr_mn__ void *p, int m, int n,
- __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac, int ldfjac,
- __cminpack_real__ tol, int *ipvt, __cminpack_real__ *wa, int lwa );
-
-/* minimize the sum of the squares of nonlinear functions in N
- variables by a modification of the Levenberg-Marquardt algorithm
- (user-supplied Jacobian, minimal storage, more general) */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(lmstr)( __cminpack_decl_fcnderstr_mn__ void *p, int m,
- int n, __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, __cminpack_real__ ftol, __cminpack_real__ xtol, __cminpack_real__ gtol,
- int maxfev, __cminpack_real__ *diag, int mode, __cminpack_real__ factor,
- int nprint, int *nfev, int *njev, int *ipvt,
- __cminpack_real__ *qtf, __cminpack_real__ *wa1, __cminpack_real__ *wa2, __cminpack_real__ *wa3,
- __cminpack_real__ *wa4 );
-
-__cminpack_attr__
-void CMINPACK_EXPORT __cminpack_func__(chkder)( int m, int n, const __cminpack_real__ *x, __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, __cminpack_real__ *xp, __cminpack_real__ *fvecp, int mode,
- __cminpack_real__ *err );
-
-__cminpack_attr__
-__cminpack_real__ CMINPACK_EXPORT __cminpack_func__(dpmpar)( int i );
-
-__cminpack_attr__
-__cminpack_real__ CMINPACK_EXPORT __cminpack_func__(enorm)( int n, const __cminpack_real__ *x );
-
-/* compute a forward-difference approximation to the m by n jacobian
- matrix associated with a specified problem of m functions in n
- variables. */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(fdjac2)(__cminpack_decl_fcn_mn__
- void *p, int m, int n, __cminpack_real__ *x, const __cminpack_real__ *fvec, __cminpack_real__ *fjac,
- int ldfjac, __cminpack_real__ epsfcn, __cminpack_real__ *wa);
-
-/* compute a forward-difference approximation to the n by n jacobian
- matrix associated with a specified problem of n functions in n
- variables. if the jacobian has a banded form, then function
- evaluations are saved by only approximating the nonzero terms. */
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(fdjac1)(__cminpack_decl_fcn_nn__
- void *p, int n, __cminpack_real__ *x, const __cminpack_real__ *fvec, __cminpack_real__ *fjac, int ldfjac,
- int ml, int mu, __cminpack_real__ epsfcn, __cminpack_real__ *wa1,
- __cminpack_real__ *wa2);
-
-/* compute inverse(JtJ) after a run of lmdif or lmder. The covariance matrix is obtained
- by scaling the result by enorm(y)**2/(m-n). If JtJ is singular and k = rank(J), the
- pseudo-inverse is computed, and the result has to be scaled by enorm(y)**2/(m-k). */
-__cminpack_attr__
-void CMINPACK_EXPORT __cminpack_func__(covar)(int n, __cminpack_real__ *r, int ldr,
- const int *ipvt, __cminpack_real__ tol, __cminpack_real__ *wa);
-
-/* covar1 estimates the variance-covariance matrix:
- C = sigma**2 (JtJ)**+
- where (JtJ)**+ is the inverse of JtJ or the pseudo-inverse of JtJ (in case J does not have full rank),
- and sigma**2 = fsumsq / (m - k)
- where fsumsq is the residual sum of squares and k is the rank of J.
- The function returns 0 if J has full rank, else the rank of J.
-*/
-__cminpack_attr__
-int CMINPACK_EXPORT __cminpack_func__(covar1)(int m, int n, __cminpack_real__ fsumsq, __cminpack_real__ *r, int ldr,
- const int *ipvt, __cminpack_real__ tol, __cminpack_real__ *wa);
-
-/* internal MINPACK subroutines */
-__cminpack_attr__
-void __cminpack_func__(dogleg)(int n, const __cminpack_real__ *r, int lr,
- const __cminpack_real__ *diag, const __cminpack_real__ *qtb, __cminpack_real__ delta, __cminpack_real__ *x,
- __cminpack_real__ *wa1, __cminpack_real__ *wa2);
-__cminpack_attr__
-void __cminpack_func__(qrfac)(int m, int n, __cminpack_real__ *a, int
- lda, int pivot, int *ipvt, int lipvt, __cminpack_real__ *rdiag,
- __cminpack_real__ *acnorm, __cminpack_real__ *wa);
-__cminpack_attr__
-void __cminpack_func__(qrsolv)(int n, __cminpack_real__ *r, int ldr,
- const int *ipvt, const __cminpack_real__ *diag, const __cminpack_real__ *qtb, __cminpack_real__ *x,
- __cminpack_real__ *sdiag, __cminpack_real__ *wa);
-__cminpack_attr__
-void __cminpack_func__(qform)(int m, int n, __cminpack_real__ *q, int
- ldq, __cminpack_real__ *wa);
-__cminpack_attr__
-void __cminpack_func__(r1updt)(int m, int n, __cminpack_real__ *s, int
- ls, const __cminpack_real__ *u, __cminpack_real__ *v, __cminpack_real__ *w, int *sing);
-__cminpack_attr__
-void __cminpack_func__(r1mpyq)(int m, int n, __cminpack_real__ *a, int
- lda, const __cminpack_real__ *v, const __cminpack_real__ *w);
-__cminpack_attr__
-void __cminpack_func__(lmpar)(int n, __cminpack_real__ *r, int ldr,
- const int *ipvt, const __cminpack_real__ *diag, const __cminpack_real__ *qtb, __cminpack_real__ delta,
- __cminpack_real__ *par, __cminpack_real__ *x, __cminpack_real__ *sdiag, __cminpack_real__ *wa1,
- __cminpack_real__ *wa2);
-__cminpack_attr__
-void __cminpack_func__(rwupdt)(int n, __cminpack_real__ *r, int ldr,
- const __cminpack_real__ *w, __cminpack_real__ *b, __cminpack_real__ *alpha, __cminpack_real__ *cos,
- __cminpack_real__ *sin);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-
-#endif /* __CMINPACK_H__ */