Calculates RBC/PL ratio curve using specific functions and population average parameters.
92 {
93 int i;
94 double K, A, B, C, D, Rmax, Th, dt;
95
96
97 if(t==NULL || r==NULL || nr<1) return(1);
98
99
100 switch(tracer) {
101 case NORBC:
102 for(i=0; i<nr; i++)
103 r[i]= 0.0;
104 break;
105 case INWATER:
106 case METOMIDATE:
108 for(i=1; i<nr; i++)
109 r[i]=r[0];
110 break;
111 case FDG:
112 K=0.0012; B=0.80;
113 for(i=0; i<nr; i++)
114 r[i]= K*t[i] + B;
115 break;
116 case FBPA:
117 K=0.00888; B=0.0;
118 for(i=0; i<nr; i++)
119 r[i]= K*t[i] + B;
120 break;
121 case FDOPA:
122 Rmax=1.446; Th=83.56;
123 for(i=0; i<nr; i++)
124 r[i]= (Rmax*t[i]) / (Th + t[i]);
125 break;
126 case MEAIB:
127 K=0.00398; B=0.0;
128 for(i=0; i<nr; i++)
129 r[i]= K*t[i] + B;
130 break;
131 case PIB:
132
133 A=7.4150E-01; B=4.0618E+00; C=1.2182E+04;
134 for(i=0; i<nr; i++) {
135 r[i]= 1.0 - (A*pow(t[i], B)/(pow(t[i], B) + C));
137 }
138 break;
139 case FLUMAZENIL:
140 A=6.89E-01; B=6.89E-01; C=4.57E+01;
141 for(i=0; i<nr; i++) {
142 r[i]= 1.0 - (A*pow(t[i], B)/(pow(t[i], B) + C));
144 }
145 break;
146 case AH690:
147 A=7.6467E-01; B=2.0124E+00; C=5.1609E+01; D=1.1381E-03;
148 for(i=0; i<nr; i++)
149 r[i]= 1.0 - (A*pow(t[i], B)/(pow(t[i], B) + C) + D*t[i]);
150 break;
151 case AH691:
152 A=8.1894E-01; B=1.1967E+00; C=1.7223E+00; D=1.1873E-03;
153 for(i=0; i<nr; i++)
154 r[i]= 1.0 - (A*pow(t[i], B)/(pow(t[i], B) + C) + D*t[i]);
155 break;
156 case FMPEPD2:
157 A=1.07741e+001; B=1.29526e+001; C=1.28; D=3.7e-002;
158 for(i=0; i<nr; i++) {
159 dt=t[i]-0.5;
160 if(dt<=0.0) r[i]=0.0; else {
161 r[i]= (C*pow(dt, C-1.0))/(pow(B, C)+pow(dt, C)) -
162 (C*pow(dt, 2.0*C-1.0))/pow(pow(B, C)+pow(dt, C), 2.0) +
163 (D*pow(dt, C))/(pow(B, C)+pow(dt, C));
164 r[i]*=A;
165 }
166 }
167 break;
168 case PALMITATE:
169 A=3.906489E-003; B=-9.939087E-002; C=2.713401E-004; D=4.740762E-003;
170 for(i=0; i<nr; i++) {
171 dt=t[i]-5.0;
172 if(dt<0.0) r[i]=0.0; else
173 r[i]= (A*dt + C*dt*dt) / (1.0 + B*dt + D*dt*dt);
174 }
175 break;
176 case PK11195:
177 A=1.9087E-01; B=3.0773E+00; C=2.8266E+02;
178 for(i=0; i<nr; i++) {
179 r[i]= A*pow(t[i], B)/(pow(t[i], B) + C);
180 }
181 break;
182 case PE2I:
183 A=2.063642; B=7.460386E-001; C=6.812810E+001;
184 for(i=0; i<nr; i++) {
185 r[i]= A*pow(t[i], B)/(pow(t[i], B) + C);
186 }
187 break;
188 case CARFENTANIL:
189 A=1.857965E-001; B=5.388415; C=1.344971E+007; D=3.015209E-001;
190 for(i=0; i<nr; i++) {
191 r[i]= A*pow(t[i], B)/(pow(t[i], B) + C) + D;
192 }
193 break;
194 case ORMB:
195 A=0.4281961; B=1.14880; C=4.013195; D=1.863528;
196 for(i=0; i<nr; i++) {
197 dt=t[i]-D;
198 if(dt<=0.0) r[i]=0.0;
199 else r[i]= A*pow(t[i], B)/(pow(t[i], B) + C);
200 }
201
202
203
204
205
206
207 break;
208 case SMW139:
209
210 A=0.006459; B=0.06913; C=0.1278;
211 for(i=0; i<nr; i++) {
212 double e=exp(-B*t[i]);
213 r[i]=A*(t[i]*e + (C/(B*B))*(1.0-(B*t[i]+1.0)*e));
214 }
215 break;
216 case UCBJ:
217
218 {
219 double A1=0.691911;
220 double L1=0.9;
221 double A2=0.174026;
222 double L2=0.029;
223 double A3=0.357205;
224 double L3=-0.004;
225 for(i=0; i<nr; i++) {
226 if(!(t[i]>0.0)) r[i]=0.0;
227 else r[i]=(A1*t[i] - A2 - A3)*exp(-L1*t[i]) + A2*exp(-L2*t[i]) + A3*exp(-L3*t[i]);
228 }
229 }
230 break;
231
232 default:
233 return(-1);
234 }
235
236 return(0);
237}