Skip to content

uniliufeng/ComDA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction of ComDA Version 1.0

Name: Common Software for Nonlinear and Non-Gaussian Land Data Assimilation

Developer: Feng Liu, Liangxu Wang, Xin Li and Chunlin Huang

Email: liufeng@lzb.ac.cn (Feng Liu), wangliangxu@shnu.edu.cn (Liangxu Wang), xinli@itpcas.ac.cn (Xin Li), huangcl@lzb.ac.cn (Chunlin Huang). First available: May 2019

Required hardware: Any computer with a multithread CPU that runs the Linux (Ubuntu with version 10.04 or higher is better) operating system.

Required software: main program language is standard C++ (ANSI 98).

Components libraries include IT++ (http://itpp.sourceforge.net/), LAPACK (http://www.netlib.org/lapack/) and Armadillo (http://arma.sourceforge.net/), OpenMP (http://www.openmp.org) and MPI (http://www.mpich.org/).

Cost: ComDA is freely available and can be downloaded from the GitHub repository (https://github.com/uniliufeng/ComDA).

Reference: Liu F, Wang L X, Li X, Huang C L. 2020. ComDA: A common software for nonlinear and Non-Gaussian Land Data Assimilation. Environmental Modelling & Software, 10.1016/j.envsoft.2020.104638. (https://doi.org/10.1016/j.envsoft.2020.104638)

Introducation: ComDA is to achieve a fast, easy-to-use, and multidisciplinary application-oriented assimilation platform. ComDA integrates many algorithms (including diverse Kalman and particle filters) and multiple models and observation operators (e.g., CoLM, SiB2 and AIEM, Q/h), and provides the general interfaces for accepting more operators. Using mixed-language programming and parallel computing technologies (OpenMP, MPI and CUDA), ComDA can assimilate various land surface variables and remote sensing observations. ComDA can be applied in multidisciplinary data assimilation studies.

Direction:

Step 1. Ubuntu with version 10.04 or higher

Step 2. Install gfortran sudo apt-get install gfortran

Step 3. Install BLAS (http://www.netlib.org/blas/) sudo apt-get install libblas-dev

Step 4. Install LAPACK (http://www.netlib.org/lapack/) sudo apt-get install liblapack-dev

Step 4. Install itpp (http://itpp.sourceforge.net/stable/index.html) ./configure --with-blas=/usr/local/lib/libblas.a --with-lapack=/usr/local/lib/liblapack.a make
sudo make install make check

Step 5. Install boost (http://sourceforge.net/projects/boost/files/latest/download?source=dlp) apt-get install mpi-default-dev #install mpi lib at first apt-get install libicu-dev #install UNICODE apt-get install libbz2-dev Unzip the source file and execute: ./bootstrap.sh execute: ./b2 execute: sudo ./b2 install

Step 6. Complie the source code of ComDA (running the following commond on the terminal) Examples :

	1. Regular test (EnKF+Lorenz)
	g++ -I../include enkf_lorenz_arma.cpp ../src/model/lorenz.cpp ../src/model/model.cpp ../src/util/time.cpp ../src/da/ensemblekalmanfilter.cpp ../src/da/filter.cpp -I../external/dSFMT  -DDSFMT_MEXP=19937 ../external/dSFMT/dSFMT.c ../src/util/exception.cpp ../src/util/random.cpp -larmadillo -o test

	2. Parallel computing test (mpich is necessary, enkf & colm & mpi)
	mpic++ -I./ -I../include colm_da_mpi.cpp ../src/model/commonlandmodel.cpp ../src/util/exception.cpp ../src/util/time.cpp ../src/util/landgrid.cpp ../src/model/model.cpp cldas_mpi.cpp -o colm/colmdampi -I../external/dSFMT  -DDSFMT_MEXP=19937 ../external/dSFMT/dSFMT.c ../src/obs/radiancetransfermodel.cpp ../src/obs/qhmodel.cpp ../src/util/random.cpp ../src/da/enkf.cpp ../src/util/permittivity.cpp -larmadillo -g

Step 7. Running the executable file and display the results (running the following commond on the terminal) Examples :

	1. Regular test (EnKF+Lorenz)
	./test

	2. Parallel computing test (mpich is necessary, enkf & colm & mpi)
	mpiexec -n 4 -f /home/mpi_share/mpi_config_file ./colm/colmdampi

About

a software package of ComDA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages