Time after last dose

3 次查看(过去 30 天)
Hello,
Is there a way to keep track of time after last dose in a SimBiology model? I'm working on implementing the following model, and the model includes a time after dose (TAD) parameter: https://link.springer.com/article/10.1208/s12248-020-00455-y
Also, my model will eventually include several drugs, and thus several dose objects (one for each drug). Thus, I would like the time-after-last-dose tracking to be specific to a particular dose object and ignore the other dose objects (each dose object having a different target).
Thank you,
Abed

采纳的回答

Arthur Goldsipe
Arthur Goldsipe 2022-6-29
I haven't read the article, so I don't know how the TAD parameter is used. I'm assuming you need to know TAD during the simulation. If you only need it for some sort of post-simulation analysis, I have some ideas for other simpler options.
Your question reminds me of something I implemented in this insulin demo. Look at the first event in this model, and you should be able to do something similar to determine TAD. But I do want to say that this is a little tedious. If this is something that comes up often, I'd like to think of features we could add to make the work easier.
In my case, I also needed to set a parameter in response to a dose. I did that by adding a helper event and a helper species (that is the target of the dose). The basic idea is that the helper species is only there to trigger the event whenever a dose occurs. So the species concentration starts out as zero, and the event detects whenever the species concentration changes (due to a dose). The even then transfers the drug to the "real" target and updates the parameter. One annoying limitation today is that events aren't triggered at time=0, so you have to do a little extra work if you have a dose at time 0. I worked around this by getting the dose to trigger at some small time greater than 0 (effectively making the dose get applied at a time > 0). So to summarize, here's what your event might look like:
  • Trigger: time > timeSmall & Dose > 0*Dose
  • Event Function 1 (store TAD): paramTAD = time
  • Event Function 2 (apply dose): Target = Target + Dose
  • Event Function 3 (reset helper species): Dose = 0*Dose
  1 个评论
Abed Alnaif
Abed Alnaif 2022-6-29
Hi Arthur,
Thanks. I don't think that this is something that occurs frequently. This is the first time I've seen this.
I think your implementation would work for me, and I can take TAD to be equal to time-paramTAD
I think a nice feature would be if there was some reserved keyword for each dose object which keeps track of TAD, which can then be used in the model. But I'm not sure if it would be worth implementing this given that it doesn't occur often.

请先登录,再进行评论。

更多回答(0 个)

社区

更多回答在  SimBiology Community

类别

Help CenterFile Exchange 中查找有关 Scan Parameter Ranges 的更多信息

标签

产品


版本

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by