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.
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
import Pkg; Pkg.add("Mads")
import Mads; Mads.test()
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.
Julia uses git for package management.
Add in the .gitconfig
file in your home directory to support git behind a firewall:
[url "https://"]
insteadOf = git://
or execute:
git config --global url."https://".insteadOf git://
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=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