Pseudorandom number generation for engineering estimates
A tool for random number generation on a distribution, such as a triangular distribution or PERT distribution, is very convenient for making estimates for physical values in the real world. Scientists and engineers often make estimates or assumptions, but they are also able to bracket the estimate based on experience or physics. For example, in estimating the mass of a small object, a normal distribution centered at my best guess could result in negative mass, which is known to be impossible. A triangular distribution allows quick and simple characterization of values as "probably M, but definitely not less than A or more than B."
The formulations here have some features that make it easy to integrate this capturing of uncertainty into scripts.
Example: Based purely on guesstimates that include a best guess and intuitive upper/lower limits, how much do a dime, nickel, and quarter weigh together?
% First, create a function based on randt to conveniently define and generate "uncertain variables."
uvar = @(x) randt(x,[1e5,1]);
dime = uvar([1 1.5 3.5]); %Pretty light, but not less than a gram..."
nickel = uvar([3 5 6]);
quarter = uvar([5 8 10]);
total = dime + nickel + quarter;
histogram(total,'Normalization','pdf');
Zitieren als
Sky Sartorius (2024). Pseudorandom number generation for engineering estimates (https://github.com/sky-s/randx), GitHub. Abgerufen.
Kompatibilität der MATLAB-Version
Plattform-Kompatibilität
Windows macOS LinuxKategorien
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
1.1 | Added PERT distribution. Moved to GitHub repo. |
|
|
1.0.0.0 |