Help with Monte Carlo
Show older comments
Hi all,
I have the following equation:
dCs(t)=(I*Ea/Vd)-(Ke*Cs(t)); % Single compartment Tox model
I would like to run a monte carlo for the following variables:
% Parameters that will be subject to monte carlo
%Vd - Volume of distribution; Normally distributed between 7 and 77
%Ke - Elimination rate; Uniform distrubution between 8 and 88
%I - Intake rate; Log-Normal distribution between 9 and 99
I would like to run 1000 Monte Carlo iterations.
How would I code this? All the examples I've found are a bit complicated for me to understand.
Thanks!
2 Comments
Walter Roberson
on 19 Jan 2021
%Vd - Volume of distribution; Normally distributed between 7 and 77
Not possible. Normal distribution is infinite on both sides. Perhaps a beta distribution?
Wesser
on 19 Jan 2021
Answers (1)
Image Analyst
on 19 Jan 2021
For your normal distribution rather than just say it's between 7 and 77, you should give its mean and standard deviation. Then use randn(). Same for the lognormal. Like
numExperiments = 1000;
Vd = 45 + 10 * rand(1, numExperiments);
Ke = 8 + 80 * rand(1, numExperiments);
pd = makedist('Lognormal', 'mu', log(45), 'sigma', 10)
I = random(pd, 1, numExperiments);
dCs = (I * Ea / Vd) - (Ke * Cs);
or something sort of like that. I don't know what t, Cs, and Ea are.
Categories
Find more on Gaussian Process Regression in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!