Open-Systems-Pharmacology / MoBi

MoBi® is a software tool for multiscale physiological modeling and simulation
Other
31 stars 10 forks source link

Hierarchy of parameter value application - when are the values from Individuals applied? #1565

Closed PavelBal closed 1 month ago

PavelBal commented 1 month ago

From my understanding, values from an Individual should overwrite the values defined in the spatial structure BBs, but this is not the case.

In the attached project, there is a module iv 0.05 mg/kg (2 min) which is a human simulation imported from PK-Sim. It comes with an individual DefaultFemale. This individual defines the parameter Organism|ArterialBlood|Volume:

image

This parameter is not present in the SS BB of the PK-Sim module, which is by design, because it is added from the individual.

In the extension module "HUMAN - Maternal Structur includinge fetal placenta", the parameter Organism|ArterialBlood|Volume is explicitly defined in the SS BB as a table parameter:

image

When creating the simulation using these two modules and the individual, the value from the Extension Module is applied. While this is probably what the user would expect, I am struggling to understand how and when exactly the values from the Individual BB are applied?

PavelBal commented 1 month ago

When trying to do the same for a rat simulation (iv 0.05 mg/kg (2 min)_rat has been created as a rat simulation in PK-Sim), the value from the Rat individual overwrites the table:

image

The difference is that in the rat individual, ArterialBlood volume is a constant parameter, but in the Human individual it is a distributed parameter. So constant parameters are applied over the values defined in any BB, while distributed parameters do not overwrite parameters defined in the BBs?

This should be unified. @msevestre @Yuri05 @rwmcintosh

msevestre commented 1 month ago

Where is my project? I can't fix if I can't reproduce

msevestre commented 1 month ago

ok so after much trying, I think it's because there is actually NO value associated with the distributed parameter

<IndividualParameter id="lKLAL3zNHUiDnaIJEg-xgg" name="Volume" distributionType="Normal" dimension="Volume" isDefault="1" displayUnit="l">
      <ContainerPath path="4" />
      <ValueOrigin source="Publication" description="ICRP, 2002. Basic Anatomical and Physiological Data for Use in Radiological Protection Reference Values. ICRP Publication 89. Ann. ICRP 32 (3-4). https://doi.org/10.1016/0146-6453(79)90123-4" />
      <Origin bb="q8_wJ40sWUy7KQWQcwnh2A" para="EGQftjk7C0qsPby4VL3g1Q" />
      <Info min="0" flag="234" seq="1" ref="0" bb="32" group="65" />
    </IndividualParameter>
    <IndividualParameter id="xhNSlSf2A0eR7W_ATwSx0Q" name="Percentile" value="0.501221079936601" isDefault="1" displayUnit="l">
      <ContainerPath path="5" />
      <Origin bb="q8_wJ40sWUy7KQWQcwnh2A" para="VhuhNm6e5kKVGEgZM68aHQ" />
      <Info min="0" flag="18" seq="1" ref="0" bb="32" group="65" />
    </IndividualParameter>
    <IndividualParameter id="f95K9yk0P0CNDUT47jUjPw" name="Mean" dimension="Volume" value="0.963884723" isDefault="1" displayUnit="l">
      <ContainerPath path="5" />
      <Origin bb="q8_wJ40sWUy7KQWQcwnh2A" para="RLcwl08H4UqLEJwA0bwbqQ" />
      <Info min="0" flag="34" seq="1" ref="0" bb="32" group="65" />
    </IndividualParameter>
    <IndividualParameter id="REd_Pqn_gEykadgIEXZaZQ" name="Deviation" dimension="Volume" value="0.048194236" isDefault="1" displayUnit="l">
      <ContainerPath path="5" />
      <Origin bb="q8_wJ40sWUy7KQWQcwnh2A" para="pmInkP5ciE2wekyUeqxvig" />
      <Info min="0" flag="18" seq="1" ref="0" bb="32" group="65" />
    </IndividualParameter>

The value is in the mean parameter. And even this is not sure based on the percentile

PavelBal commented 1 month ago

@msevestre this is fixed here https://github.com/Open-Systems-Pharmacology/OSPSuite.Core/commit/c8ee38f95b255cddce3e499793de714acbf342c6

right?

msevestre commented 1 month ago

Correct.