TPCCLIB
Loading...
Searching...
No Matches
tpccm.h
Go to the documentation of this file.
1
7#ifndef _TPCCM_H_
8#define _TPCCM_H_
9/*****************************************************************************/
10
11/*****************************************************************************/
12#include "tpcclibConfig.h"
13/*****************************************************************************/
14#include <stdio.h>
15#include <stdlib.h>
16#include <string.h>
17#include <math.h>
18/*****************************************************************************/
19
20/*****************************************************************************/
21/* sim1cm */
22/*****************************************************************************/
23int simMBF(
24 double *t, double *ci, const int nr,
25 const double k1, const double k2, const double Vfit, double *ct
26);
27int simC1(
28 double *t, double *ca, const int nr,
29 const double k1, const double k2, double *ct
30);
31int simC1_i(
32 double *t, double *cai, const int nr,
33 const double k1, const double k2, double *ct
34);
35int simC1_d(
36 double *t, double *ca, const int nr,
37 const double k1, const double k2, double *ct
38);
39/*****************************************************************************/
40/* sim2cm */
41/*****************************************************************************/
42int simC2(
43 double *t, double *ca, const int nr,
44 const double k1, const double k2, const double k3, const double k4,
45 double *ct, double *cta, double *ctb
46);
47int simC2_i(
48 double *t, double *cai, const int nr,
49 const double k1, const double k2, const double k3, const double k4,
50 double *ct, double *cta, double *ctb
51);
52/*****************************************************************************/
53/* sim3cms */
54/*****************************************************************************/
55int simC3s(
56 double *t, double *ca, const int nr, double k1, double k2,
57 double k3, double k4, double k5, double k6,
58 double *ct, double *cta, double *ctb, double *ctc
59);
60int simC3vs(
61 double *t, double *ca, double *cb, const int nr,
62 const double k1, const double k2, const double k3, const double k4,
63 const double k5, const double k6,
64 const double f, const double vb, const double fa, const int vvm,
65 double *cpet, double *cta, double *ctb, double *ctc,
66 double *ctab, double *ctvb
67);
68/*****************************************************************************/
69/* sim3cmp */
70/*****************************************************************************/
71int simC3p(
72 double *t, double *ca, const int nr, const double k1, const double k2,
73 const double k3, const double k4, const double k5, const double k6,
74 double *ct, double *cta, double *ctb, double *ctc
75);
76int simC3vp(
77 double *t, double *ca, double *cb, const int nr,
78 const double k1, const double k2, const double k3, const double k4,
79 const double k5, const double k6,
80 const double f, const double vb, const double fa, const int vvm,
81 double *cpet, double *cta, double *ctb, double *ctc,
82 double *ctab, double *ctvb
83);
84/*****************************************************************************/
85/* simkloss */
86/*****************************************************************************/
87int simC2l(
88 double *t, double *ca, const int nr, const double k1, const double k2,
89 const double k3, const double kLoss, double *ct, double *cta, double *ctb
90);
91int simC2vl(
92 double *t, double *ca, double *cb, const int nr,
93 const double k1, const double k2, const double k3, const double kL,
94 const double f, const double vb, const double fa, const int vvm,
95 double *cpet, double *cta, double *ctb,
96 double *ctab, double *ctvb
97);
98int simC3vpKLoss(
99 double *t, double *ca, double *cb, const int nr,
100 const double k1, const double k2, const double k3, const double k4,
101 const double k5, const double k6, const double kLoss,
102 const double f, const double vb, const double fa, const int vvm,
103 double *cpet, double *cta, double *ctb, double *ctc,
104 double *ctab, double *ctvb
105);
106/*****************************************************************************/
107/* simrtcm */
108/*****************************************************************************/
109int simRTCM(
110 double *t, double *cr, const int nr, const double R1, const double k2,
111 const double k3, const double k4, double *ct, double *cta, double *ctb
112);
113int simSRTM(
114 double *t, double *cr, const int nr, const double R1, const double k2,
115 const double BP, double *ct
116);
117int simTRTM(
118 double *t, double *cr, const int nr, const double R1, const double k2,
119 double k3, double *ct
120);
121/*****************************************************************************/
122/* simdicm */
123/*****************************************************************************/
124int simC1DI(
125 double *t, double *cba, double *cbb, const int nr,
126 const double k1a, const double k1b, const double k2, double *ct
127);
128int simC3DIvs(
129 double *t, double *ca1, double *ca2, double *cb, const int nr,
130 const double k1, const double k2, const double k3, const double k4,
131 const double k5, const double k6, const double k1b, const double k2b,
132 const double f, const double vb, const double fa, const int vvm,
133 double *scpet, double *sct1, double *sct2, double *sct3, double *sct1b,
134 double *sctab, double *sctvb
135);
136int simC4DIvp(
137 double *t, double *ca1, double *ca2, double *cb, const int nr,
138 const double k1, const double k2, const double k3, const double k4,
139 const double k5, const double k6, const double k7, const double km,
140 const double k1b, const double k2b,
141 const double f, const double vb, const double fa, const int vvm,
142 double *scpet, double *sct1, double *sct2, double *sct3,
143 double *sct1b, double *sctab, double *sctvb,
144 const int verbose
145);
146int simC4DIvs(
147 double *t, double *ca1, double *ca2, double *cb, const int nr,
148 const double k1, const double k2, const double k3, const double k4,
149 const double k5, const double k6, const double k7, const double km,
150 const double k1b, const double k2b,
151 const double f, const double vb, const double fa, const int vvm,
152 double *scpet, double *sct1, double *sct2, double *sct3,
153 double *sct1b, double *sctab, double *sctvb,
154 const int verbose
155);
156/*****************************************************************************/
157/* simdispersion */
158/*****************************************************************************/
159int simDispersion(
160 double *x, double *y, const int n,
161 const double tau1, const double tau2, double *tmp
162);
163int corDispersion(double *x, double *y, const int n, const double tau, double *tmp);
164int simTTM(double *t, double *c0, const int n, const double k, const int cn, double *cout);
165int simTTM_i(double *t, double *c0i, const int n, const double k, const int cn, double *cout);
166/*****************************************************************************/
167/* simoxygen */
168/*****************************************************************************/
169int simOxygen(
170 double *t, double *ca1, double *ca2, double *ca1i, double *ca2i, const int n,
171 const double k1a, const double k2a, const double km,
172 const double k1b, const double k2b,
173 const double vb, const double fa, const int vvm,
174 double *scpet, double *sct1, double *sct2, double *sctab,
175 double *sctvb1, double *sctvb2, double *scvb1, double *scvb2,
176 const int verbose
177);
178/*****************************************************************************/
179/* convolut */
180/*****************************************************************************/
181int convolve1D(double *data, const int n, double *kernel, const int m, double *out);
182int simIsSteadyInterval(double *x, const int n, double *f);
183/*****************************************************************************/
184/* simblood */
185/*****************************************************************************/
189typedef struct ICMPARC {
191 char name[256];
193 double Ti;
195 double Tdur;
197 double Irate;
199 double k_BV_BA;
201 double k_BA_U;
203 double k_BA_TF;
205 double k_BA_TS;
207 double k_TF_BV;
209 double k_TS_BV;
211 unsigned int mNr;
217 double kp_BV;
219 double kp_TF;
221 double kp_TS;
223 double *ic_BV;
225 double *ic_TS;
227 double *ic_TF;
229 double *c_BA;
231 double *c_BV;
233 double *c_TS;
235 double *c_TF;
236} ICMPARC;
237
238void icmparcInit(ICMPARC *d);
239int icmparcAddMetabolites(ICMPARC *d, unsigned const int mNr);
240int icmparcAllocateTACs(ICMPARC *d, unsigned const int sNr, const int sub);
241void icmparcFree(ICMPARC *d);
242int simBTAC(double *t, const unsigned int nr, ICMPARC *p, double *cb);
243
244int simBM1(double *t, double *ct, const int nr, const double k, double *cp);
245/*****************************************************************************/
246
247/*****************************************************************************/
248#endif /* _TPCCM_H_ */
double k_TF_BV
Definition tpccm.h:207
double * c_BA
Definition tpccm.h:229
struct ICMPARC * parent
Definition tpccm.h:215
double k_BA_TS
Definition tpccm.h:205
double Tdur
Definition tpccm.h:195
double Ti
Definition tpccm.h:193
unsigned int mNr
Definition tpccm.h:211
double * c_TF
Definition tpccm.h:235
double k_BV_BA
Definition tpccm.h:199
double * ic_BV
Definition tpccm.h:223
double * ic_TF
Definition tpccm.h:227
double k_TS_BV
Definition tpccm.h:209
struct ICMPARC * metabolite
Definition tpccm.h:213
double kp_TF
Definition tpccm.h:219
double k_BA_U
Definition tpccm.h:201
double kp_BV
Definition tpccm.h:217
double k_BA_TF
Definition tpccm.h:203
char name[256]
Definition tpccm.h:191
double * c_BV
Definition tpccm.h:231
double * c_TS
Definition tpccm.h:233
double kp_TS
Definition tpccm.h:221
double Irate
Definition tpccm.h:197
double * ic_TS
Definition tpccm.h:225
int simMBF(double *t, double *ci, const int nr, const double k1, const double k2, const double Vfit, double *ct)
Definition sim1cm.c:28
int simC4DIvp(double *t, double *ca1, double *ca2, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double k7, const double km, const double k1b, const double k2b, const double f, const double vb, const double fa, const int vvm, double *scpet, double *sct1, double *sct2, double *sct3, double *sct1b, double *sctab, double *sctvb, const int verbose)
Definition simdicm.c:251
int simC3vs(double *t, double *ca, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double f, const double vb, const double fa, const int vvm, double *cpet, double *cta, double *ctb, double *ctc, double *ctab, double *ctvb)
Definition sim3cms.c:143
int simC1DI(double *t, double *cba, double *cbb, const int nr, const double k1a, const double k1b, const double k2, double *ct)
Definition simdicm.c:30
int simTTM_i(double *t, double *c0i, const int n, const double k, const int cn, double *cout)
int convolve1D(double *data, const int n, double *kernel, const int m, double *out)
Calculates the convolution sum of a discrete real data set data[0..n-1] and a discretized response fu...
Definition convolut.c:27
int simDispersion(double *x, double *y, const int n, const double tau1, const double tau2, double *tmp)
int simOxygen(double *t, double *ca1, double *ca2, double *ca1i, double *ca2i, const int n, const double k1a, const double k2a, const double km, const double k1b, const double k2b, const double vb, const double fa, const int vvm, double *scpet, double *sct1, double *sct2, double *sctab, double *sctvb1, double *sctvb2, double *scvb1, double *scvb2, const int verbose)
Definition simoxygen.c:29
int simC3p(double *t, double *ca, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, double *ct, double *cta, double *ctb, double *ctc)
Definition sim3cmp.c:33
int simC3s(double *t, double *ca, const int nr, double k1, double k2, double k3, double k4, double k5, double k6, double *ct, double *cta, double *ctb, double *ctc)
Definition sim3cms.c:32
int simC1(double *t, double *ca, const int nr, const double k1, const double k2, double *ct)
Definition sim1cm.c:93
int simC4DIvs(double *t, double *ca1, double *ca2, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double k7, const double km, const double k1b, const double k2b, const double f, const double vb, const double fa, const int vvm, double *scpet, double *sct1, double *sct2, double *sct3, double *sct1b, double *sctab, double *sctvb, const int verbose)
Definition simdicm.c:441
void icmparcFree(ICMPARC *d)
Definition simblood.c:125
int simC1_d(double *t, double *ca, const int nr, const double k1, const double k2, double *ct)
Definition sim1cm.c:229
int simRTCM(double *t, double *cr, const int nr, const double R1, const double k2, const double k3, const double k4, double *ct, double *cta, double *ctb)
Definition simrtcm.c:32
int icmparcAllocateTACs(ICMPARC *d, unsigned const int sNr, const int sub)
Definition simblood.c:72
int simBM1(double *t, double *ct, const int nr, const double k, double *cp)
Definition simblood.c:275
int simTTM(double *t, double *c0, const int n, const double k, const int cn, double *cout)
int simC2(double *t, double *ca, const int nr, const double k1, const double k2, const double k3, const double k4, double *ct, double *cta, double *ctb)
Definition sim2cm.c:31
int simC3vpKLoss(double *t, double *ca, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double kLoss, const double f, const double vb, const double fa, const int vvm, double *cpet, double *cta, double *ctb, double *ctc, double *ctab, double *ctvb)
Definition simkloss.c:36
int simC1_i(double *t, double *cai, const int nr, const double k1, const double k2, double *ct)
Definition sim1cm.c:164
int simSRTM(double *t, double *cr, const int nr, const double R1, const double k2, const double BP, double *ct)
Definition simrtcm.c:114
int simTRTM(double *t, double *cr, const int nr, const double R1, const double k2, double k3, double *ct)
Definition simrtcm.c:182
int simC3DIvs(double *t, double *ca1, double *ca2, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double k1b, const double k2b, const double f, const double vb, const double fa, const int vvm, double *scpet, double *sct1, double *sct2, double *sct3, double *sct1b, double *sctab, double *sctvb)
Definition simdicm.c:101
int simIsSteadyInterval(double *x, const int n, double *f)
Definition convolut.c:66
int simC3vp(double *t, double *ca, double *cb, const int nr, const double k1, const double k2, const double k3, const double k4, const double k5, const double k6, const double f, const double vb, const double fa, const int vvm, double *cpet, double *cta, double *ctb, double *ctc, double *ctab, double *ctvb)
Definition sim3cmp.c:140
int simC2l(double *t, double *ca, const int nr, const double k1, const double k2, const double k3, const double kLoss, double *ct, double *cta, double *ctb)
Definition simkloss.c:169
int icmparcAddMetabolites(ICMPARC *d, unsigned const int mNr)
Definition simblood.c:43
int simBTAC(double *t, const unsigned int nr, ICMPARC *p, double *cb)
Definition simblood.c:154
int simC2vl(double *t, double *ca, double *cb, const int nr, const double k1, const double k2, const double k3, const double kL, const double f, const double vb, const double fa, const int vvm, double *cpet, double *cta, double *ctb, double *ctab, double *ctvb)
Definition simkloss.c:261
int corDispersion(double *x, double *y, const int n, const double tau, double *tmp)
int simC2_i(double *t, double *cai, const int nr, const double k1, const double k2, const double k3, const double k4, double *ct, double *cta, double *ctb)
Definition sim2cm.c:124
void icmparcInit(ICMPARC *d)
Definition simblood.c:20