Open-Systems-Pharmacology / MoBi

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

Spatial Structure: Default value for IsPresent and Negative values allowed #895

Open msevestre opened 1 year ago

msevestre commented 1 year ago

Each SS defines default values of "isPresent" and "Negative values allowed" for certain types of molecules (floating compounds, enzymes, transporters) (selctable via a check-box).

image

@PavelBal Based on this description, it seems to be a DEFAULT VALUE FOR THE SPATIAL STRUCTURE and not per container. Is this correct? I had the feeling you were mentioning this was per container last time

PavelBal commented 1 year ago

Oh this must be a confusion, this is actually PER CONTAINER.

msevestre commented 1 year ago

Ok so what do we need to save now for each container? do we still need one entry per type (Enzyme, Transproter etc.) Or do we need only two (Floating and Non Floating?). How is this then going to be used? Can you explain again?

msevestre commented 1 year ago

Feedback please

StephanSchaller commented 1 year ago

Is there any similar logic in PK-Sim of how it populates the containers with molecules in the default PBPK model structure? This should be similar. I guess we still need al 3 types as enzymes and transporters might need to be handled differently in terms of localization.

PavelBal commented 1 year ago

The purpose of this feature is to make the extension of the model with new molecules or compartments easier by defining the default values for isPresent, that would apply in most of the cases. In current implementation, all (new) molecules are present in all (new) comparments except for some exceptions (that are not clearly visible to the user), and the user has to adjust this property manually.

With the new implementation of the expression in OSPS V10, life became much easier as all proteins are present in all containers. In the small molecules model, all molecules are present everywhere except for:

For the small molecules model, a simple distinction between "Floating" and "non-floating" would be sufficient.


In the large molecules model, things are more complicated.

SUMMARY: this is pretty ugly for the two-pores model and the extension is a pain. Maybe we could re-implement the model with parameters instead of molecules and utilize the sum formulas? @StephanSchaller FYI


For the feature addressed in this issue - I think implementing the default isPresent for floating and non-floating (or better - stationary and non-stationary) still makes sense. For the molecules and containers involved in the two-pores model, I do not have a solution right now.

msevestre commented 1 year ago

Let's discuss about this today. It doesn't sound to me like we are 💯 convinced that this is high prio. I may read this incorrectly but better be sure before I start working on this feature

PavelBal commented 1 year ago

Meeting 22.02.2023: