ANALYSIS TOOL BOX

13 functions

Simulations

Monte Carlo simulations and probabilistic modeling.

Quantify uncertainty with Monte Carlo simulations. Fit distributions to expert judgment, model correlated variables, and generate thousands of scenarios from a few inputs.

Highlight functions

CreateMetalogDistribution

Fits a Metalog distribution — a highly flexible parametric family that can match almost any empirical shape using only a few quantile estimates. The analyst's alternative to assuming normality.

from analysistoolbox.simulations import CreateMetalogDistribution

dist = CreateMetalogDistribution(
    quantile_probabilities=[0.10, 0.50, 0.90],
    quantile_values=[50, 100, 200],
    variable_name="Project Cost ($K)"
)

SimulateNormallyDistributedOutcome

Standard Monte Carlo sampling for normally distributed variables with visualization.

from analysistoolbox.simulations import SimulateNormallyDistributedOutcome

results = SimulateNormallyDistributedOutcome(
    mean=100,
    standard_deviation=15,
    number_of_simulations=10_000
)

CreateSIPDataframe

Creates a Structured Inputs and Probabilities (SIP) DataFrame — the starting point for multi-variable Monte Carlo models. Each row is one simulation run.

CreateCorrelatedSIPs

Generate correlated random variables to preserve real-world dependencies in Monte Carlo models (e.g., cost and schedule tend to move together).

SimulateCountOutcome

Poisson-distributed count simulation — models rare event frequencies.

Use cases

  • Project cost and schedule risk analysis
  • Epidemiological simulation (infection counts, outbreak probabilities)
  • Financial risk: portfolio return distributions
  • Intelligence analysis: uncertainty quantification in assessments