dummy-link

Mads

MADS: Model Analysis & Decision Support

Readme

MADS (Model Analysis & Decision Support)

logo

travis-ci appveyor coveralls.io codecov.io

MADS is an integrated open-source high-performance computational (HPC) framework in Julia. MADS can execute a wide range of data- and model-based analyses:

  • 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 tested to perform HPC simulations on a wide-range multi-processor clusters and parallel environments (Moab, Slurm, etc.). MADS utilizes adaptive rules and techniques which allows the analyses to be performed with minimum user input. The code provides a series of alternative algorithms to execute each type of data- and model-based analyses.

Documentation

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

See also mads.gitlab.io and madsjulia.github.io

Installation

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

docker run --interactive --tty montyvesselinov/madsjulia

Testing

import Mads; Mads.test()

Examples

To explore getting-started instructions, execute:

import Mads; Mads.help()

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 "git@github.com:"]
    insteadOf = https://github.com/
[url "git@gitlab.com:"]
    insteadOf = https://gitlab.com/
[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."git@gitlab.com:".insteadOf https://gitlab.com/
git config --global url."git@github.com:".insteadOf https://github.com/

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

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

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

export ftp_proxy=http://proxyout.lanl.gov:8080
export rsync_proxy=http://proxyout.lanl.gov:8080
export http_proxy=http://proxyout.lanl.gov:8080
export https_proxy=http://proxyout.lanl.gov:8080
export no_proxy=.lanl.gov

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

ENV["ftp_proxy"] =  "http://proxyout.lanl.gov:8080"
ENV["rsync_proxy"] = "http://proxyout.lanl.gov:8080"
ENV["http_proxy"] = "http://proxyout.lanl.gov:8080"
ENV["https_proxy"] = "http://proxyout.lanl.gov:8080"
ENV["no_proxy"] = ".lanl.gov"

Related Julia Packages

Publications, Presentations, Projects

First Commit

01/26/2016

Last Touched

2 days ago

Commits

1996 commits

Used By: