skillfed

SALib

Tools for global sensitivity analysis. Contains Sobol', Morris, FAST, DGSM, PAWN, HDMR, Moment Independent and fractional factorial methods

salib v1.5.2 737.9K downloads/30d#5,187 on PyPI1,003
Permissive license MIT Active released

What it is and what it does

SALib is a Python library for global sensitivity analysis—a set of statistical methods to determine which inputs to a computational model have the largest effect on its outputs. It implements established algorithms including Sobol indices (for variance-based decomposition), Morris screening (for one-at-a-time parameter sweeps), FAST and eFAST (Fourier-based methods), DGSM (derivative-based measures), PAWN, HDMR, and fractional factorial designs. The library is designed for systems modelers, researchers, and engineers who need to understand parameter importance, identify influential factors, or reduce model complexity.

You provide a problem specification (parameter names, bounds, and output names), use one of SALib's sampling methods to generate parameter combinations, evaluate your model on those samples, then apply an analysis method to extract sensitivity indices with confidence intervals. SALib supports both a procedural API and a newer method-chaining interface via ProblemSpec. It depends on numpy, scipy, matplotlib, pandas, and multiprocess for numerical computation and visualization.

Use it for:

  • Identify which model parameters drive uncertainty in climate or environmental simulations.
  • Screen a large parameter space to find the most influential inputs before detailed calibration.
  • Quantify first-order and total-order effects of inputs on model outputs for publication or reporting.
  • Compare sensitivity across different model variants or scenarios using standardized indices.
  • Reduce computational cost by focusing model refinement on parameters with high sensitivity.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

SALib implements global sensitivity analysis methods (Sobol, Morris, FAST, DGSM, PAWN, HDMR, and others) to quantify how model inputs affect outputs in systems modeling and uncertainty analysis.

Yes. SALib is a mature, actively maintained library with no known vulnerabilities, low install friction, and permissive licensing. It is the standard Python tool for global sensitivity analysis and is suitable for academic research, engineering, and systems modeling work. Install it if you need to understand parameter importance or uncertainty propagation in a computational model.

Install

salib on PyPI

pip

pip install salib

uv

uv add salib

poetry

poetry add salib

Installing SALib

Before you install

Low friction: pure Python wheel, five standard scientific dependencies (numpy, scipy, matplotlib, pandas, multiprocess), active maintenance with recent commits and stable production status.

License in practice

MIT license is permissive; you can use, modify, and distribute SALib with minimal restrictions in commercial or private projects.

Quickstart

pip install SALib

from SALib.sample import saltelli
from SALib.analyze import sobol
from SALib.test_functions import Ishigami
import numpy as np

problem = {'num_vars': 3, 'names': ['x1', 'x2', 'x3'], 'bounds': [[-np.pi, np.pi]]*3}
param_values = saltelli.sample(problem, 1024)
Y = Ishigami.evaluate(param_values)
Si = sobol.analyze(problem, Y, print_to_console=True)

Requires Python 3.9 or later; numpy, scipy, matplotlib, and pandas must be installed.

Verify before relying

  • Whether the package handles very large parameter spaces or model evaluations efficiently.
  • Performance characteristics when running on distributed systems via multiprocess.
  • Availability and quality of plotting output from the built-in visualization features.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 5 — matplotlib, multiprocess, numpy, pandas, scipy
Maintenance actively maintained — 306 days since the last release
Last repo commit
First released
Downloads 737,913/month — #5,187 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: salib-1.5.2-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: End Users/DesktopIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9

Tags

sensitivity analysis libraryglobal sensitivity analysis methodssobol morris fast analysismodel input output effectsparameter uncertainty quantificationsystems modeling analysismodel parameter importance
sensitivity-analysisuncertainty-quantificationsystems-modeling

More Mathematics packages