How to find the sensitivity of the model output if it is a variable for repeated assignment?

4 views (last 30 days)
Hi,
I want to find the sensitivity of model output which is a tissue mass for models parameters. I received an red flag that I can't do that for repeaded variable.
How can I handle that?
Thank you.

Answers (2)

Catalytic
Catalytic on 7 Oct 2024
Do what the error message says.

Arthur Goldsipe
Arthur Goldsipe on 7 Oct 2024
The solution I generally recommend is to calculate the sensitivities yourself by manualy differentiating the repeated assignment rule and calculating the sensitivity yourself from the local sensitivities that SimBiology can calculate.
For example, if you have a repeated assignment X = A + B, then the sensitivity of X is just the sensitivity of A plus the sensitivity of B. Of course, if A or B are also determined by repeated assignments, you will need to replace those as well. But hopefull this gets the general idea across.
If this suggestion isn't practical, other options include switching to global sensitivity analysis (which doesn't have this restriction on repeated assignments) or implementing your own approximation of local sensitivity analysis (perform multiple simulations and use finite differencing to calculate approximate sensitivities).
  3 Comments
Arthur Goldsipe
Arthur Goldsipe on 8 Oct 2024
I don't see any obvious problem with those steps. Can you copy and paste teh complete error message? Also, what version of MATLAB are you using?
Alternatively, could you share your model directly with MathWorks rather that post it here publicly? If so, please contact me via my profile, and I will give you an email address you can send the files to.
Day
Day on 8 Oct 2024
This is the complete error message: 'Unable to creat SimFunction'. My Simbiology version is 2024a. I can not share my model publickly. I sent you a message.

Sign in to comment.

Categories

Find more on Perform Sensitivity Analysis in Help Center and File Exchange

Products


Release

R2024a

Community Treasure Hunt

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

Start Hunting!