musica 0.7.3__tar.gz → 0.8.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of musica might be problematic. Click here for more details.
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/docker.yml +4 -2
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/mac.yml +6 -3
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/pep8.yml +1 -1
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/pip.yml +1 -1
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/ubuntu.yml +16 -6
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/windows.yml +4 -4
- {musica-0.7.3 → musica-0.8.1}/CITATION.cff +1 -1
- {musica-0.7.3 → musica-0.8.1}/CMakeLists.txt +1 -1
- {musica-0.7.3 → musica-0.8.1}/PKG-INFO +1 -1
- {musica-0.7.3 → musica-0.8.1}/cmake/dependencies.cmake +13 -2
- {musica-0.7.3 → musica-0.8.1}/cmake/test_util.cmake +1 -1
- musica-0.8.1/configs/analytical/reactions.json +71 -0
- musica-0.8.1/configs/analytical/species.json +28 -0
- musica-0.8.1/configs/chapman/config.json +6 -0
- {musica-0.7.3 → musica-0.8.1}/configs/chapman/reactions.json +3 -3
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile +4 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.docs +8 -2
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.fortran-gcc +2 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.fortran-gcc.integration +2 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.fortran-intel +3 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.fortran-nvhpc +9 -7
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.memcheck +3 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.mpi +3 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.mpi_openmp +3 -1
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.openmp +3 -1
- musica-0.8.1/docker/Dockerfile.pip +38 -0
- {musica-0.7.3 → musica-0.8.1}/docker/Dockerfile.python +4 -0
- musica-0.8.1/docs/source/tutorial/chapter0.rst +86 -0
- musica-0.8.1/docs/source/tutorial/chapter1.rst +75 -0
- musica-0.8.1/docs/source/tutorial/chapter2.rst +86 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/micm.F90 +95 -106
- {musica-0.7.3 → musica-0.8.1}/fortran/test/fetch_content_integration/test_get_micm_version.F90 +4 -0
- musica-0.8.1/fortran/test/fetch_content_integration/test_micm_api.F90 +356 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/fetch_content_integration/test_micm_box_model.F90 +15 -21
- {musica-0.7.3 → musica-0.8.1}/fortran/test/fetch_content_integration/test_tuvx_api.F90 +50 -15
- {musica-0.7.3 → musica-0.8.1}/fortran/test/tutorial/CMakeLists.txt +3 -7
- musica-0.7.3/fortran/test/tutorial/demo.f90 → musica-0.8.1/fortran/test/tutorial/demo.F90 +4 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/unit/CMakeLists.txt +2 -3
- musica-0.8.1/fortran/test/unit/tuvx.F90 +267 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/unit/util.F90 +120 -6
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/grid.F90 +28 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/tuvx.F90 +63 -10
- musica-0.8.1/fortran/util.F90 +820 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/micm.hpp +91 -83
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/grid.hpp +12 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/grid_map.hpp +2 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/profile_map.hpp +2 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/radiator_map.hpp +2 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/tuvx.hpp +42 -3
- {musica-0.7.3 → musica-0.8.1}/include/musica/util.hpp +86 -3
- {musica-0.7.3 → musica-0.8.1}/pyproject.toml +1 -0
- {musica-0.7.3 → musica-0.8.1}/python/CMakeLists.txt +17 -5
- musica-0.8.1/python/test/test_analytical.py +258 -0
- {musica-0.7.3 → musica-0.8.1}/python/test/test_chapman.py +25 -17
- {musica-0.7.3 → musica-0.8.1}/python/wrapper.cpp +72 -18
- {musica-0.7.3 → musica-0.8.1}/src/CMakeLists.txt +5 -0
- {musica-0.7.3 → musica-0.8.1}/src/micm/micm.cpp +189 -61
- {musica-0.7.3 → musica-0.8.1}/src/packaging/CMakeLists.txt +1 -2
- {musica-0.7.3 → musica-0.8.1}/src/test/CMakeLists.txt +3 -1
- musica-0.8.1/src/test/data/tuvx/fixed/O2_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/tuvx/fixed/O2_parameters.txt +44 -0
- musica-0.8.1/src/test/data/tuvx/fixed/bar_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/tuvx/fixed/config.json +149 -0
- musica-0.8.1/src/test/data/tuvx/fixed/foo_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/tuvx/fixed/stand_alone_tuvx_config.json +175 -0
- musica-0.8.1/src/test/data/tuvx/from_host/O2_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/tuvx/from_host/O2_parameters.txt +44 -0
- musica-0.8.1/src/test/data/tuvx/from_host/bar_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/tuvx/from_host/config.json +127 -0
- musica-0.8.1/src/test/data/tuvx/from_host/foo_cross_section.nc +0 -0
- musica-0.8.1/src/test/data/util_index_mapping_from_file.json +11 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/CMakeLists.txt +1 -0
- musica-0.8.1/src/test/unit/micm/micm_c_api.cpp +505 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/tuvx/CMakeLists.txt +1 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/tuvx/tuvx_c_api.cpp +73 -3
- musica-0.8.1/src/test/unit/tuvx/tuvx_run_from_config.cpp +278 -0
- musica-0.8.1/src/test/unit/util.cpp +173 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/grid.cpp +17 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface.F90 +58 -8
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_grid.F90 +23 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_profile.F90 +2 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/tuvx.cpp +52 -6
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/tuvx_util.F90 +1 -21
- musica-0.8.1/src/util.cpp +241 -0
- musica-0.8.1/valgrind.supp +15 -0
- musica-0.7.3/.gitmodules +0 -10
- musica-0.7.3/configs/analytical/config.json +0 -1
- musica-0.7.3/configs/analytical/reactions.json +0 -22
- musica-0.7.3/configs/analytical/species.json +0 -14
- musica-0.7.3/docs/source/tutorial/chapter0.rst +0 -40
- musica-0.7.3/docs/source/tutorial/chapter1.rst +0 -43
- musica-0.7.3/docs/source/tutorial/chapter2.rst +0 -65
- musica-0.7.3/fortran/test/fetch_content_integration/test_micm_api.F90 +0 -128
- musica-0.7.3/fortran/test/unit/tuvx.F90 +0 -46
- musica-0.7.3/fortran/util.F90 +0 -403
- musica-0.7.3/python/test/CMakeLists.txt +0 -9
- musica-0.7.3/python/test/test_analytical.py +0 -86
- musica-0.7.3/src/test/unit/micm/micm_c_api.cpp +0 -335
- musica-0.7.3/src/util.cpp +0 -106
- musica-0.7.3/valgrind.supp +0 -23
- {musica-0.7.3 → musica-0.8.1}/.clang-format +0 -0
- {musica-0.7.3 → musica-0.8.1}/.clang-tidy +0 -0
- {musica-0.7.3 → musica-0.8.1}/.dockerignore +0 -0
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/clang_format.yml +0 -0
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/clang_tidy.yml +0 -0
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/fetch_content_integration.yml +0 -0
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/gh_pages.yml +0 -0
- {musica-0.7.3 → musica-0.8.1}/.github/workflows/release.yml +0 -0
- {musica-0.7.3 → musica-0.8.1}/.gitignore +0 -0
- {musica-0.7.3 → musica-0.8.1}/LICENSE +0 -0
- {musica-0.7.3 → musica-0.8.1}/README.md +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/FindSphinx.cmake +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/SetDefaults.cmake +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/cmake_uninstall.cmake.in +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/musica.settings.in +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/musicaConfig.cmake.in +0 -0
- {musica-0.7.3 → musica-0.8.1}/cmake/summary.cmake +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/TS1/config.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/TS1/initial_conditions.csv +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/TS1/reactions.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/TS1/species.json +0 -0
- {musica-0.7.3/configs/chapman → musica-0.8.1/configs/analytical}/config.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/carbon_bond_5/config.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/carbon_bond_5/initial_conditions.csv +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/carbon_bond_5/reactions.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/carbon_bond_5/species.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/chapman/initial_conditions.csv +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/chapman/species.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/robertson/config.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/robertson/initial_conditions.csv +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/robertson/reactions.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/configs/robertson/species.json +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/Makefile +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/Software Development Plan.pdf +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/make.bat +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/requirements.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/custom.css +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/favicon/favicon.ico +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/index_api.svg +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/index_contribute.svg +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/index_getting_started.svg +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/_static/index_user_guide.svg +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/api/index.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/conf.py +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/contributing/index.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/getting_started/getting_started.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/getting_started/installation.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/getting_started/overview.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/index.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/references.bib +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/tutorial/tutorial.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/user_guide/fortran_c.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/user_guide/model_interface.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/docs/source/user_guide/user_guide.rst +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/packaging/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/fetch_content_integration/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/unit/tuvx_mpi.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/test/unit/tuvx_openmp.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/grid_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/profile.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/profile_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/radiator.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/fortran/tuvx/radiator_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/component_versions.hpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/profile.hpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/tuvx/radiator.hpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/include/musica/version.hpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/python/test/tuvx.py +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/component_versions.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/micm/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/packaging/modulefile.lua.in +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/component_versions.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/micm/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/test/unit/micm/micm.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/CMakeLists.txt +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/grid_map.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_grid_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_profile_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_radiator.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/interface_radiator_map.F90 +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/profile.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/profile_map.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/radiator.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/tuvx/radiator_map.cpp +0 -0
- {musica-0.7.3 → musica-0.8.1}/src/version.cpp.in +0 -0
|
@@ -27,6 +27,8 @@ jobs:
|
|
|
27
27
|
- Dockerfile.mpi
|
|
28
28
|
- Dockerfile.mpi_openmp
|
|
29
29
|
- Dockerfile.python
|
|
30
|
+
- Dockerfile.pip
|
|
31
|
+
build_type: [Release, Debug]
|
|
30
32
|
steps:
|
|
31
33
|
- name: Checkout code
|
|
32
34
|
uses: actions/checkout@v4
|
|
@@ -37,10 +39,10 @@ jobs:
|
|
|
37
39
|
run: rm -rf /opt/hostedtoolcache
|
|
38
40
|
|
|
39
41
|
- name: Build Docker image
|
|
40
|
-
run: docker build -t musica -f docker/${{ matrix.dockerfile }} .
|
|
42
|
+
run: docker build -t musica -f docker/${{ matrix.dockerfile }} . --build-arg MUSICA_GIT_TAG=${{ github.sha }} --build-arg BUILD_TYPE=${{ matrix.build_type }}
|
|
41
43
|
|
|
42
44
|
- name: Run tests in container
|
|
43
|
-
if: matrix.dockerfile != 'Dockerfile.coverage'
|
|
45
|
+
if: matrix.dockerfile != 'Dockerfile.coverage' && matrix.dockerfile != 'Dockerfile.pip'
|
|
44
46
|
run: docker run --name test-container -t musica bash -c 'make test ARGS="--rerun-failed --output-on-failure -j8"'
|
|
45
47
|
|
|
46
48
|
- name: Run coverage tests in container
|
|
@@ -18,10 +18,11 @@ jobs:
|
|
|
18
18
|
strategy:
|
|
19
19
|
matrix:
|
|
20
20
|
compiler:
|
|
21
|
-
- { cpp: g++-11, c: gcc-11, fc: gfortran-11}
|
|
22
21
|
- { cpp: g++-12, c: gcc-12, fc: gfortran-12}
|
|
23
22
|
- { cpp: g++-13, c: gcc-13, fc: gfortran-13}
|
|
23
|
+
- { cpp: g++-14, c: gcc-14, fc: gfortran-14}
|
|
24
24
|
- { cpp: clang++, c: clang, fc: gfortran-12}
|
|
25
|
+
- { cpp: g++-14, c: gcc-14, fc: gfortran-14}
|
|
25
26
|
build_type: [Release]
|
|
26
27
|
env:
|
|
27
28
|
CC: ${{ matrix.compiler.c }}
|
|
@@ -44,6 +45,7 @@ jobs:
|
|
|
44
45
|
cmake -S . -B build \
|
|
45
46
|
-D CMAKE_CXX_FLAGS=-Wl,-ld_classic \
|
|
46
47
|
-D CMAKE_BUILD_TYPE=${{ matrix.build_type }} \
|
|
48
|
+
-D MUSICA_GIT_TAG=${{ github.sha }} \
|
|
47
49
|
-D MUSICA_ENABLE_PYTHON_LIBRARY=ON \
|
|
48
50
|
-D Python3_EXECUTABLE=$PYTHON_PATH
|
|
49
51
|
|
|
@@ -57,6 +59,7 @@ jobs:
|
|
|
57
59
|
cmake -S . -B build \
|
|
58
60
|
-D CMAKE_CXX_FLAGS=-Wl,-ld_classic \
|
|
59
61
|
-D CMAKE_BUILD_TYPE=${{ matrix.build_type }} \
|
|
62
|
+
-D MUSICA_GIT_TAG=${{ github.sha }} \
|
|
60
63
|
-D MUSICA_ENABLE_PYTHON_LIBRARY=ON \
|
|
61
64
|
-D Python3_EXECUTABLE=$PYTHON_PATH \
|
|
62
65
|
-D CMAKE_OSX_SYSROOT=""
|
|
@@ -73,7 +76,7 @@ jobs:
|
|
|
73
76
|
runs-on: macos-latest
|
|
74
77
|
strategy:
|
|
75
78
|
matrix:
|
|
76
|
-
gcc_version: [
|
|
79
|
+
gcc_version: [13, 14]
|
|
77
80
|
build_type: [Release]
|
|
78
81
|
env:
|
|
79
82
|
FC: gfortran-${{ matrix.gcc_version }}
|
|
@@ -85,7 +88,7 @@ jobs:
|
|
|
85
88
|
run: brew install netcdf netcdf-fortran
|
|
86
89
|
|
|
87
90
|
- name: Run Cmake
|
|
88
|
-
run: cmake -S . -B build -D CMAKE_CXX_FLAGS=-Wl,-ld_classic -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_BUILD_FORTRAN_INTERFACE=ON
|
|
91
|
+
run: cmake -S . -B build -D CMAKE_CXX_FLAGS=-Wl,-ld_classic -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_GIT_TAG=${{ github.sha }} -D MUSICA_BUILD_FORTRAN_INTERFACE=ON
|
|
89
92
|
|
|
90
93
|
- name: Build
|
|
91
94
|
run: cmake --build build --verbose --parallel 10
|
|
@@ -15,7 +15,7 @@ jobs:
|
|
|
15
15
|
- name: autopep8
|
|
16
16
|
uses: peter-evans/autopep8@v2
|
|
17
17
|
with:
|
|
18
|
-
args: --recursive --in-place --aggressive --aggressive .
|
|
18
|
+
args: --recursive --in-place --aggressive --aggressive --max-line-length 120 .
|
|
19
19
|
|
|
20
20
|
- name: Check for changes
|
|
21
21
|
id: check-changes
|
|
@@ -23,8 +23,8 @@ jobs:
|
|
|
23
23
|
- { cpp: g++-14, c: gcc-14, fc: gfortran-14}
|
|
24
24
|
- { cpp: clang++, c: clang, fc: gfortran-12}
|
|
25
25
|
options:
|
|
26
|
-
- {
|
|
27
|
-
- {
|
|
26
|
+
- {micm: ON, tuvx: OFF, python: ON}
|
|
27
|
+
- {micm: OFF, tuvx: ON, python: OFF}
|
|
28
28
|
build_type: [Release]
|
|
29
29
|
env:
|
|
30
30
|
CC: ${{ matrix.compiler.c }}
|
|
@@ -40,21 +40,31 @@ jobs:
|
|
|
40
40
|
sudo apt-get install -y liblapack-dev libblas-dev build-essential libnetcdf-dev libnetcdff-dev
|
|
41
41
|
sudo apt-get install -y python3-numpy
|
|
42
42
|
|
|
43
|
-
- name: Run Cmake
|
|
44
|
-
|
|
43
|
+
- name: Run Cmake
|
|
44
|
+
# TUV-x doesn't work with gcc 13
|
|
45
|
+
if: matrix.compiler.fc != 'gfortran-13' && matrix.options.tuvx != 'ON'
|
|
46
|
+
run: |
|
|
47
|
+
cmake -S . -B build -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} \
|
|
48
|
+
-D MUSICA_GIT_TAG=${{ github.sha }} \
|
|
49
|
+
-D MUSICA_ENABLE_MICM=${{ matrix.options.micm }} \
|
|
50
|
+
-D MUSICA_ENABLE_TUVX=${{ matrix.options.tuvx }} \
|
|
51
|
+
-D MUSICA_ENABLE_PYTHON_LIBRARY=${{ matrix.options.python }}
|
|
45
52
|
|
|
46
53
|
- name: Build
|
|
54
|
+
if: matrix.compiler.fc != 'gfortran-13' && matrix.options.tuvx != 'ON'
|
|
47
55
|
run: cmake --build build --verbose
|
|
48
56
|
|
|
49
57
|
- name: Run tests
|
|
58
|
+
if: matrix.compiler.fc != 'gfortran-13' && matrix.options.tuvx != 'ON'
|
|
50
59
|
run: |
|
|
51
60
|
cd build
|
|
52
61
|
ctest -C ${{ matrix.build_type }} --rerun-failed --output-on-failure . --verbose
|
|
53
62
|
fortran:
|
|
54
63
|
runs-on: ubuntu-24.04
|
|
64
|
+
continue-on-error: true
|
|
55
65
|
strategy:
|
|
56
66
|
matrix:
|
|
57
|
-
gcc_version: [
|
|
67
|
+
gcc_version: [14]
|
|
58
68
|
build_type: [Debug, Release]
|
|
59
69
|
env:
|
|
60
70
|
CXX: g++-${{ matrix.gcc_version }}
|
|
@@ -70,7 +80,7 @@ jobs:
|
|
|
70
80
|
sudo apt-get install -y libnetcdf-dev netcdf-bin libnetcdff-dev liblapack-dev libblas-dev
|
|
71
81
|
|
|
72
82
|
- name: Run Cmake
|
|
73
|
-
run: cmake -S . -B build -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_BUILD_FORTRAN_INTERFACE=ON
|
|
83
|
+
run: cmake -S . -B build -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_GIT_TAG=${{ github.sha }} -D MUSICA_BUILD_FORTRAN_INTERFACE=ON
|
|
74
84
|
|
|
75
85
|
- name: Build
|
|
76
86
|
run: cmake --build build --verbose --parallel 1
|
|
@@ -30,7 +30,7 @@ jobs:
|
|
|
30
30
|
- run: pip install numpy
|
|
31
31
|
|
|
32
32
|
- name: Run Cmake
|
|
33
|
-
run: cmake -S . -B build -G "MinGW Makefiles" -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
33
|
+
run: cmake -S . -B build -G "MinGW Makefiles" -D MUSICA_GIT_TAG=${{ github.sha }} -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
34
34
|
|
|
35
35
|
- name: Build
|
|
36
36
|
run: cmake --build build --parallel
|
|
@@ -61,7 +61,7 @@ jobs:
|
|
|
61
61
|
- run: pip install numpy
|
|
62
62
|
|
|
63
63
|
- name: Run CMake
|
|
64
|
-
run: cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
64
|
+
run: cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -D MUSICA_GIT_TAG=${{ github.sha }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
65
65
|
|
|
66
66
|
- name: Build
|
|
67
67
|
run: cmake --build build --config ${{ matrix.build_type }} --parallel
|
|
@@ -86,7 +86,7 @@ jobs:
|
|
|
86
86
|
- run: pip install numpy
|
|
87
87
|
|
|
88
88
|
- name: Run CMake
|
|
89
|
-
run: cmake -S . -B build -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang++.exe" -DCMAKE_C_COMPILER="C:/Program Files/LLVM/bin/clang.exe" -G"MinGW Makefiles" -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
89
|
+
run: cmake -S . -B build -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang++.exe" -DCMAKE_C_COMPILER="C:/Program Files/LLVM/bin/clang.exe" -G"MinGW Makefiles" -D MUSICA_GIT_TAG=${{ github.sha }} -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
90
90
|
|
|
91
91
|
- name: Build
|
|
92
92
|
run: cmake --build build --parallel
|
|
@@ -115,7 +115,7 @@ jobs:
|
|
|
115
115
|
- run: pip install numpy
|
|
116
116
|
|
|
117
117
|
- name: Run CMake
|
|
118
|
-
run: cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -T ClangCL -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
118
|
+
run: cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -T ClangCL -D MUSICA_GIT_TAG=${{ github.sha }} -D MUSICA_ENABLE_TUVX=OFF -D MUSICA_ENABLE_PYTHON_LIBRARY=ON
|
|
119
119
|
|
|
120
120
|
- name: Build
|
|
121
121
|
run: cmake --build build --config Debug --parallel
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
cmake_minimum_required(VERSION 3.21)
|
|
2
2
|
|
|
3
3
|
# must be on the same line so that pyproject.toml can correctly identify the version
|
|
4
|
-
project(musica-distribution VERSION 0.
|
|
4
|
+
project(musica-distribution VERSION 0.8.1)
|
|
5
5
|
|
|
6
6
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH};${PROJECT_SOURCE_DIR}/cmake)
|
|
7
7
|
set(CMAKE_USER_MAKE_RULES_OVERRIDE ${CMAKE_MODULE_PATH}/SetDefaults.cmake)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: musica
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8.1
|
|
4
4
|
Summary: MUSICA is a Python library for performing computational simulations in atmospheric chemistry.
|
|
5
5
|
Home-page: https://wiki.ucar.edu/display/MUSICA/MUSICA+Home
|
|
6
6
|
Author-Email: Matthew Dawsom <mattdawson@ucar.edu>, Jiwon Gim <jiwongim@ucar.edu>, David Fillmore <fillmore@ucar.edu>, Kyle Shores <kshores@ucar.edu>
|
|
@@ -20,6 +20,17 @@ if (MUSICA_BUILD_FORTRAN_INTERFACE)
|
|
|
20
20
|
pkg_check_modules(netcdfc IMPORTED_TARGET REQUIRED netcdf)
|
|
21
21
|
endif()
|
|
22
22
|
|
|
23
|
+
# ##############################################################################
|
|
24
|
+
# yaml-cpp
|
|
25
|
+
|
|
26
|
+
FetchContent_Declare(
|
|
27
|
+
yaml-cpp
|
|
28
|
+
GIT_REPOSITORY https://github.com/jbeder/yaml-cpp/
|
|
29
|
+
GIT_TAG 0.8.0
|
|
30
|
+
GIT_PROGRESS NOT
|
|
31
|
+
${FETCHCONTENT_QUIET})
|
|
32
|
+
FetchContent_MakeAvailable(yaml-cpp)
|
|
33
|
+
|
|
23
34
|
################################################################################
|
|
24
35
|
# google test
|
|
25
36
|
if(MUSICA_ENABLE_TESTS)
|
|
@@ -51,7 +62,7 @@ endif()
|
|
|
51
62
|
if (MUSICA_ENABLE_MICM AND MUSICA_BUILD_C_CXX_INTERFACE)
|
|
52
63
|
|
|
53
64
|
set_git_default(MICM_GIT_REPOSITORY https://github.com/NCAR/micm.git)
|
|
54
|
-
set_git_default(MICM_GIT_TAG
|
|
65
|
+
set_git_default(MICM_GIT_TAG b3c462a)
|
|
55
66
|
|
|
56
67
|
FetchContent_Declare(micm
|
|
57
68
|
GIT_REPOSITORY ${MICM_GIT_REPOSITORY}
|
|
@@ -75,7 +86,7 @@ if (MUSICA_ENABLE_TUVX AND MUSICA_BUILD_C_CXX_INTERFACE)
|
|
|
75
86
|
set(TUVX_INSTALL_INCLUDE_DIR ${MUSICA_INSTALL_INCLUDE_DIR} CACHE STRING "" FORCE)
|
|
76
87
|
|
|
77
88
|
set_git_default(TUVX_GIT_REPOSITORY https://github.com/NCAR/tuv-x.git)
|
|
78
|
-
set_git_default(TUVX_GIT_TAG
|
|
89
|
+
set_git_default(TUVX_GIT_TAG v0.10.0)
|
|
79
90
|
|
|
80
91
|
FetchContent_Declare(tuvx
|
|
81
92
|
GIT_REPOSITORY ${TUVX_GIT_REPOSITORY}
|
|
@@ -41,7 +41,7 @@ function(create_standard_test_cxx)
|
|
|
41
41
|
include(CMakeParseArguments)
|
|
42
42
|
cmake_parse_arguments(${prefix} " " "${singleValues}" "${multiValues}" ${ARGN})
|
|
43
43
|
add_executable(test_${TEST_NAME} ${TEST_SOURCES})
|
|
44
|
-
target_link_libraries(test_${TEST_NAME} PUBLIC musica::musica GTest::gtest_main)
|
|
44
|
+
target_link_libraries(test_${TEST_NAME} PUBLIC musica::musica GTest::gtest_main yaml-cpp)
|
|
45
45
|
if(MUSICA_ENABLE_OPENMP)
|
|
46
46
|
target_link_libraries(test_${TEST_NAME} PUBLIC OpenMP::OpenMP_CXX)
|
|
47
47
|
endif()
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
{
|
|
2
|
+
"camp-data": [
|
|
3
|
+
{
|
|
4
|
+
"type": "MECHANISM",
|
|
5
|
+
"name": "music box interactive configuration",
|
|
6
|
+
"reactions": [
|
|
7
|
+
{
|
|
8
|
+
"type": "ARRHENIUS",
|
|
9
|
+
"A": 0.004,
|
|
10
|
+
"C": 50,
|
|
11
|
+
"reactants": {
|
|
12
|
+
"A": {
|
|
13
|
+
"qty": 1
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"products": {
|
|
17
|
+
"B": {
|
|
18
|
+
"yield": 1
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "ARRHENIUS",
|
|
24
|
+
"A": 0.012,
|
|
25
|
+
"B": -2,
|
|
26
|
+
"C": 75,
|
|
27
|
+
"D": 50,
|
|
28
|
+
"E": 1.0e-6,
|
|
29
|
+
"reactants": {
|
|
30
|
+
"B": {
|
|
31
|
+
"qty": 1
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"products": {
|
|
35
|
+
"C": {
|
|
36
|
+
"yield": 1
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"type": "USER_DEFINED",
|
|
42
|
+
"MUSICA name": "reaction 1",
|
|
43
|
+
"reactants": {
|
|
44
|
+
"D": {
|
|
45
|
+
"qty": 1
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"products": {
|
|
49
|
+
"E": {
|
|
50
|
+
"yield": 1
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"type": "USER_DEFINED",
|
|
56
|
+
"MUSICA name": "reaction 2",
|
|
57
|
+
"reactants": {
|
|
58
|
+
"E": {
|
|
59
|
+
"qty": 1
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"products": {
|
|
63
|
+
"F": {
|
|
64
|
+
"yield": 1
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
]
|
|
71
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"camp-data": [
|
|
3
|
+
{
|
|
4
|
+
"name": "A",
|
|
5
|
+
"type": "CHEM_SPEC"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"name": "B",
|
|
9
|
+
"type": "CHEM_SPEC"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"name": "C",
|
|
13
|
+
"type": "CHEM_SPEC"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"name": "D",
|
|
17
|
+
"type": "CHEM_SPEC"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"name": "E",
|
|
21
|
+
"type": "CHEM_SPEC"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"name": "F",
|
|
25
|
+
"type": "CHEM_SPEC"
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"yield": 2.0
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
|
-
"MUSICA name": "
|
|
17
|
+
"MUSICA name": "jO2"
|
|
18
18
|
},
|
|
19
19
|
{
|
|
20
20
|
"type": "ARRHENIUS",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"O": {},
|
|
38
38
|
"O2": {}
|
|
39
39
|
},
|
|
40
|
-
"MUSICA name": "
|
|
40
|
+
"MUSICA name": "jO3->O"
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
"type": "ARRHENIUS",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"O1D": {},
|
|
63
63
|
"O2": {}
|
|
64
64
|
},
|
|
65
|
-
"MUSICA name": "
|
|
65
|
+
"MUSICA name": "jO3->O1D"
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
"type": "ARRHENIUS",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Release
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -15,6 +16,7 @@ RUN dnf -y update \
|
|
|
15
16
|
json-devel \
|
|
16
17
|
python \
|
|
17
18
|
valgrind \
|
|
19
|
+
tree \
|
|
18
20
|
&& dnf clean all
|
|
19
21
|
|
|
20
22
|
# Copy the musica code
|
|
@@ -25,6 +27,7 @@ RUN cd musica \
|
|
|
25
27
|
&& cmake -S . \
|
|
26
28
|
-B build \
|
|
27
29
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
30
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
28
31
|
&& cd build \
|
|
29
32
|
&& make install -j 8
|
|
30
33
|
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
|
+
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
4
|
+
ARG BUILD_TYPE=Release
|
|
2
5
|
|
|
3
6
|
RUN dnf -y update \
|
|
4
7
|
&& dnf -y install \
|
|
@@ -17,7 +20,8 @@ RUN dnf -y update \
|
|
|
17
20
|
|
|
18
21
|
COPY . /musica/
|
|
19
22
|
|
|
20
|
-
RUN
|
|
23
|
+
RUN python3 -m pip install --upgrade pip setuptools \
|
|
24
|
+
&& python3 -m pip install -r /musica/docs/requirements.txt
|
|
21
25
|
|
|
22
26
|
ARG SUFFIX=""
|
|
23
27
|
ENV SWITCHER_SUFFIX=$SUFFIX
|
|
@@ -28,6 +32,8 @@ RUN mkdir /build \
|
|
|
28
32
|
&& cd /build \
|
|
29
33
|
&& cmake -D MUSICA_BUILD_DOCS=ON \
|
|
30
34
|
-D MUSICA_ENABLE_TUVX=OFF \
|
|
35
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
36
|
+
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
31
37
|
/musica \
|
|
32
38
|
&& make docs
|
|
33
39
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
3
|
ARG MUSICA_GIT_TAG=main
|
|
4
4
|
ARG BUILD_TYPE=Release
|
|
@@ -38,6 +38,7 @@ RUN cd musica \
|
|
|
38
38
|
&& cmake -S . \
|
|
39
39
|
-B build \
|
|
40
40
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
41
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
41
42
|
&& cd build \
|
|
42
43
|
&& make install -j
|
|
43
44
|
|
|
@@ -8,6 +8,7 @@ RUN wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | \
|
|
|
8
8
|
gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics-archive-keyring.gpg
|
|
9
9
|
|
|
10
10
|
ARG MUSICA_GIT_TAG=main
|
|
11
|
+
ARG BUILD_TYPE=Release
|
|
11
12
|
|
|
12
13
|
RUN apt update \
|
|
13
14
|
&& apt -y install \
|
|
@@ -52,6 +53,7 @@ RUN cd musica \
|
|
|
52
53
|
&& cmake -S . \
|
|
53
54
|
-B build \
|
|
54
55
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
56
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
55
57
|
&& cd build \
|
|
56
58
|
&& make install -j
|
|
57
59
|
|
|
@@ -63,7 +65,7 @@ ENV FC=ifx
|
|
|
63
65
|
RUN cd musica/fortran/test/fetch_content_integration \
|
|
64
66
|
&& mkdir build && cd build \
|
|
65
67
|
&& cmake .. \
|
|
66
|
-
-D CMAKE_BUILD_TYPE
|
|
68
|
+
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
67
69
|
-D CMAKE_EXE_LINKER_FLAGS="-Wl,--copy-dt-needed-entries" \
|
|
68
70
|
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
69
71
|
-D MUSICA_ENABLE_MEMCHECK=ON \
|
|
@@ -49,23 +49,25 @@ COPY . musica
|
|
|
49
49
|
|
|
50
50
|
# Build and install MUSICA
|
|
51
51
|
RUN cd musica \
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
52
|
+
&& cmake -S . \
|
|
53
|
+
-B build \
|
|
54
|
+
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
55
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
56
|
+
&& cd build \
|
|
57
|
+
&& make install -j
|
|
57
58
|
|
|
58
59
|
# Set environment variables to build MUSICA-Fortran using nvidia compilers
|
|
59
60
|
ENV CXX=nvc++
|
|
60
61
|
ENV CC=nvc
|
|
61
62
|
ENV FC=nvfortran
|
|
62
63
|
|
|
64
|
+
# (There is a runtime test failure when building MUSICA with nvhpc in Release mode, so we build in Debug mode)
|
|
63
65
|
RUN cd musica/fortran/test/fetch_content_integration \
|
|
64
66
|
&& mkdir build && cd build \
|
|
65
67
|
&& cmake .. \
|
|
66
|
-
-D CMAKE_BUILD_TYPE
|
|
67
|
-
-D CMAKE_EXE_LINKER_FLAGS="-Wl,--copy-dt-needed-entries" \
|
|
68
|
+
-D CMAKE_BUILD_TYPE=Debug \
|
|
68
69
|
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
70
|
+
-D CMAKE_EXE_LINKER_FLAGS="-Wl,--copy-dt-needed-entries" \
|
|
69
71
|
-D MUSICA_ENABLE_MEMCHECK=ON \
|
|
70
72
|
&& make -j
|
|
71
73
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Debug
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -24,6 +25,7 @@ RUN cd musica \
|
|
|
24
25
|
&& cmake -S . \
|
|
25
26
|
-B build \
|
|
26
27
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
28
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
27
29
|
-D MUSICA_ENABLE_MEMCHECK=ON \
|
|
28
30
|
&& cd build \
|
|
29
31
|
&& make install -j 8
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Debug
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -40,6 +41,7 @@ RUN cd musica \
|
|
|
40
41
|
&& cmake -S . \
|
|
41
42
|
-B build \
|
|
42
43
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
44
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
43
45
|
-D MUSICA_ENABLE_TESTS=ON \
|
|
44
46
|
-D MUSICA_ENABLE_MPI=ON \
|
|
45
47
|
-D CMAKE_Fortran_COMPILER=/usr/lib64/openmpi/bin/mpif90 \
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Debug
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -40,6 +41,7 @@ RUN cd musica \
|
|
|
40
41
|
&& cmake -S . \
|
|
41
42
|
-B build \
|
|
42
43
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
44
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
43
45
|
-D MUSICA_ENABLE_MPI=ON \
|
|
44
46
|
-D MUSICA_ENABLE_OPENMP=ON \
|
|
45
47
|
-D MUSICA_ENABLE_TESTS=ON \
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
FROM fedora:
|
|
1
|
+
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Debug
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -39,6 +40,7 @@ RUN cd musica \
|
|
|
39
40
|
&& cmake -S . \
|
|
40
41
|
-B build \
|
|
41
42
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
43
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
42
44
|
-D MUSICA_ENABLE_OPENMP=ON \
|
|
43
45
|
-D MUSICA_ENABLE_TESTS=ON \
|
|
44
46
|
-D CMAKE_Fortran_COMPILER=/usr/lib64/openmpi/bin/mpif90 \
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
FROM ubuntu:latest
|
|
2
|
+
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
4
|
+
ARG BUILD_TYPE=Release
|
|
5
|
+
|
|
6
|
+
RUN apt-get update \
|
|
7
|
+
&& apt-get install -y \
|
|
8
|
+
cmake \
|
|
9
|
+
gcc \
|
|
10
|
+
g++ \
|
|
11
|
+
gfortran \
|
|
12
|
+
gdb \
|
|
13
|
+
git \
|
|
14
|
+
libhdf5-dev \
|
|
15
|
+
libnetcdf-dev \
|
|
16
|
+
libjson-c-dev \
|
|
17
|
+
lcov \
|
|
18
|
+
make \
|
|
19
|
+
valgrind \
|
|
20
|
+
vim \
|
|
21
|
+
python3 \
|
|
22
|
+
python3-pip \
|
|
23
|
+
zlib1g-dev \
|
|
24
|
+
&& apt-get clean
|
|
25
|
+
|
|
26
|
+
# Copy the musica code
|
|
27
|
+
COPY . musica
|
|
28
|
+
|
|
29
|
+
# Add requirements
|
|
30
|
+
RUN python3 -m pip install --ignore-installed --upgrade wheel setuptools --break-system-packages
|
|
31
|
+
|
|
32
|
+
# Build and install musica
|
|
33
|
+
RUN cd musica \
|
|
34
|
+
&& pip install --verbose .[test] --break-system-packages
|
|
35
|
+
|
|
36
|
+
# Test
|
|
37
|
+
RUN cd musica \
|
|
38
|
+
&& python3 -m unittest discover -v -s python/test
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
FROM fedora:latest
|
|
2
2
|
|
|
3
|
+
ARG MUSICA_GIT_TAG=main
|
|
3
4
|
ARG BUILD_TYPE=Release
|
|
4
5
|
|
|
5
6
|
RUN dnf -y update \
|
|
@@ -14,6 +15,7 @@ RUN dnf -y update \
|
|
|
14
15
|
pip \
|
|
15
16
|
python \
|
|
16
17
|
python-devel \
|
|
18
|
+
valgrind \
|
|
17
19
|
&& dnf clean all
|
|
18
20
|
|
|
19
21
|
# Copy the musica code
|
|
@@ -46,9 +48,11 @@ RUN pip install -r requirements.txt
|
|
|
46
48
|
RUN cd musica \
|
|
47
49
|
&& cmake -S . \
|
|
48
50
|
-B build \
|
|
51
|
+
-D MUSICA_GIT_TAG=${MUSICA_GIT_TAG} \
|
|
49
52
|
-D CMAKE_BUILD_TYPE=${BUILD_TYPE} \
|
|
50
53
|
-D MUSICA_ENABLE_PYTHON_LIBRARY=ON \
|
|
51
54
|
-D MUSICA_ENABLE_TUVX=OFF \
|
|
55
|
+
-D MUSICA_ENABLE_MEMCHECK=ON \
|
|
52
56
|
&& cd build \
|
|
53
57
|
&& make install -j 8
|
|
54
58
|
|