Esercizio 3
Il delta9-tetraidrocannabinolo (THC), principale cannabinoide della cannabis, può essere somministrato a scopi terapeutici ma può causare dipendenza se assunto in dosi inappropriate. La farmacocinetica del THC medico e dei suoi metaboliti, dopo la somministrazione orale, può essere descritta da un modello compartimentale rappresentato in Figura 1.
Anche la farmacocinetica utilizza metodi numerici per l'approssimazione di soluzioni di grandi sistemi di equazioni differenziali. Quello che segue, da implementare su Matlab, ne è un esempio:
Il modello è descritto dal seguente sistema di equazioni differenziali:
dCa(t)/dt = ka·Cb(t) - (ka + ke)·Ca(t)
dCb(t)/dt = -ka·Cb(t)
dC1(t)/dt = ka·Cb(t) - (k21 + k23 + k31 + k17 + k10 + ke)·C1(t) + k12·C2(t) + k31·C3(t) + k5·C5(t) + k61·C6(t)
dC2(t)/dt = k21·C1(t) - (k12 + k23 + k45 + k3)·C2(t) + k32·C3(t) + k46·C4(t)
dC3(t)/dt = k23·C1(t) - (k31 + k32 + k43)·C3(t) + k31·C1(t) + k53·C5(t)
dC4(t)/dt = k31·C3(t) - (k43 + k34 + k3)·C4(t) + k34·C6(t) + k76·C7(t)
dC5(t)/dt = k15·C1(t) - (k3 + k25 + k46 + k53)·C5(t) + k36·C3(t)
dC6(t)/dt = kweg>·(Cx(t) + k30·Cx(t) + k4c)·C6(t) - Cc(t)·(k5e + k35·Cx(t))
dC7(t)/dt = kcdc·Cy(t) - krc·Ca(t)
Risoluzione numerica con Matlab
Per la risoluzione numerica del problema differenziale mediante i metodi One-Step e la function di Matlab Ode45, ho definito un intervallo di discretizzazione con l’ampiezza dell’intervallo di discretizzazione β pari a 720 minuti e numero di step nstep pari a 800 così da valutare le approssimazioni con un passo di discretizzazione h = 0.9. Come da richiesta, ho graficato le concentrazioni di THC (Delta9-tetraidrocannabinol) e dei metaboliti THC-OH (11-hydroxy-delta9-tetraidrocannabinol) e THC-COOH (11-nor-9-carboxy-delta9-tetraidrocannabinol) nel plasma in funzione del tempo:
Concentrazione di THC-COOH nel plasma
Anche dall'osservazione dei grafici precedenti si nota come il metodo di Eulero è quello che si discosta un po’ di più dalla soluzione più accurata (Ode45) anche se, a causa del piccolo passo di discretizzazione, non si riesce ad avere una netta distinzione delle curve. Per questo motivo, ho calcolato gli errori globali dei metodi rispetto alla soluzione ottenuta con la Ode45 nel caso del calcolo della concentrazione di THC nel plasma:
| ti | Eerrore_E | Eerrore_H | Eerrore_R |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0.9 | 0.13816 | 0.098106 | 0.020605 |
| 1.8 | 0.097638 | 0.10519 | 0.0094597 |
| 2.7 | 0.10924 | 0.099422 | 0.0032928 |
| 3.6 | 0.078131 | 0.093241 | 0.0010395 |
| 4.5 | 0.09988 | 0.085489 | 0.00025623 |
| 5.4 | 0.095205 | 0.079273 | 0.00014346 |
| 6.3 | 0.092519 | 0.073236 | 8.9847e-05 |
| 7.2 | 0.042438 | 0.067619 | 0.00028294 |
| 8.1 | 0.086303 | 0.062873 | 6.950e-06 |
| 9 | 0.026368 | 0.058278 | 5.4668e-05 |
| 9.9 | 0.081444 | 0.05373 | 0.00013351 |
| 10.8 | 0.016931 | 0.050453 | 0.00027579 |
| 11.7 | 0.077741 | 0.045575 | 0.00065698 |
| 12.6 | 0.0067548 | 0.043614 | 0.00073357 |
Il metodo di Eulero ha l’errore più alto in funzione del tempo rispetto al metodo di Heun e Runge-Kutta del 4° ordine, sottolineando che si tratta del metodo meno accurato.
Concentrazione di THC-OH
| Ti_E | Errore_E_OH | Errore_H_OH | Errore_R_OH |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0.9 | 0.0058216 | 0.0018273 | 0.00036714 |
| 1.8 | 0.004529 | 0.0020079 | 0.00016036 |
| 2.7 | 0.010972 | 0.0019049 | 3.8122e-06 |
| 3.6 | 0.0095019 | 0.0017098 | 1.5214e-05 |
| 4.5 | 0.015239 | 0.0017006 | 2.2901e-05 |
| 5.4 | 0.014177 | 0.0015856 | 0.00013712 |
| 6.3 | 0.018487 | 0.0014649 | 0.00018952 |
| 7.2 | 0.017221 | 0.0010488 | 0.00001209 |
| 8.1 | 0.020589 | 0.0014295 | 0.00001047 |
| 9 | 0.019287 | 0.001412 | 6.1841e-05 |
| 9.9 | 0.021832 | 0.0014102 | 1.1266e-05 |
| 10.8 | 0.020517 | 0.0013221 | 5.0263e-05 |
| 11.7 | 0.022478 | 0.0012364 | 8.994e-05 |
| 12.6 | 0.020997 | 0.0012288 | 5.431e-05 |
Concentrazione di THC-COOH
| Ti_E | Errore_E_COOH | Errore_H_COOH | Errore_R_COOH |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0.9 | 1.8152e-05 | 1.9769e-06 | 6.7845e-07 |
| 1.8 | 3.1442e-05 | 1.0238e-06 | 2.7633e-07 |
| 2.7 | 6.7496e-05 | 5.8475e-07 | 3.3784e-07 |
| 3.6 | 9.5878e-05 | 1.5591e-06 | 3.0262e-07 |
| 4.5 | 0.00014335 | 3.2611e-06 | 1.1048e-06 |
| 5.4 | 0.00018413 | 4.7394e-06 | 1.8242e-06 |
| 6.3 | 0.0002402 | 6.3873e-06 | 2.8564e-06 |
| 7.2 | 0.00028789 | 5.6981e-06 | 1.6888e-06 |
| 8.1 | 0.00034917 | 6.2996e-06 | 1.9406e-06 |
| 9 | 0.00040378 | 5.9361e-06 | 1.3472e-06 |
| 9.9 | 0.00046759 | 4.9102e-06 | 2.0271e-07 |
| 10.8 | 0.00052835 | 6.3194e-06 | 1.5963e-06 |
| 11.7 | 0.00059613 | 6.8907e-06 | 2.3369e-06 |
| 12.6 | 0.00065766 | 6.6839e-06 | 2.207e-06 |
Esercizi sulle differenze finite
I metodi alle differenze finite consistono nell’approssimare ciascuna derivata che compare nelle equazioni differenziali con una opportuna formula alle differenze finite. Consiste nello sviluppare la funzione generica y(x) in serie di Taylor in un intorno di un i-esimo punto e combinare linearmente varie espressioni relative a diversi sviluppi ottenuti considerando vari intorni del punto. Questo processo consente di trasformare un problema continuo in un problema discreto per facilitare l’analisi.
Per applicare questi metodi, è necessario introdurre una discretizzazione dell’intervallo [a, b] suddividendolo in N+1 sottoinsiemi uguali, definendo così una griglia di nodi equispaziati:
xi = a + ih
Con i = 0,1,...N+1 e h = (b-a)/(N+1) è il passo di discretizzazione.
Nel nostro caso abbiamo utilizzato il metodo delle differenze finite centrate per i nodi interni e delle differenze finite all’indietro e in avanti per le condizioni al bordo. Quindi, analizzando un problema descritto dalla seguente equazione differenziale:
y″(x) = p(x)y′(x) + q(x)y(x) − r(x)
verificato che:
- p(x), r(x) e q(x) ∈ C([a, b]);
- q(x) > 0;
possiamo affermare che la soluzione del problema lineare esiste ed è unica ed è quindi possibile approssimare le derivate nei nodi con uno sviluppo di serie di Taylor di ordine 2 per la derivata prima e di ordine 3 per la derivata seconda.
Nell’intorno successivo di Xi ho che:
y(xi+1) = y(xi + h) = y(xi) + hy′(xi) + (1/2!) h2y″(xi) + (1/3!) h3y(3)(η)i, ηi ∈ (xi, xi+1).
Mentre nell’intorno precedente ho che:
y(xi−1) = y(xi − h) = y(xi) − hy′(xi) + (1/2!) h2y″(xi) − (1/3!) h3y(3)(η)i, ηi ∈ (xi−1, xi).
-
Secondo esercizio sui metodi ONE-STEP
-
Esercizio Metodi One step
-
Tirocinio terzo anno - Relazione
-
Anatomia - terzo parziale