55 x[0]*x[1]*x[2]*x[3]*x[4];
61 x[0]*x[1]*x[2]*x[3]*x[4]*x[5];
67 x[0]*x[1]*x[2]*x[3]*x[4]*x[5]*x[6]*x[7]*
74 x[0]*x[1]*x[2]*x[3]*x[4]*x[5]*x[6]*x[7]*
75 x[8]*x[9]*x[10]*x[11]*x[12]*x[13]*x[14]*x[15];
81 x[0]*x[1]*x[2]*x[3]*x[4]*x[5]*x[6]*x[7]*
82 x[8]*x[9]*x[10]*x[11]*x[12]*x[13]*x[14]*x[15]*
83 x[16]*x[17]*x[18]*x[19]* x[20];
101 template <
typename T>
106 template <
typename T>
111 template <
typename T>
117 template <
typename T>
124 template <
typename T>
132 template <
typename T>
138 template <
typename T>
144 template <
typename T>
150 template <
typename T>
153 x[0]+x[1]+x[2]+x[3]+x[4];
156 template <
typename T>
159 x[0]+x[1]+x[2]+x[3]+x[4]+x[5];
162 template <
typename T>
165 x[0]+x[1]+x[2]+x[3]+x[4]+x[5]+x[6]+x[7]+
169 template <
typename T>
172 x[0]+x[1]+x[2]+x[3]+x[4]+x[5]+x[6]+x[7]+
173 x[8]+x[9]+x[10]+x[11]+x[12]+x[13]+x[14]+x[15];
176 template <
typename T>
179 x[0]+x[1]+x[2]+x[3]+x[4]+x[5]+x[6]+x[7]+
180 x[8]+x[9]+x[10]+x[11]+x[12]+x[13]+x[14]+x[15]+
181 x[16]+x[17]+x[18]+x[19]+x[20];
217 #define INSTANTIATE_FUNCS(TYPE) \ 218 template struct ExprFuncs::mult< TYPE,1>; \ 219 template struct ExprFuncs::mult< TYPE,2>; \ 220 template struct ExprFuncs::mult< TYPE,3>; \ 221 template struct ExprFuncs::mult< TYPE,4>; \ 222 template struct ExprFuncs::mult< TYPE,5>; \ 223 template struct ExprFuncs::mult< TYPE,10>; \ 224 template struct ExprFuncs::mult< TYPE,15>; \ 225 template struct ExprFuncs::mult< TYPE,20>; \ 227 template struct ExprFuncs::nest< TYPE,1>; \ 228 template struct ExprFuncs::nest< TYPE,2>; \ 229 template struct ExprFuncs::nest< TYPE,3>; \ 230 template struct ExprFuncs::nest< TYPE,4>; \ 231 template struct ExprFuncs::nest< TYPE,5>; \ 232 template struct ExprFuncs::nest< TYPE,10>; \ 233 template struct ExprFuncs::nest< TYPE,15>; \ 234 template struct ExprFuncs::nest< TYPE,20>; \ 236 template struct ExprFuncs::add< TYPE,1>; \ 237 template struct ExprFuncs::add< TYPE,2>; \ 238 template struct ExprFuncs::add< TYPE,3>; \ 239 template struct ExprFuncs::add< TYPE,4>; \ 240 template struct ExprFuncs::add< TYPE,5>; \ 241 template struct ExprFuncs::add< TYPE,10>; \ 242 template struct ExprFuncs::add< TYPE,15>; \ 243 template struct ExprFuncs::add< TYPE,20>; 255 #undef INSTANTIATE_FUNCS
Forward-mode AD class using dynamic memory allocation but no expression templates.
static const char * mult_names[nfunc]
static const char * add_names[nfunc]
#define INSTANTIATE_FUNCS(TYPE)
static const char * nest_names[nfunc]