37 #ifndef DINAMICA_DACEAUX_H_ 38 #define DINAMICA_DACEAUX_H_ 44 #include "dace/config.h" 47 #if __GNUC__ || __clang__ 48 #define UNLIKELY(expr) __builtin_expect(!!(expr), 0) 49 #define LIKELY(expr) __builtin_expect(!!(expr), 1) 51 #define UNLIKELY(expr) expr 52 #define LIKELY(expr) expr 72 #define ERROR_FUN_SIZE 64 73 #define ERROR_MSG_SIZE 256 96 #define DACE_BINARY_MAGIC (0x1E304144) 114 unsigned int umin(
const unsigned int a,
const unsigned int b);
115 unsigned int umax(
const unsigned int a,
const unsigned int b);
116 double pown(
double a,
unsigned int b);
117 int npown(
int a,
unsigned int b);
119 #if DACE_MEMORY_MODEL == DACE_MEMORY_HYBRID || DACE_MEMORY_MODEL == DACE_MEMORY_DYNAMIC 121 void* dacecalloc(
size_t count,
size_t size);
122 void* dacemalloc(
size_t size);
123 void* dacemalloc0(
size_t size);
124 void* dacerealloc(
void* ptr,
size_t size);
125 void dacefree(
void* ptr);
135 unsigned int daceEncodeExponents(
const unsigned int p[],
const unsigned int no,
const unsigned int nv);
136 unsigned int daceEncode(
const unsigned int p[]);
137 unsigned int daceDecodeExponents(
unsigned int ic,
const unsigned int no,
const unsigned int nv,
unsigned int p[]);
138 void daceDecode(
const unsigned int ic,
unsigned int p[]);
140 unsigned int daceNextMonomial(
unsigned int p[],
const unsigned int no,
const unsigned int nv);
145 void daceSetError(
const char *c,
const unsigned int ix,
const unsigned int iyy);
148 int BesselWrapper(
const double x,
const int n0,
const int n1,
const int type,
double *bz);
149 int ModifiedBesselWrapper(
const double x,
const int n0,
const int n1,
const int type,
double *bz);
unsigned int iyyerr
Definition: daceaux.h:76
unsigned int * ia1
Definition: daceaux.h:57
void daceSetError(const char *c, const unsigned int ix, const unsigned int iyy)
Definition: daceerror.c:139
void daceInitializeThread0()
Definition: daceinit.c:225
void daceMultiplicativeInverse0(const DACEDA *ina, DACEDA *inc, const double a0)
Definition: dacemath.c:900
double pown(double a, unsigned int b)
Definition: daceaux.c:58
void daceEvaluateBesselFunction(const DACEDA *ina, const double bz[], const double type, const double ktype, DACEDA *inc)
Definition: dacemath.c:1776
unsigned int * ieo
Definition: daceaux.h:57
void daceEvaluateScaledModifiedBesselFunction(const DACEDA *ina, const double bz[], const double ktype, DACEDA *inc)
Definition: dacemath.c:1828
unsigned int * ie1
Definition: daceaux.h:57
struct dmonomial monomial
void daceSetLength(DACEDA *inc, const size_t len)
Definition: dacememory.c:317
unsigned int daceEncodeExponents(const unsigned int p[], const unsigned int no, const unsigned int nv)
Definition: daceaux.c:165
unsigned int nv2
Definition: daceaux.h:102
void daceVariableInformation(const DACEDA *inc, monomial **ipoc, unsigned int *ilmc, unsigned int *illc)
Definition: dacememory.c:296
unsigned int umin(const unsigned int a, const unsigned int b)
Definition: daceaux.c:46
struct dextendedmonomial extended_monomial
unsigned int daceNextOrderedMonomial(unsigned int p[], const unsigned int no, const unsigned int nv)
Definition: daceaux.c:257
Definition: daceaux.h:100
unsigned int * ia2
Definition: daceaux.h:57
double cc
Definition: daceaux.h:91
int npown(int a, unsigned int b)
Definition: daceaux.c:76
void daceDecode(const unsigned int jc, unsigned int jj[])
Definition: daceaux.c:320
DACE_THREAD_LOCAL dacedbg DACEDbg
Definition: dacememory.c:49
unsigned int nvmax
Definition: daceaux.h:58
unsigned int ii
Definition: daceaux.h:84
unsigned int i2
Definition: daceaux.h:90
unsigned int nmmax
Definition: daceaux.h:58
unsigned int * ie2
Definition: daceaux.h:57
void dacePack(double *restrict cc, DACEDA *restrict inc)
Definition: daceaux.c:337
bool daceIsSameObject(const DACEDA *ina, const DACEDA *inb)
Definition: dacememory.c:333
unsigned int daceEncode(const unsigned int jj[])
Definition: daceaux.c:290
void daceLogGammaFunction0(const DACEDA *ina, const double a0, DACEDA *inc)
Definition: dacemath.c:1884
void daceFreeMemory()
Definition: dacememory.c:341
unsigned int nomax
Definition: daceaux.h:58
void daceEvaluateSeries(const DACEDA *ina, const double xf[], DACEDA *inc)
Definition: dacemath.c:2003
unsigned int magic
Definition: daceaux.h:101
unsigned int umax(const unsigned int a, const unsigned int b)
Definition: daceaux.c:51
double epsmac
Definition: daceaux.h:59
#define ERROR_MSG_SIZE
Definition: daceaux.h:73
unsigned int nv2
Definition: daceaux.h:58
unsigned int nv1
Definition: daceaux.h:58
unsigned int daceNextMonomial(unsigned int p[], const unsigned int no, const unsigned int nv)
Definition: daceaux.c:221
unsigned int daceDecodeExponents(unsigned int ic, const unsigned int no, const unsigned int nv, unsigned int p[])
Definition: daceaux.c:184
dacecom DACECom
Definition: dacememory.c:47
DACE_THREAD_LOCAL dacecom_t DACECom_t
Definition: dacememory.c:48
unsigned int daceCountMonomials(unsigned int no, unsigned int nv)
Definition: daceaux.c:274
#define ERROR_FUN_SIZE
Definition: daceaux.h:72
unsigned int size(const DA &da)
Definition: DA.cpp:2549
double eps
Definition: daceaux.h:65
unsigned int nocut
Definition: daceaux.h:64
int DACEDA
Definition: dacebase.h:70
double cc
Definition: daceaux.h:83