OpenFAST
Wind turbine multiphysics simulator
cminpackP.h
1 /* Internal header file for cminpack, by Frederic Devernay. */
2 #ifndef __CMINPACKP_H__
3 #define __CMINPACKP_H__
4 
5 #ifndef __CMINPACK_H__
6 #error "cminpackP.h in an internal cminpack header, and must be included after all other headers (including cminpack.h)"
7 #endif
8 
9 #if (defined (USE_CBLAS) || defined (USE_LAPACK)) && !defined (__cminpack_double__)
10 #error "cminpack can use cblas and lapack only in double precision mode"
11 #endif
12 
13 #ifdef USE_CBLAS
14 #ifdef __APPLE__
15 #include <Accelerate/Accelerate.h>
16 #else
17 #include <cblas.h>
18 #endif
19 #define __cminpack_enorm__(n,x) cblas_dnrm2(n,x,1)
20 #else
21 #define __cminpack_enorm__(n,x) __cminpack_func__(enorm)(n,x)
22 #endif
23 
24 #ifdef USE_LAPACK
25 #ifdef __APPLE__
26 #include <Accelerate/Accelerate.h>
27 #else
28 #if defined(__LP64__) /* In LP64 match sizes with the 32 bit ABI */
29 typedef int __CLPK_integer;
30 typedef int __CLPK_logical;
31 typedef float __CLPK_real;
32 typedef double __CLPK_doublereal;
33 typedef __CLPK_logical (*__CLPK_L_fp)();
34 typedef int __CLPK_ftnlen;
35 #else
36 typedef long int __CLPK_integer;
37 typedef long int __CLPK_logical;
38 typedef float __CLPK_real;
39 typedef double __CLPK_doublereal;
40 typedef __CLPK_logical (*__CLPK_L_fp)();
41 typedef long int __CLPK_ftnlen;
42 #endif
43 //extern void dlartg_(double *f, double *g, double *cs, double *sn, double *r__);
44 int dlartg_(__CLPK_doublereal *f, __CLPK_doublereal *g, __CLPK_doublereal *cs,
45  __CLPK_doublereal *sn, __CLPK_doublereal *r__)
46 //extern void dgeqp3_(int *m, int *n, double *a, int *lda, int *jpvt, double *tau, double *work, int *lwork, int *info);
47 int dgeqp3_(__CLPK_integer *m, __CLPK_integer *n, __CLPK_doublereal *a, __CLPK_integer *
48  lda, __CLPK_integer *jpvt, __CLPK_doublereal *tau, __CLPK_doublereal *work, __CLPK_integer *lwork,
49  __CLPK_integer *info)
50 //extern void dgeqrf_(int *m, int *n, double *a, int *lda, double *tau, double *work, int *lwork, int *info);
51 int dgeqrf_(__CLPK_integer *m, __CLPK_integer *n, __CLPK_doublereal *a, __CLPK_integer *
52  lda, __CLPK_doublereal *tau, __CLPK_doublereal *work, __CLPK_integer *lwork, __CLPK_integer *info)
53 #endif
54 #endif
55 
56 #define real_mp __cminpack_real__
57 #define minpack_min(a,b) ((a) <= (b) ? (a) : (b))
58 #define minpack_max(a,b) ((a) >= (b) ? (a) : (b))
59 #define TRUE_ (1)
60 #define FALSE_ (0)
61 
62 #endif /* !__CMINPACKP_H__ */