00001 #include <admodel.h>
00002 #include <df1b2fun.h>
00003 #include <adrndeff.h>
00004
00005
00006
00015 dvariable Hill(const double& x, const prevariable& a, const prevariable& b, const prevariable& c)
00016 {
00017 RETURN_ARRAYS_INCREMENT();
00018 dvariable y;
00019 y=a*pow(x,c)/(1+b*pow(x,c));
00020
00021 RETURN_ARRAYS_DECREMENT();
00022 return (y);
00023 }
00032 dvar_vector Hill(const dvector& x, const prevariable& a, const prevariable& b, const prevariable& c)
00033 {
00034 RETURN_ARRAYS_INCREMENT();
00035 dvar_vector y;
00036 y=a*elem_div(pow(x,c), 1+b*pow(x,c));
00037
00038 RETURN_ARRAYS_DECREMENT();
00039 return (y);
00040 }
00049 dvar_vector Hill(const dvector& x, const dvar_vector& a, const prevariable& b, const prevariable& c)
00050 {
00051 RETURN_ARRAYS_INCREMENT();
00052 dvar_vector y;
00053 y=elem_prod(a, elem_div(pow(x,c), 1+b*pow(x,c)));
00054
00055 RETURN_ARRAYS_DECREMENT();
00056 return (y);
00057 }
00058
00067 dvar_vector Hill(const dvector& x, const prevariable& a, const dvar_vector& b, const prevariable& c)
00068 {
00069 RETURN_ARRAYS_INCREMENT();
00070 dvar_vector y;
00071 y=a*elem_div(pow(x,c), 1+elem_prod(b, pow(x,c)));
00072
00073 RETURN_ARRAYS_DECREMENT();
00074 return (y);
00075 }
00084 dvar_vector Hill(const dvector& x, const dvar_vector& a, const dvar_vector& b, const prevariable& c)
00085 {
00086 RETURN_ARRAYS_INCREMENT();
00087 dvar_vector y;
00088 y=elem_prod(a, elem_div(pow(x,c), 1+elem_prod(b, pow(x,c))));
00089
00090 RETURN_ARRAYS_DECREMENT();
00091 return (y);
00092 }
00093
00094
00103 dvar_vector Hill(const dvector& x, const prevariable& a, const prevariable& b, const dvar_vector& c)
00104 {
00105 RETURN_ARRAYS_INCREMENT();
00106 dvar_vector y;
00107 y=a*elem_div(pow(x,c), 1+b*pow(x,c));
00108
00109 RETURN_ARRAYS_DECREMENT();
00110 return (y);
00111 }
00120 dvar_vector Hill(const dvector& x, const dvar_vector& a, const prevariable& b, const dvar_vector& c)
00121 {
00122 RETURN_ARRAYS_INCREMENT();
00123 dvar_vector y;
00124 y=elem_prod(a, elem_div(pow(x,c), 1+b*pow(x,c)));
00125
00126 RETURN_ARRAYS_DECREMENT();
00127 return (y);
00128 }
00129
00138 dvar_vector Hill(const dvector& x, const prevariable& a, const dvar_vector& b, const dvar_vector& c)
00139 {
00140 RETURN_ARRAYS_INCREMENT();
00141 dvar_vector y;
00142 y=a*elem_div(pow(x,c), 1+elem_prod(b, pow(x,c)));
00143
00144 RETURN_ARRAYS_DECREMENT();
00145 return (y);
00146 }
00155 dvar_vector Hill(const dvector& x, const dvar_vector& a, const dvar_vector& b, const dvar_vector& c)
00156 {
00157 RETURN_ARRAYS_INCREMENT();
00158 dvar_vector y;
00159 y=elem_prod(a, elem_div(pow(x,c), 1+elem_prod(b, pow(x,c))));
00160
00161 RETURN_ARRAYS_DECREMENT();
00162 return (y);
00163 }
00164
00165
00166
00175 df1b2variable Hill(const double& x, const df1b2variable& a, const df1b2variable& b, const df1b2variable& c)
00176 {
00177 df1b2variable y;
00178 y=a*pow(x,c)/(1+b*pow(x,c));
00179
00180 return (y);
00181 }
00190 df1b2vector Hill(const dvector& x, const df1b2variable& a, const df1b2variable& b, const df1b2variable& c)
00191 {
00192 df1b2vector y;
00193 y=a*elem_div(pow(x,c), 1+b*pow(x,c));
00194
00195 return(y);
00196 }
00205 df1b2vector Hill(const dvector& x, const df1b2vector& a, const df1b2variable& b, const df1b2variable& c)
00206 {
00207 df1b2vector y;
00208 y=elem_prod(a, elem_div(pow(x,c), 1+b*pow(x,c)));
00209
00210 return(y);
00211 }
00212
00213
00214
00223 df1b2vector Hill(const dvector& x, const df1b2variable& a, const df1b2vector& b, const df1b2variable& c)
00224 {
00225 df1b2vector y;
00226 y=a*elem_div(pow(x,c), 1+elem_prod(b, pow(x,c)));
00227
00228 return(y);
00229 }
00238 df1b2vector Hill(const dvector& x, const df1b2vector& a, const df1b2vector& b, const df1b2variable& c)
00239 {
00240 df1b2vector y;
00241 y=elem_prod(a, elem_div(pow(x,c), 1+elem_prod(b, pow(x,c))));
00242
00243 return(y);
00244 }
00245
00246
00247
00248
00249
00258 df1b2vector Hill(const dvector& x, const df1b2variable& a, const df1b2variable& b, const df1b2vector& c)
00259 {
00260 df1b2vector y;
00261 y=a*elem_div(pow(x,c), 1+b*pow(x,c));
00262
00263 return(y);
00264 }
00273 df1b2vector Hill(const dvector& x, const df1b2vector& a, const df1b2variable& b, const df1b2vector& c)
00274 {
00275 df1b2vector y;
00276 y=elem_prod(a, elem_div(pow(x,c), 1+b*pow(x,c)));
00277
00278 return(y);
00279 }
00280
00281
00282
00291 df1b2vector Hill(const dvector& x, const df1b2variable& a, const df1b2vector& b, const df1b2vector& c)
00292 {
00293 df1b2vector y;
00294 y=a*elem_div(pow(x,c), 1+elem_prod(b, pow(x,c)));
00295
00296 return(y);
00297 }
00306 df1b2vector Hill(const dvector& x, const df1b2vector& a, const df1b2vector& b, const df1b2vector& c)
00307 {
00308 df1b2vector y;
00309 y=elem_prod(a, elem_div(pow(x,c), 1+elem_prod(b, pow(x,c))));
00310
00311 return(y);
00312 }