#define _getRxSolve_ _rxcab04b4462ee4d241d801cb77619ccdf142
#define simeps _rxcab04b4462ee4d241d801cb77619ccdf143
#define simeta _rxcab04b4462ee4d241d801cb77619ccdf144
#define _solveData _rxcab04b4462ee4d241d801cb77619ccdf145
#define _assign_ptr _rxcab04b4462ee4d241d801cb77619ccdf146
#define _rxRmModelLib _rxcab04b4462ee4d241d801cb77619ccdf147
#define _rxGetModelLib _rxcab04b4462ee4d241d801cb77619ccdf148
#define _old_c _rxcab04b4462ee4d241d801cb77619ccdf149
#define _ptrid _rxcab04b4462ee4d241d801cb77619ccdf150
#define _rxIsCurrentC _rxcab04b4462ee4d241d801cb77619ccdf151
#define _sumPS _rxcab04b4462ee4d241d801cb77619ccdf152
#define _prodPS _rxcab04b4462ee4d241d801cb77619ccdf153
#define _prodType _rxcab04b4462ee4d241d801cb77619ccdf154
#define _sumType _rxcab04b4462ee4d241d801cb77619ccdf155
#define _update_par_ptr _rxcab04b4462ee4d241d801cb77619ccdf156
#define _getParCov _rxcab04b4462ee4d241d801cb77619ccdf157
#define linCmtA _rxcab04b4462ee4d241d801cb77619ccdf158
#define linCmtC _rxcab04b4462ee4d241d801cb77619ccdf159
#define linCmtB _rxcab04b4462ee4d241d801cb77619ccdf160
#define _rxode2_rxAssignPtr _rxcab04b4462ee4d241d801cb77619ccdf161
#define _rxQr _rxcab04b4462ee4d241d801cb77619ccdf162
#define phi _rxcab04b4462ee4d241d801cb77619ccdf163
#define logit _rxcab04b4462ee4d241d801cb77619ccdf164
#define expit _rxcab04b4462ee4d241d801cb77619ccdf165
#define gammap _rxcab04b4462ee4d241d801cb77619ccdf166
#define gammaq _rxcab04b4462ee4d241d801cb77619ccdf167
#define lowergamma _rxcab04b4462ee4d241d801cb77619ccdf168
#define uppergamma _rxcab04b4462ee4d241d801cb77619ccdf169
#define gammapInv _rxcab04b4462ee4d241d801cb77619ccdf170
#define gammapDer _rxcab04b4462ee4d241d801cb77619ccdf171
#define gammapInva _rxcab04b4462ee4d241d801cb77619ccdf172
#define gammaqInv _rxcab04b4462ee4d241d801cb77619ccdf173
#define gammaqInva _rxcab04b4462ee4d241d801cb77619ccdf174
#define rxnorm _rxcab04b4462ee4d241d801cb77619ccdf175
#define rxnormV _rxcab04b4462ee4d241d801cb77619ccdf176
#define rxbinom _rxcab04b4462ee4d241d801cb77619ccdf177
#define rxcauchy _rxcab04b4462ee4d241d801cb77619ccdf178
#define rxchisq _rxcab04b4462ee4d241d801cb77619ccdf179
#define rxexp _rxcab04b4462ee4d241d801cb77619ccdf180
#define rxf _rxcab04b4462ee4d241d801cb77619ccdf181
#define rxgeom _rxcab04b4462ee4d241d801cb77619ccdf182
#define rxgamma _rxcab04b4462ee4d241d801cb77619ccdf183
#define rxbeta _rxcab04b4462ee4d241d801cb77619ccdf184
#define rxpois _rxcab04b4462ee4d241d801cb77619ccdf185
#define rxt_ _rxcab04b4462ee4d241d801cb77619ccdf186
#define rxunif _rxcab04b4462ee4d241d801cb77619ccdf187
#define rxweibull _rxcab04b4462ee4d241d801cb77619ccdf188
#define rinorm _rxcab04b4462ee4d241d801cb77619ccdf189
#define rinormV _rxcab04b4462ee4d241d801cb77619ccdf190
#define ribinom _rxcab04b4462ee4d241d801cb77619ccdf191
#define ricauchy _rxcab04b4462ee4d241d801cb77619ccdf192
#define richisq _rxcab04b4462ee4d241d801cb77619ccdf193
#define riexp _rxcab04b4462ee4d241d801cb77619ccdf194
#define rif _rxcab04b4462ee4d241d801cb77619ccdf195
#define rigeom _rxcab04b4462ee4d241d801cb77619ccdf196
#define rigamma _rxcab04b4462ee4d241d801cb77619ccdf197
#define ribeta _rxcab04b4462ee4d241d801cb77619ccdf198
#define ripois _rxcab04b4462ee4d241d801cb77619ccdf199
#define rit_ _rxcab04b4462ee4d241d801cb77619ccdf200
#define riunif _rxcab04b4462ee4d241d801cb77619ccdf201
#define riweibull _rxcab04b4462ee4d241d801cb77619ccdf202
#define _compareFactorVal _rxcab04b4462ee4d241d801cb77619ccdf203
#define _sum _rxcab04b4462ee4d241d801cb77619ccdf204
#define _sign _rxcab04b4462ee4d241d801cb77619ccdf205
#define _prod _rxcab04b4462ee4d241d801cb77619ccdf206
#define _max _rxcab04b4462ee4d241d801cb77619ccdf207
#define _min _rxcab04b4462ee4d241d801cb77619ccdf208
#define _transit4P _rxcab04b4462ee4d241d801cb77619ccdf209
#define _transit3P _rxcab04b4462ee4d241d801cb77619ccdf210
#define _assignFuns0 _rxcab04b4462ee4d241d801cb77619ccdf211
#define _assignFuns _rxcab04b4462ee4d241d801cb77619ccdf212
#include <rxode2_model_shared.h>
#define __MAX_PROD__ 0
#define _CMT CMT
#define _SYNC_simeps_ for (int _svari=_solveData->neps; _svari--;){ if (_solveData->svar[_svari] == 0) {_THETA_1_ = _PP[0];}; if (_solveData->svar[_svari] == 1) {_THETA_2_ = _PP[1];}; if (_solveData->svar[_svari] == 2) {_ETA_1_ = _PP[2];}; }
#define _SYNC_simeta_ for (int _ovari=_solveData->neta; _ovari--;){ if (_solveData->ovar[_ovari] == 0) {_THETA_1_ = _PP[0];}; if (_solveData->ovar[_ovari] == 1) {_THETA_2_ = _PP[1];}; if (_solveData->ovar[_ovari] == 2) {_ETA_1_ = _PP[2];}; }
#include "extraC.h"
_getRxSolve_t _getRxSolve_;
_simfun simeps;
_simfun simeta;
rx_solve *_solveData=NULL;
rxode2_assign_ptr _assign_ptr=NULL;
_rxRmModelLibType _rxRmModelLib=NULL;
_rxGetModelLibType _rxGetModelLib=NULL;
rxode2_ode_solver_old_c _old_c=NULL;
rxode2_fn0i _ptrid=NULL;
_rxIsCurrentC_type _rxIsCurrentC=NULL;
_rxSumType _sumPS=NULL;
_rxProdType _prodPS=NULL;
rxode2_fn0i _prodType=NULL;
rxode2_fn0i _sumType=NULL;
_update_par_ptr_p _update_par_ptr=NULL;
_getParCov_p _getParCov=NULL;
linCmtA_p linCmtA;
linCmtA_p linCmtC;
linCmtB_p linCmtB;
_rx_asgn _rxode2_rxAssignPtr=NULL;
_rx_asgn _rxQr=NULL;
rxode2_fn phi;
rxode2_fn3 logit;
rxode2_fn3 expit;
rxode2_fn2 gammap;
rxode2_fn2 gammaq;
rxode2_fn2 lowergamma;
rxode2_fn2 uppergamma;
rxode2_fn2 gammapInv;
rxode2_fn2 gammapDer;
rxode2_fn2 gammapInva;
rxode2_fn2 gammaqInv;
rxode2_fn2 gammaqInva;
rxode2i_fn2 rxnorm;
rxode2i_fn2 rxnormV;
rxode2i_rxbinom rxbinom;
rxode2i_fn2 rxcauchy;
rxode2i_fn rxchisq;
rxode2i_fn rxexp;
rxode2i_fn2 rxf;
rxode2i_ifn rxgeom;
rxode2i_fn2 rxgamma;
rxode2i_fn2 rxbeta;
rxode2i_ifn rxpois;
rxode2i_fn rxt_;
rxode2i_fn2 rxunif;
rxode2i_fn2 rxweibull;
rxode2i2_fn2 rinorm;
rxode2i2_fn2 rinormV;
rxode2i2_ribinom ribinom;
rxode2i2_fn2 ricauchy;
rxode2i2_fn richisq;
rxode2i2_fn riexp;
rxode2i2_fn2 rif;
rxode2i2_ifn rigeom;
rxode2i2_fn2 rigamma;
rxode2i2_fn2 ribeta;
rxode2i2_ifn ripois;
rxode2i2_fn rit_;
rxode2i2_fn2 riunif;
rxode2i2_fn2 riweibull;
rxode2_compareFactorVal_fn _compareFactorVal;
double _prod(double *input, double *p, int type, int n, ...){
va_list valist;
va_start(valist, n);
for (unsigned int i = 0; i < n; i++){
input[i] = va_arg(valist, double);
}
va_end(valist);
return _prodPS(input, p, n, type);
}
double _sum(double *input, double *pld, int m, int type, int n, ...){
va_list valist;
va_start(valist, n);
for (unsigned int i = 0; i < n; i++){
input[i] = va_arg(valist, double);
}
va_end(valist);
double ret = _sumPS(input, n, pld, m, type);
if (type == 2 && m < 0){
for (int i = -m; i--;){
pld[i] = 0.0;
}
}
return ret;
}
double _sign(unsigned int n, ...) {
va_list valist;
va_start(valist, n);
double s = 1;
for (unsigned int i = 0; i < n; i++) {
s = sign(va_arg(valist, double))*s;
if (s == 0){
break;
}
}
va_end(valist);
return s;
}
double _max(unsigned int n, ...) {
va_list valist;
va_start(valist, n);
double mx = NA_REAL;
double tmp = 0;
if (n >= 1){
mx = va_arg(valist, double);
for (unsigned int i = 1; i < n; i++) {
tmp = va_arg(valist, double);
if (tmp>mx) mx=tmp;
}
va_end(valist);
}
return mx;
}
double _min(unsigned int n, ...){
va_list valist;
va_start(valist, n);
double mn = NA_REAL;
double tmp = 0;
if (n >= 1){
mn = va_arg(valist, double);
for (unsigned int i = 1; i < n; i++){
tmp = va_arg(valist, double);
if (tmp<mn) mn=tmp;
}
va_end(valist);
}
return mn;
}
double _transit4P(double t, unsigned int id, double n, double mtt, double bio){
double ktr = (n+1)/mtt;
double lktr = log(n+1)-log(mtt);
double tc = (t-(_solveData->subjects[id].tlast));
return exp(log(bio*(_solveData->subjects[id].podo))+lktr+n*(lktr+log(tc))-ktr*(tc)-lgamma1p(n));
}
double _transit3P(double t, unsigned int id, double n, double mtt){
double ktr = (n+1)/mtt;
double lktr = log(n+1)-log(mtt);
double tc = (t-(_solveData->subjects[id].tlast));
return exp(log(_solveData->subjects[id].podo)+lktr+n*(lktr+log(tc))-ktr*(tc)-lgamma1p(n));
}
void _assignFuns0() {
_getRxSolve_ = (_getRxSolve_t) R_GetCCallable("rxode2","getRxSolve_");
_assign_ptr=(rxode2_assign_ptr) R_GetCCallable("rxode2","rxode2_assign_fn_pointers");
_rxRmModelLib=(_rxRmModelLibType) R_GetCCallable("rxode2","rxRmModelLib");
_rxGetModelLib=(_rxGetModelLibType) R_GetCCallable("rxode2","rxGetModelLib");
_rxode2_rxAssignPtr=(_rx_asgn)R_GetCCallable("rxode2","_rxode2_rxAssignPtr");
_rxQr=(_rx_asgn)R_GetCCallable("rxode2","_rxode2_rxQr");
_rxIsCurrentC = (_rxIsCurrentC_type)R_GetCCallable("rxode2","rxIsCurrentC");
_sumPS = (_rxSumType) R_GetCCallable("PreciseSums","PreciseSums_sum_r");
_prodPS = (_rxProdType) R_GetCCallable("PreciseSums","PreciseSums_prod_r");
_prodType=(rxode2_fn0i)R_GetCCallable("PreciseSums", "PreciseSums_prod_get");
_sumType=(rxode2_fn0i)R_GetCCallable("PreciseSums", "PreciseSums_sum_get");
_ptrid=(rxode2_fn0i)R_GetCCallable("rxode2", "rxode2_current_fn_pointer_id");
linCmtA=(linCmtA_p)R_GetCCallable("rxode2", "linCmtA");
linCmtB=(linCmtB_p)R_GetCCallable("rxode2", "linCmtB");
linCmtC=(linCmtA_p)R_GetCCallable("rxode2", "linCmtC");
rxnorm = (rxode2i_fn2)R_GetCCallable("rxode2", "rxnorm");
rxnormV = (rxode2i_fn2)R_GetCCallable("rxode2", "rxnormV");
rxbinom = (rxode2i_rxbinom)R_GetCCallable("rxode2","rxbinom") ;
rxcauchy = (rxode2i_fn2)R_GetCCallable("rxode2","rxcauchy") ;
rxchisq = (rxode2i_fn)R_GetCCallable("rxode2","rxchisq") ;
rxexp = (rxode2i_fn)R_GetCCallable("rxode2","rxexp");
rxf = (rxode2i_fn2)R_GetCCallable("rxode2","rxf") ;
rxgeom = (rxode2i_ifn)R_GetCCallable("rxode2","rxgeom") ;
rxgamma = (rxode2i_fn2)R_GetCCallable("rxode2","rxgamma") ;
rxbeta = (rxode2i_fn2)R_GetCCallable("rxode2","rxbeta") ;
rxpois = (rxode2i_ifn)R_GetCCallable("rxode2","rxpois") ;
rxt_ = (rxode2i_fn)R_GetCCallable("rxode2","rxt_") ;
rxunif = (rxode2i_fn2)R_GetCCallable("rxode2","rxunif") ;
rxweibull = (rxode2i_fn2)R_GetCCallable("rxode2","rxweibull");
rinorm = (rxode2i2_fn2)R_GetCCallable("rxode2", "rinorm");
rinormV = (rxode2i2_fn2)R_GetCCallable("rxode2", "rinormV");
ribinom = (rxode2i2_ribinom)R_GetCCallable("rxode2","ribinom") ;
ricauchy = (rxode2i2_fn2)R_GetCCallable("rxode2","ricauchy") ;
richisq = (rxode2i2_fn)R_GetCCallable("rxode2","richisq") ;
riexp = (rxode2i2_fn)R_GetCCallable("rxode2","riexp");
rif = (rxode2i2_fn2)R_GetCCallable("rxode2","rif") ;
rigeom = (rxode2i2_ifn)R_GetCCallable("rxode2","rigeom") ;
rigamma = (rxode2i2_fn2)R_GetCCallable("rxode2","rigamma") ;
ribeta = (rxode2i2_fn2)R_GetCCallable("rxode2","ribeta") ;
ripois = (rxode2i2_ifn)R_GetCCallable("rxode2","ripois") ;
rit_ = (rxode2i2_fn)R_GetCCallable("rxode2","rit_") ;
riunif = (rxode2i2_fn2)R_GetCCallable("rxode2","riunif") ;
riweibull = (rxode2i2_fn2)R_GetCCallable("rxode2","riweibull");
phi = (rxode2_fn)R_GetCCallable("rxode2","phi");
gammap = (rxode2_fn2) R_GetCCallable("rxode2","gammap");
gammaq = (rxode2_fn2) R_GetCCallable("rxode2","gammaq");
gammapInv = (rxode2_fn2) R_GetCCallable("rxode2","gammapInv");
gammapInva = (rxode2_fn2) R_GetCCallable("rxode2","gammapInva");
gammaqInv = (rxode2_fn2) R_GetCCallable("rxode2","gammaqInv");
gammaqInva = (rxode2_fn2) R_GetCCallable("rxode2","gammaqInva");
uppergamma = (rxode2_fn2) R_GetCCallable("rxode2","uppergamma");
lowergamma = (rxode2_fn2) R_GetCCallable("rxode2","lowergamma");
gammapDer = (rxode2_fn2) R_GetCCallable("rxode2","gammapDer");
logit = (rxode2_fn3) R_GetCCallable("rxode2", "logit");
expit = (rxode2_fn3) R_GetCCallable("rxode2", "expit");
simeta =(_simfun) R_GetCCallable("rxode2", "simeta");
simeps =(_simfun) R_GetCCallable("rxode2", "simeps");
_compareFactorVal=(rxode2_compareFactorVal_fn) R_GetCCallable("rxode2", "compareFactorVal");
_update_par_ptr = (_update_par_ptr_p) R_GetCCallable("rxode2","_update_par_ptr");
_getParCov = (_getParCov_p) R_GetCCallable("rxode2","_getParCov");
_solveData = _getRxSolve_();
}
void _assignFuns() {
if (_assign_ptr == NULL){
_assignFuns0();
}
}
extern void rx_0ba247452048de33b1ffb8af516714fc__ode_solver_solvedata (rx_solve *solve){
_solveData = solve;
}
extern rx_solve *rx_0ba247452048de33b1ffb8af516714fc__ode_solver_get_solvedata(){
return _solveData;
}
SEXP rx_0ba247452048de33b1ffb8af516714fc__model_vars();
// prj-specific differential eqns
void rx_0ba247452048de33b1ffb8af516714fc__dydt(int *_neq, double __t, double *__zzStateVar__, double *__DDtStateVar__)
{
int _itwhile = 0;
(void)_itwhile;
int _cSub = _neq[1];
double t = __t + _solveData->subjects[_neq[1]].curShift;
(void)t;
double _THETA_1_;
double _THETA_2_;
double _ETA_1_;
double rx_yj___;
double rx_lambda___;
double rx_hi___;
double rx_low___;
double rx_expr_0;
double rx_expr_1;
double rx_pred_;
double rx_r_;
(void)t;
(void)_THETA_1_;
(void)_THETA_2_;
(void)_ETA_1_;
(void)rx_yj___;
(void)rx_lambda___;
(void)rx_hi___;
(void)rx_low___;
(void)rx_expr_0;
(void)rx_expr_1;
(void)rx_pred_;
(void)rx_r_;
rx_pred_ = _PL[0];
rx_r_ = _PL[1];
_update_par_ptr(__t, _cSub, _solveData, _idx);
_THETA_1_ = _PP[0];
_THETA_2_ = _PP[1];
_ETA_1_ = _PP[2];
rx_yj_ =2;
rx_lambda_ =1;
rx_hi_ =1;
rx_low_ =0;
rx_expr_0 =exp(_ETA_1_);
rx_expr_1 =exp(-t*rx_expr_0*_THETA_1_);
rx_pred_=10*rx_expr_1;
rx_r_=100*Rx_pow_di((rx_expr_1*_THETA_2_),2);
(&_solveData->subjects[_cSub])->dadt_counter[0]++;
}
// Jacobian derived vars
void rx_0ba247452048de33b1ffb8af516714fc__calc_jac(int *_neq, double __t, double *__zzStateVar__, double *__PDStateVar__, unsigned int __NROWPD__) {
int _itwhile = 0;
(void)_itwhile;
int _cSub=_neq[1];
double t = __t + _solveData->subjects[_neq[1]].curShift;
(void)t;
(&_solveData->subjects[_cSub])->jac_counter[0]++;
}
// Functional based initial conditions.
void rx_0ba247452048de33b1ffb8af516714fc__inis(int _cSub, double *__zzStateVar__){
int _itwhile = 0;
(void)_itwhile;
}
// prj-specific derived vars
void rx_0ba247452048de33b1ffb8af516714fc__calc_lhs(int _cSub, double __t, double *__zzStateVar__, double *_lhs) {
int _itwhile = 0;
(void)_itwhile;
double t = __t + _solveData->subjects[_cSub].curShift;
(void)t;
double __DDtStateVar_0__;
double _THETA_1_;
double _THETA_2_;
double _ETA_1_;
double rx_yj___;
double rx_lambda___;
double rx_hi___;
double rx_low___;
double rx_expr_0;
double rx_expr_1;
double rx_pred_;
double rx_r_;
(void)t;
(void)__DDtStateVar_0__;
(void)_THETA_1_;
(void)_THETA_2_;
(void)_ETA_1_;
(void)rx_yj___;
(void)rx_lambda___;
(void)rx_hi___;
(void)rx_low___;
(void)rx_expr_0;
(void)rx_expr_1;
(void)rx_pred_;
(void)rx_r_;
rx_pred_ = _PL[0];
rx_r_ = _PL[1];
_update_par_ptr(__t, _cSub, _solveData, _idx);
_THETA_1_ = _PP[0];
_THETA_2_ = _PP[1];
_ETA_1_ = _PP[2];
rx_yj_ =2;
rx_lambda_ =1;
rx_hi_ =1;
rx_low_ =0;
rx_expr_0 =exp(_ETA_1_);
rx_expr_1 =exp(-t*rx_expr_0*_THETA_1_);
rx_pred_=10*rx_expr_1;
rx_r_=100*Rx_pow_di((rx_expr_1*_THETA_2_),2);
_lhs[0]=rx_pred_;
_lhs[1]=rx_r_;
}
// Functional based bioavailability
double rx_0ba247452048de33b1ffb8af516714fc__F(int _cSub, int _cmt, double _amt, double __t, double *__zzStateVar__){
return _amt;
}
// Functional based absorption lag
double rx_0ba247452048de33b1ffb8af516714fc__Lag(int _cSub, int _cmt, double __t, double *__zzStateVar__){
return __t;
}
// Modeled zero-order rate
double rx_0ba247452048de33b1ffb8af516714fc__Rate(int _cSub, int _cmt, double _amt, double __t, double *__zzStateVar__){
return 0.0;
}
// Modeled zero-order duration
double rx_0ba247452048de33b1ffb8af516714fc__Dur(int _cSub, int _cmt, double _amt, double __t){
return 0.0;
}
// Model Times
void rx_0ba247452048de33b1ffb8af516714fc__mtime(int _cSub, double *_mtime){
}
// Matrix Exponential (0)
void rx_0ba247452048de33b1ffb8af516714fc__ME(int _cSub, double _t, double __t, double *_mat, const double *__zzStateVar__){
int _itwhile = 0;
(void)_itwhile;
double t = __t + _solveData->subjects[_cSub].curShift;
(void)t;
}
// Inductive linearization Matf
void rx_0ba247452048de33b1ffb8af516714fc__IndF(int _cSub, double _t, double __t, double *_matf){
int _itwhile = 0;
(void)_itwhile;
double t = __t + _solveData->subjects[_cSub].curShift;
(void)t;
}
extern SEXP rx_0ba247452048de33b1ffb8af516714fc__model_vars(){
int pro=0;
SEXP _mv = PROTECT(_rxGetModelLib("rx_0ba247452048de33b1ffb8af516714fc__model_vars"));pro++;
if (!_rxIsCurrentC(_mv)){
SEXP hash = PROTECT(allocVector(STRSXP, 1));pro++;
#define __doBuf__ sprintf(buf, "un]\"BAAA@QRtHACAAAAAAAC\"bAAA+:g6JitUQ.GAPl/@_hOYOADX]W)vVE*FBY,^Ddb0`EM}rgvip#dwPz8zTj*!f%%=GviPB0wHP$II5Y\?ZX,NWfu<GidZ+$TD*F@w#TFtoCA~lo!$5$L_@H+{Vu#QRwS**.m}etP|@=IK{y\?<Q!hN3hLoDrZ_Xg[=i@I/a*@S@0Qo@$_l<Ug_1L_l&#\?5]g/i[x%%Ci[5)PleON(q.!v#22iWPq9LaGQ]rWIC%%$Zg|;XR]IQneLQMyf0n6<,>h;yZFYi6CkQymfLu_\?(\"|H5w>]1uK$e:kai\?u}7K3Vvp0FI27#=bi(So7bR:=MadcWK:(`#Zi<hjWd5~x5H<[`Tfht4DD%%Q08;`Q%%a+2Hi2([g.S6nB:};QUCC\">VhQtERNQn*(+[9a5tSt4dqYkY9P,F(wLh8p~2)&Ay.$=aOBf.\"PSdxM<+^LfuL<`&tdrp|774y|lRMrsu3*KrrBlu<*x6E>+}~Z:`\"xBHe4_p+c>olB~AEA^CcS_3dL&yZZ7_qcF#74=%%}[Z1Pg$K1+T~z;do_zU*lTwH\"@Ykl<|nzgjhq;D3@SB%%>1L@+*5zS!xulCb(AN6IIIEVoAkPdP)az*lGF`%%t*B7swImDBB(s(b#xR*riOw2r^b]oI;:LI&q#/RrdYF14`f^O6}M<pcJ&#W^#fy%%73lK!JH(g|]J*[s5aT~g%%}E+U\"6t,8hsYR.|HWrhJXh);VAT$}\?kiCPQfxfuf&7o,,j|$+;r#t[[4`|g5DD34uL36XEYnL))O)E3\"dHC2uxYcnG=FriXLl0!/KKU\"Q5.+eRVXB*zukqgMEHGT5XT$L/d]}I9Y.>[$)7}s)Up`<ckBZcG<{#bzIjRd<lT!Oi~!W|hz/RPc;>kbSjUfKh$\?f*S&xc..yoe{k]9pZO|)8cEW]d>LX8Obkd5L^wez]4*[jD<^O_E@D/4&[t{W16W^4}czh[ZBrPz00}6CYV[r@5Jeb&3v\"J^B4hCsaawuf$c!q7IQmpX_]>tZ$T:a#L~Ic&cW5zy}\?u$fQYwj!p\?KZawR(qV<7C5Poo>};N&pdqJvW<0c|gL|+<DYSXHFM%%zo5z79H_Ki=:qN_cH2N83_I");
char buf[1127];
__doBuf__
#undef __doBuf__
SET_STRING_ELT(hash, 0, mkChar(buf));
SEXP lst = PROTECT(_rxQr(hash));pro++;
_assign_ptr(lst);
UNPROTECT(pro);
return lst;
} else {
UNPROTECT(pro);
return _mv;
}
}
extern void rx_0ba247452048de33b1ffb8af516714fc__dydt_lsoda(int *neq, double *t, double *A, double *DADT)
{
rx_0ba247452048de33b1ffb8af516714fc__dydt(neq, *t, A, DADT);
}
extern int rx_0ba247452048de33b1ffb8af516714fc__dydt_liblsoda(double __t, double *y, double *ydot, void *data)
{
int *neq = (int*)(data);
rx_0ba247452048de33b1ffb8af516714fc__dydt(neq, __t, y, ydot);
return(0);
}
extern void rx_0ba247452048de33b1ffb8af516714fc__calc_jac_lsoda(int *neq, double *t, double *A,int *ml, int *mu, double *JAC, int *nrowpd){
// Update all covariate parameters
rx_0ba247452048de33b1ffb8af516714fc__calc_jac(neq, *t, A, JAC, *nrowpd);
}
//Create function to call from R's main thread that assigns the required functions. Sometimes they don't get assigned.
extern void rx_0ba247452048de33b1ffb8af516714fc__assignFuns(){
_assignFuns();
}
//Initialize the dll to match rxode2's calls
void R_init0_rx_0ba247452048de33b1ffb8af516714fc_(){
// Get C callables on load; Otherwise it isn't thread safe
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__assignFuns", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__assignFuns);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__inis",(DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__inis);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__dydt",(DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__dydt);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__calc_lhs",(DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__calc_lhs);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__calc_jac",(DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__calc_jac);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__dydt_lsoda", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__dydt_lsoda);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__calc_jac_lsoda", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__calc_jac_lsoda);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__ode_solver_solvedata", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__ode_solver_solvedata);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__ode_solver_get_solvedata", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__ode_solver_get_solvedata);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__F", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__F);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__Lag", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__Lag);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__Rate", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__Rate);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__Dur", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__Dur);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__mtime", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__mtime);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__ME", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__ME);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__IndF", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__IndF);
R_RegisterCCallable("rx_0ba247452048de33b1ffb8af516714fc_","rx_0ba247452048de33b1ffb8af516714fc__dydt_liblsoda", (DL_FUNC) rx_0ba247452048de33b1ffb8af516714fc__dydt_liblsoda);
}
//Initialize the dll to match rxode2's calls
void R_init_rx_0ba247452048de33b1ffb8af516714fc_(DllInfo *info){
// Get C callables on load; Otherwise it isn't thread safe
R_init0_rx_0ba247452048de33b1ffb8af516714fc_();
static const R_CallMethodDef callMethods[] = {
{"rx_0ba247452048de33b1ffb8af516714fc__model_vars", (DL_FUNC) &rx_0ba247452048de33b1ffb8af516714fc__model_vars, 0},
{NULL, NULL, 0}
};
R_registerRoutines(info, NULL, callMethods, NULL, NULL);
R_useDynamicSymbols(info,FALSE);
_assignFuns0();
}
void R_unload_rx_0ba247452048de33b1ffb8af516714fc_ (DllInfo *info){
// Free resources required for single subject solve.
SEXP _mv = PROTECT(_rxGetModelLib("rx_0ba247452048de33b1ffb8af516714fc__model_vars"));
if (!isNull(_mv)){
_rxRmModelLib("rx_0ba247452048de33b1ffb8af516714fc__model_vars");
}
UNPROTECT(1);
}