If you compile MIDAS code after tag v_3.7.2
on HPCR-U2, then you
must update your login profile to version 1.19.0
:
ln -svi /fs/ssm/eccc/mrd/ordenv/profile/1.19.0 ~/.profile_1.19.0
rm -v ~/.profile && ln -svi .profile_1.19.0 ~/.profile
This change is backward compatible for your suites but you absolutely
need to update your profile to compile any MIDAS code after version
v_3.7.2
.
To know if your code is after v_3.7.2
, you can execute:
git describe
Also, to run the system tests for versions that include the latest
update to rpn/utils
, you must update your login profile to
version 1.28.0
or later.
The documentation for officially supported branches is available:
main
branchv_3.9
branchv_3.7
branch
We strongly suggest anyone considering to contribute to the MIDAS project, to follow the workflow documented in the contributing guide.
To simply get a local copy of the code from an existing branch associated with an issue, we suggest the command:
. ssmuse-sh -d eccc/cmd/cmdi/utils/2.6
clone_projet --no-central -c ${ISSUE_NUMBER} [email protected]:atmospheric-data-assimilation/midas.git midas-${ISSUE_NUMBER}
or if one is interested in the latest version of the main
branch
clone_projet --no-central -c main [email protected]:atmospheric-data-assimilation/midas.git midas-main
. ssmuse-sh -d eccc/cmd/cmdi/utils/2.6
clone_projet --no-central -c v_3.9 [email protected]:atmospheric-data-assimilation/midas.git midas-3.9
If you created a new branch with the GitLab web UI, then the branch
has been created using the default branch which is main
. One must
reset it to the release branch. One can simply do:
. ssmuse-sh -d eccc/cmd/cmdi/utils/2.6
clone_projet --no-central -c v_3.9 [email protected]:atmospheric-data-assimilation/midas.git midas-${ISSUE_NUMBER}
cd midas-${ISSUE_NUMBER}
git checkout -b ${ISSUE_NUMBER}-complete-the-name-of-the-branch-as-on-GitLab
git push origin ${ISSUE_NUMBER}-complete-the-name-of-the-branch-as-on-GitLab --force-with-lease
. ssmuse-sh -d eccc/cmd/cmdi/utils/2.6
clone_projet --no-central -c v_3.7 [email protected]:atmospheric-data-assimilation/midas.git midas-3.7
If you created a new branch with the GitLab web UI, then the branch
has been created using the default branch which is main
. One must
reset it to the release branch. One can simply do:
. ssmuse-sh -d eccc/cmd/cmdi/utils/2.6
clone_projet --no-central -c v_3.7 [email protected]:atmospheric-data-assimilation/midas.git midas-${ISSUE_NUMBER}
cd midas-${ISSUE_NUMBER}
git checkout -b ${ISSUE_NUMBER}-complete-the-name-of-the-branch-as-on-GitLab
git push origin ${ISSUE_NUMBER}-complete-the-name-of-the-branch-as-on-GitLab --force-with-lease
src/midas_build
is now the official compilation tool to build MIDAS.
To proceed to compilation tasks, you should be in the src/
directory.
midas_build
compiles by default on both platforms.
To compile a single program on both platforms, do the following from the frontnode:
cd ${where_your_code_is}
cd src
./midas_build ${program_basename}.Abs
where program_basename
is the basename of one the files with extention .f90
in
the sub-directory src/programs
or splitobs
.
If you installed the auto-completion feature
you can browse all install targets by pressing <TAB>
following ./midas_build
.
By default the binary will be installed in
${HOME}/data_maestro/ords/midas-bld/midas_abs/
(this can be configured by environment variables).
To compile all programs (src/programs/*.f90
as well as
splitobs
),
simply do:
cd ${where_your_code_is}
cd src
./midas_build
If you are contributing a new program, changing external dependencies,
recompiling a lot or debugging the code,
you should take the time to read the detailed instructions found in
src/README.md
.
Several tools related to MIDAS are included in the codebase. Those tools have a code separated from the main code in MIDAS.
Those are the helper scripts which launch MIDAS programs.
Refer to the midas_scripts/README.md
for more details.
This program is used to split the observations into several files according to one of the following strategy:
- round-robin
- lat-lon tiles of a grid
It can also select the observations that lies in a domain defined by a RPN grid.
Refer to the splitobs/README.md
for more details.
This program monitors a file to react to its content.
See monitor/README.md
for more details.
This scripts finds the trial name extensions in an assimilation window.
See findTrials/README.md
for more details.
This standalone program dump 1D covariance values from the binary file Bmatrix.bin
.
See scripts/convenient_tools/dumpBmatrix/README.md
for more details.