Block PK

 


Au modèle cinétique choisi dans le Block SUBROUTINE, correspond un certain nombre de paramètre cinétique qui doivent être listé dans ce Block.

paramètres PK classiques, variabilité inter-individuelle et inter-occasion,

coding alternatif, paramètre additionne (S), opérateurs logiques,

paramètres contraints (entre 0 et 1) et option EXIT.


Des paramètres pharmacocinétiques classiques:

Au minimum chaque paramètre cinétique est exprimé comme suit (modèle à 1 compartiment, absorption de 1er ordre):

CL = THETA(1)
V = THETA(2)
KA = THETA(3)

Theta(1), theta(2), theta(3) sont des variables dont les valeurs initiales (données dans le Block Theta) seront utilisés par l'algorythme pour trouver les valeurs estimées de CL, V et KA.

Des covariables peuvent être utilisées pour essayer d'expliquer la variabilité inter-individuelle des paramètres cinétiques.

Ex : Clairance = f(poids) s'écrit pour une fonction linéaire

CL = THETA(1) + THETA(2) * AGE

Rq : les noms des covariables utilisées doivent avoir au maximum 4 caractères!


Variabilité inter-individuelle:

A chaque paramètre une variabilité inter-individuelle peut être estimées. Cette variabilité peut prendre le forme de plusieurs modèles d'erreur.

1. Additive

2. Proportionnelle

3. Mixte

 

Dans le cas d'un modèle d'erreur additif portant sur les 3 paramètres, l'exemple devient:

CL = THETA(1) + ETA(1)
V = THETA(2) + ETA(2)
KA = THETA(3) + ETA(3)

Dans le cas d'un modèle d'erreur proportionnel portant sur les mêmes 3 paramètres, l'exemple devient:

CL = THETA(1) * EXP(ETA(1))
V = THETA(2) * EXP(ETA(2))
KA = THETA(3) * EXP(ETA(3))

Si des covariables sont utilisées, il peut être plus lisible de découper en 2 lignes:

TVCL = THETA(1) + THETA(2) * AGE
CL = TVCL * EXP(ETA(1))

...


Variabilité inter-occasion:

A chaque paramètre cinétique, il est possible d'estimer une variabilité inter-occasion (IOV).

Imaginons une étude où les patients se présentent à 2 reprises. Une colonne OCC prenant la valeur 0 ou 1 permet dans la base de données de discerner les 2 périodes.

OCC2 = 1 - OCC
CL = THETA(1) * EXP(ETA(1) + ETA(2) * OCC + ETA(3)*OCC2)

ETA(1) est la variabilité inter-individuelle à quoi se rajoute la variabilité inter-occasion ETA(2) ou ETA(3) selon la période.

Dans le Block Omega, il faut entre les valeurs initiales de ces 3 ETAs, en sachant que ETA(2) et ETA(3) ont une même variabilité (ex. 30% de CV) mais pas forcement la même valeur ce qui est précisé par la commande 'SAME'.

$OMEGA 1.2
$OMEGA BLOCK(1) 0.5
$OMEGA BLOCK(1) SAME

Dans les résultats, ETA(2) et ETA(3) seront identiques (seul ETA(2) sera donné) et correspondent à l'IOV. Par contre, les IPRED seront différents.


Coding alternatif:

Avec ADVAN1 et TRANS1, on peut coder

CL = THETA(1)
K = THETA(2)
V = CL/K
S1 = V

Sinon avec TRANS2:

CL = THETA(1)
V = THETA(2)
K=CL/V
S1 = V


Des paramètres additionnels:

Paramètres de mise à l'échelle (Scaling parameter)

Les quantités prédites dans les compartiments sont divisées par ces paramètres pour obtenir des concentrations.

Ils ne sont nécessaires que pour les compartiments où des concentrations sont directement observées (+++).

Ainsi, avec ADVAN3, le paramètre S2 du compartiment périphérique ne nécessite pas d'être analysé.

Chaque paramètre d'échelle qui n'est pas modélisé, est assumé être égal à 1 (les valeurs prédites sont des quantités).

Mise à l'échelle par une constante connue:

ex. Dose en mg et concentration ng/ml

La quantité (mg) sera divisée par S pour obtenir les concentrations (ng/ml = µg/L = mg/1000 L), d'où S s'exprime en kLitres. Pour que V soit exprimé en L et non en kL il faut diviser V par 1000.

soit S = V / 1000

ex. Dose en mg et concentration mg/L

S = V

Mise à l'échelle par un paramètre:

Si les données proviennent de 2 essais différents, avec un biais systématique, il peut être nécessaire de le modéliser

S = V si essai 1,

S = hV si essai 2.

h peut être estimé.

D1: paramètre permettant d'estimer la durée d'absorption d'une administration devant un profil d'absorption d'ordre 0.

Voir également un exemple de base de données correspondante.

Exemple:

$PK
CL =THETA(1) * EXP(ETA(1))
V =THETA(2) * EXP(ETA(2))
D1 =THETA(3) * EXP(ETA(3))

Peut-être utilisé en alternatif à un modèle d'absorption de premier ordre.

.../...


IF, THEN, ENDIF et opérateurs logiques:

AND et
OR or
NE non égal à
EQ égal à
LE inférieur ou égal (lower or equal than)
LT inférieur (lower than)
GE supérieur ou égal à (greater or equal than)
GT supérieur (greater than)

Ex :

IF (CREA.GT.30) THEN TVCL=THETA(1)
ELSE TVCL=THETA(2)
ENDIF


Option EXIT

Cette option oblige l'algorythme à abandonner une solution qui conduit à des valeurs spécifiées:
Exemple
IF (V1.GT.50) EXIT 1 100
IF (CL.GT.2) EXIT 2 200
Si l'algorythme passe par une valeur de V1 supérieure à 50, le message n°1 est envoyé, il s'agit du code 100
Le message suivant apparaît:
"PK SUBROUTINE: USER ERROR CODE = 100"
Cela permet d'identifier une erreur ou une difficulté de convergence.


Paramètres contraints

Dans certaines situations nous avons besoin de contraindre un paramètre à être compris dans un intervalle de valeur.
Exemple:
un Emax doit être compris entre 0 et 100%

Une implémentation permet cette contrainte en prenant en compte la variabilité interindividuelle

si
LOGIT = THETA(1) + THETA(2)*WT + ETA(1)
ou si
LOGIT = THETA(1) + ETA(1)
IF (LOGIT.GT.100) LOGIT = 100.00
EMAX = EXP(LOGIT) / (1 + EXP(LOGIT))

Avec ce code, EMAX sera toujours entre 0 et 1 quelque soit la valeur d'ETA
Il n'est pas nécessaire de donner des limites à THETA

En revanche, il peut être utile de transformer THETA pour pouvoir l'interpréter:

THETAP(1) = EXP(THETA(1)) / (1 + EXP(THETA(1)))
ou ce qui est équivalent
THETAP(1) = 1 / (1 + EXP(-THETA(1)))