Skip to content
Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time
Oct 31, 2019
Mar 22, 2020
Oct 26, 2019
Mar 19, 2021
Oct 3, 2019
Mar 1, 2017
Apr 19, 2020
Mar 26, 2021
Apr 9, 2021
Apr 19, 2020
Mar 19, 2021
Feb 10, 2021
Apr 19, 2020
Jun 15, 2020
Dec 29, 2018
Nov 28, 2019
Jun 14, 2017
Jun 27, 2019
Dec 5, 2019
Jan 19, 2016
Oct 31, 2019
Mar 30, 2021
Jun 3, 2017
Oct 28, 2019
Jan 21, 2019

MADS (Model Analysis & Decision Support)


MADS is an integrated high-performance computational framework for data/model/decision analyses.

MADS can be applied to perform:

  • Sensitivity Analysis
  • Parameter Estimation
  • Model Inversion and Calibration
  • Uncertainty Quantification
  • Model Selection and Model Averaging
  • Model Reduction and Surrogate Modeling
  • Machine Learning (e.g., Blind Source Separation, Source Identification, Feature Extraction, Matrix / Tensor Factorization, etc.)
  • Decision Analysis and Support

MADS has been extensively tested and verified.

MADS can efficiently utilize available computational resources.

MADS utilizes adaptive rules and techniques which allow the analyses to be performed efficiently with minimum user input.

MADS provides a series of alternative algorithms to execute each type of data- and model-based analyses.


Detailed documentation including description of all MADS modules and functions is available at GitHub, ReadtheDocs and LANL sites.

See also and


After starting Julia, execute:

import Pkg; Pkg.add("Mads")

to access the latest released version. To utilize the latest updates (commits) use:

import Pkg; Pkg.add(Pkg.PackageSpec(name="Mads", rev="master"))


docker run --interactive --tty montyvesselinov/madsjulia


import Mads; Mads.test()


To explore getting-started instructions, execute:

import Mads;

There are various examples located in the examples directory of the Mads repository.

For example, execute

include(Mads.madsdir * "/../examples/contamination/contamination.jl")

to perform various example analyses related to groundwater contaminant transport, or execute

include(Mads.madsdir * "/../examples/bigdt/bigdt.jl")

to perform Bayesian Information Gap Decision Theory (BIG-DT) analysis.

Installation of MADS behind a firewall

Julia uses git for package management. Add in the .gitconfig file in your home directory to support git behind a firewall:

[url ""]
    insteadOf =
[url ""]
    insteadOf =
[url "https://"]
    insteadOf = git://
[url "http://"]
    insteadOf = git://

or execute:

git config --global url."https://".insteadOf git://
git config --global url."http://".insteadOf git://
git config --global url."".insteadOf
git config --global url."".insteadOf

Set proxies executing the following lines in the bash command-line environment:

export ftp_proxy=http://proxyout.<your_site>:8080
export rsync_proxy=http://proxyout.<your_site>:8080
export http_proxy=http://proxyout.<your_site>:8080
export https_proxy=http://proxyout.<your_site>:8080
export no_proxy=.<your_site>

For example, at LANL, you will need to execute the following lines in the bash command-line environment:

export ftp_proxy=
export rsync_proxy=
export http_proxy=
export https_proxy=

Proxies can be also set up directly in the Julia REPL as well:

ENV["ftp_proxy"] =  ""
ENV["rsync_proxy"] = ""
ENV["http_proxy"] = ""
ENV["https_proxy"] = ""
ENV["no_proxy"] = ""

Related Julia Packages

Publications, Presentations, Projects