musica 0.11.1.4__tar.gz → 0.12.0__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.11.1.4 → musica-0.12.0}/.github/workflows/windows.yml +4 -2
- {musica-0.11.1.4 → musica-0.12.0}/.gitignore +2 -0
- musica-0.12.0/.zenodo.json +80 -0
- musica-0.12.0/AUTHORS.md +59 -0
- {musica-0.11.1.4 → musica-0.12.0}/CITATION.cff +1 -1
- {musica-0.11.1.4 → musica-0.12.0}/CMakeLists.txt +1 -1
- musica-0.12.0/CONTRIBUTING.md +98 -0
- {musica-0.11.1.4 → musica-0.12.0}/PKG-INFO +61 -46
- {musica-0.11.1.4 → musica-0.12.0}/README.md +59 -45
- {musica-0.11.1.4 → musica-0.12.0}/cmake/dependencies.cmake +7 -2
- musica-0.12.0/docs/source/_static/ecosystem.png +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/packaging/CMakeLists.txt +1 -1
- musica-0.12.0/musica/constants.py +3 -0
- musica-0.12.0/musica/mechanism_configuration/__init__.py +1 -0
- musica-0.12.0/musica/mechanism_configuration/aqueous_equilibrium.py +101 -0
- musica-0.12.0/musica/mechanism_configuration/arrhenius.py +121 -0
- musica-0.12.0/musica/mechanism_configuration/branched.py +116 -0
- musica-0.12.0/musica/mechanism_configuration/condensed_phase_arrhenius.py +116 -0
- musica-0.12.0/musica/mechanism_configuration/condensed_phase_photolysis.py +91 -0
- musica-0.12.0/musica/mechanism_configuration/emission.py +67 -0
- musica-0.12.0/musica/mechanism_configuration/first_order_loss.py +67 -0
- musica-0.12.0/musica/mechanism_configuration/henrys_law.py +85 -0
- musica-0.12.0/musica/mechanism_configuration/mechanism_configuration.py +161 -0
- musica-0.12.0/musica/mechanism_configuration/phase.py +43 -0
- musica-0.12.0/musica/mechanism_configuration/photolysis.py +83 -0
- musica-0.12.0/musica/mechanism_configuration/reactions.py +61 -0
- musica-0.12.0/musica/mechanism_configuration/simpol_phase_transfer.py +88 -0
- musica-0.12.0/musica/mechanism_configuration/species.py +72 -0
- musica-0.12.0/musica/mechanism_configuration/surface.py +89 -0
- musica-0.12.0/musica/mechanism_configuration/troe.py +137 -0
- musica-0.12.0/musica/mechanism_configuration/tunneling.py +103 -0
- musica-0.12.0/musica/mechanism_configuration/user_defined.py +83 -0
- musica-0.12.0/musica/mechanism_configuration/utils.py +10 -0
- musica-0.12.0/musica/mechanism_configuration/wet_deposition.py +49 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/mechanism_configuration.cpp +0 -1
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v1/full_configuration/full_configuration.json +30 -15
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v1/full_configuration/full_configuration.yaml +16 -1
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/test_analytical.py +1 -1
- musica-0.12.0/musica/test/test_parser.py +57 -0
- musica-0.12.0/musica/test/test_serializer.py +69 -0
- musica-0.11.1.4/musica/test/test_parser.py → musica-0.12.0/musica/test/test_util_full_mechanism.py +341 -366
- {musica-0.11.1.4 → musica-0.12.0}/musica/types.py +1 -4
- {musica-0.11.1.4 → musica-0.12.0}/pyproject.toml +1 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/packaging/CMakeLists.txt +1 -1
- musica-0.12.0/tutorial/1. multiple_grid_cells.ipynb +515 -0
- musica-0.12.0/tutorial/2. hypercube.ipynb +529 -0
- musica-0.12.0/tutorial/3. user_defined_reactions.ipynb +515 -0
- musica-0.11.1.4/musica/mechanism_configuration.py +0 -1291
- {musica-0.11.1.4 → musica-0.12.0}/.clang-format +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.clang-tidy +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.dockerignore +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/clang_format.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/clang_tidy.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/close_stale_issues.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/docker.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/fetch_content_integration.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/format-python.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/gh_pages.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/mac.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/python-tests.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/python-wheels.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/.github/workflows/ubuntu.yml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/LICENSE +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/CodeCoverage.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/FindSphinx.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/SetDefaults.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/cmake_uninstall.cmake.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/musica-fortran.pc.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/musica.pc.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/musica.settings.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/musicaConfig.cmake.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/setup_musica_target.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/silence_warnings.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/summary.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/cmake/test_util.cmake +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/TS1/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/TS1/initial_conditions.csv +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/TS1/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/TS1/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/analytical/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/analytical/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/analytical/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/carbon_bond_5/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/carbon_bond_5/initial_conditions.csv +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/carbon_bond_5/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/carbon_bond_5/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/chapman/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/chapman/initial_conditions.csv +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/chapman/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/chapman/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/robertson/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/robertson/initial_conditions.csv +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/robertson/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v0/robertson/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v1/chapman/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v1/chapman/config.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v1/full_configuration/full_configuration.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/configs/v1/full_configuration/full_configuration.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.coverage +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.docs +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-gcc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-gcc.integration +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-intel +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-intel.pkgconfig +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-nvhpc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.fortran-nvhpc.pkgconfig +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.memcheck +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.mpi +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.mpi_openmp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.nvhpc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.openmp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.python +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.python-tests +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docker/Dockerfile.wheel +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/Doxyfile.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/Makefile +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/Software Development Plan.pdf +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/make.bat +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/requirements.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/custom.css +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/favicon/favicon.ico +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/index_api.svg +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/index_contribute.svg +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/index_getting_started.svg +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/index_user_guide.svg +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/_static/switcher.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/api/C++.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/api/index.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/api/python.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/conf.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/contributing/index.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/getting_started/getting_started.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/getting_started/installation.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/getting_started/overview.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/index.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/references.bib +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/tutorial/chapter0.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/tutorial/chapter1.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/tutorial/chapter2.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/tutorial/tutorial.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/user_guide/configurations.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/user_guide/fortran_c.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/docs/source/user_guide/index.rst +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/micm/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/micm/micm.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/micm/state.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/fetch_content_integration/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/fetch_content_integration/test_get_micm_version.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/fetch_content_integration/test_micm_api.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/fetch_content_integration/test_micm_box_model.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/fetch_content_integration/test_tuvx_api.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/test_simple.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/tutorial/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/tutorial/demo.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/unit/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/unit/tuvx.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/unit/tuvx_openmp.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/test/unit/util.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/grid.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/grid_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/profile.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/profile_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/radiator.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/radiator_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/tuvx/tuvx.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/fortran/util.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/component_versions.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/error.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/chemistry.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/cuda_availability.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/micm.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/micm_c_interface.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/parse.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/state.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/micm/state_c_interface.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/grid.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/grid_map.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/profile.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/profile_map.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/radiator.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/radiator_map.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/tuvx/tuvx.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/util.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/include/musica/version.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/__init__.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/binding_common.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/binding_common.hpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/cpu_binding.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/cuda.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/cuda.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/gpu_binding.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/musica.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/config.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/reactions.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/reactions.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/species.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/examples/v0/species.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/test_chapman.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/test/tuvx.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/tools/prepare_build_environment_linux.sh +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/tools/prepare_build_environment_windows.sh +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/musica/tools/repair_wheel_gpu.sh +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/spack/packages/musica/package.py +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/spack/repo.yaml +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/component_versions.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/cuda_availability.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/micm.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/micm_c_interface.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/parse.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/state.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/state_c_interface.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/v0_parse.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/micm/v1_parse.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/packaging/modulefile.lua.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/O2_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/O2_parameters.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/bar_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/foo_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/fixed/stand_alone_tuvx_config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/from_host/O2_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/from_host/O2_parameters.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/from_host/bar_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/from_host/config.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/tuvx/from_host/foo_cross_section.nc +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/data/util_index_mapping_from_file.json +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/test_simple.c +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/component_versions.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/micm/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/micm/micm_c_api.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/micm/micm_wrapper.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/micm/parser.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/tuvx/CMakeLists.txt +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/tuvx/tuvx_c_api.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/tuvx/tuvx_run_from_config.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/test/unit/util.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/grid.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/grid_map.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_grid.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_grid_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_profile.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_profile_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_radiator.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_radiator_map.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/interface_util.F90 +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/profile.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/profile_map.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/radiator.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/radiator_map.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/tuvx/tuvx.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/util.cpp +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/src/version.cpp.in +0 -0
- {musica-0.11.1.4 → musica-0.12.0}/valgrind.supp +0 -0
|
@@ -14,6 +14,7 @@ concurrency:
|
|
|
14
14
|
jobs:
|
|
15
15
|
mingw:
|
|
16
16
|
runs-on: windows-latest
|
|
17
|
+
continue-on-error: true
|
|
17
18
|
strategy:
|
|
18
19
|
matrix:
|
|
19
20
|
architecture: [x64]
|
|
@@ -24,7 +25,7 @@ jobs:
|
|
|
24
25
|
uses: egor-tensin/setup-mingw@v2
|
|
25
26
|
with:
|
|
26
27
|
platform: ${{ matrix.architecture }}
|
|
27
|
-
|
|
28
|
+
static: 0
|
|
28
29
|
|
|
29
30
|
- name: Run Cmake
|
|
30
31
|
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 -D CMAKE_POLICY_VERSION_MINIMUM=3.5
|
|
@@ -69,7 +70,7 @@ jobs:
|
|
|
69
70
|
continue-on-error: true
|
|
70
71
|
strategy:
|
|
71
72
|
matrix:
|
|
72
|
-
version: [
|
|
73
|
+
version: [19.1.0, 20.1.0]
|
|
73
74
|
|
|
74
75
|
steps:
|
|
75
76
|
- uses: actions/checkout@v4
|
|
@@ -114,6 +115,7 @@ jobs:
|
|
|
114
115
|
|
|
115
116
|
fortran:
|
|
116
117
|
runs-on: windows-latest
|
|
118
|
+
continue-on-error: true
|
|
117
119
|
strategy:
|
|
118
120
|
fail-fast: false
|
|
119
121
|
matrix:
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "MUSICA: Multi-Scale Infrastructure for Chemistry and Aerosols",
|
|
3
|
+
"description": "MUSICA is a multi-language library for performing computational simulations in atmospheric chemistry.",
|
|
4
|
+
"license": {
|
|
5
|
+
"id": "Apache-2.0"
|
|
6
|
+
},
|
|
7
|
+
"creators": [
|
|
8
|
+
{
|
|
9
|
+
"name": "Dawson, Matthew",
|
|
10
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
11
|
+
"orcid": ""
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Gim, Jiwon",
|
|
15
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
16
|
+
"orcid": ""
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "Fillmore, David",
|
|
20
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
21
|
+
"orcid": ""
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"name": "Shores, Kyle",
|
|
25
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
26
|
+
"orcid": "0000-0002-4272-5187"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "Thind, Montek",
|
|
30
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
31
|
+
"orcid": ""
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "Jian Sun",
|
|
35
|
+
"affiliation": "National Center for Atmospheric Research (NCAR)",
|
|
36
|
+
"orcid": ""
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"contributors": [
|
|
40
|
+
{
|
|
41
|
+
"name": "ACOM MUSICA Development Team",
|
|
42
|
+
"type": "ResearchGroup"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"name": "Angela Pak",
|
|
46
|
+
"type": "ProjectMember"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "Aidan Winney",
|
|
50
|
+
"type": "ProjectMember"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "Dee Grant",
|
|
54
|
+
"type": "Other"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "Ward Fisher",
|
|
58
|
+
"type": "Other"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "Qina Tan",
|
|
62
|
+
"type": "ProjectMember"
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
"keywords": [
|
|
66
|
+
"atmospheric chemistry",
|
|
67
|
+
"chemical mechanisms",
|
|
68
|
+
"air quality modeling",
|
|
69
|
+
"photolysis",
|
|
70
|
+
"MICM",
|
|
71
|
+
"TUV-x"
|
|
72
|
+
],
|
|
73
|
+
"related_identifiers": [
|
|
74
|
+
{
|
|
75
|
+
"identifier": "10.1175/BAMS-D-19-0331.1",
|
|
76
|
+
"relation": "cites",
|
|
77
|
+
"description": "The foundational MUSICA paper describing the scientific vision"
|
|
78
|
+
}
|
|
79
|
+
]
|
|
80
|
+
}
|
musica-0.12.0/AUTHORS.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# MUSICA Authors and Contributors
|
|
2
|
+
|
|
3
|
+
This file acknowledges all individuals who have contributed to the MUSICA project.
|
|
4
|
+
|
|
5
|
+
## Core Development Team
|
|
6
|
+
|
|
7
|
+
The following individuals are the primary developers and maintainers of the MUSICA software:
|
|
8
|
+
|
|
9
|
+
- **Matthew Dawson** (mattdawson@ucar.edu) - Core Developer
|
|
10
|
+
- **Jiwon Gim** (jiwongim@ucar.edu) - Core Developer
|
|
11
|
+
- **David Fillmore** (fillmore@ucar.edu) - Core Developer
|
|
12
|
+
- **Kyle Shores** (kshores@ucar.edu) - Core Developer
|
|
13
|
+
- **Montek Thind** (mthind@ucar.edu) - Core Developer
|
|
14
|
+
- **Jian Sun** - Core Developer
|
|
15
|
+
|
|
16
|
+
## Scientific Leadership and Vision
|
|
17
|
+
|
|
18
|
+
The scientific leadership and vision for MUSICA are provided by the authors of the [foundational paper](https://doi.org/10.1175/BAMS-D-19-0331.1).
|
|
19
|
+
This software implements that vision. For a full list of scientific authors,
|
|
20
|
+
please refer to our [CITATION.cff](CITATION.cff) file. To cite the software, use the Zenodo DOI from our latest release.
|
|
21
|
+
|
|
22
|
+
## Additional Contributors
|
|
23
|
+
|
|
24
|
+
<!-- Contributors will be added here as they join the project -->
|
|
25
|
+
<!-- Format: -->
|
|
26
|
+
<!-- - **Name** (affiliation) - Brief description of contribution -->
|
|
27
|
+
|
|
28
|
+
- **Aidan Winney** - Documentation and Tutorials
|
|
29
|
+
- **Angela Pak** - Documentation and Tutorials
|
|
30
|
+
- **Dee Grant** - Improving the Python API
|
|
31
|
+
- **Qina Tan** - Implementing the CUDA-based Rosenbrock solver
|
|
32
|
+
|
|
33
|
+
## Recognition Policy
|
|
34
|
+
|
|
35
|
+
We recognize contributors at different levels based on their involvement:
|
|
36
|
+
|
|
37
|
+
- **Core Development Team**: Listed in `pyproject.toml`, `.zenodo.json` (creators), and this file
|
|
38
|
+
- **Additional Contributors**: Listed in `.zenodo.json` (contributors) and this file
|
|
39
|
+
- **All Contributors**: Automatically tracked by GitHub's contributor statistics
|
|
40
|
+
|
|
41
|
+
See our [Contributing Guide](CONTRIBUTING.md) for more details on how contributions are recognized.
|
|
42
|
+
|
|
43
|
+
## How to Contribute
|
|
44
|
+
|
|
45
|
+
We welcome contributions from the community! Please see our [Contributing Guide](CONTRIBUTING.md) for information on how to get involved.
|
|
46
|
+
|
|
47
|
+
## Acknowledgments
|
|
48
|
+
|
|
49
|
+
We thank the broader atmospheric chemistry modeling community for their feedback, testing, and contributions to making MUSICA a robust and useful tool for scientific research.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Citation Information
|
|
54
|
+
|
|
55
|
+
For citation purposes, please refer to our [CITATION.cff](CITATION.cff) file for the appropriate citations based on your use case. The main citations are:
|
|
56
|
+
|
|
57
|
+
1. **For the MUSICA vision and scientific framework**: [Pfister et al., 2020](https://doi.org/10.1175/BAMS-D-19-0331.1)
|
|
58
|
+
2. **For the MUSICA software evaluation**: [Schwantes et al., 2022](https://doi.org/10.1029/2021MS002889)
|
|
59
|
+
3. **For the software itself**: Use the Zenodo DOI from our latest release
|
|
@@ -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.12.0)
|
|
5
5
|
|
|
6
6
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH};${PROJECT_SOURCE_DIR}/cmake)
|
|
7
7
|
set(CMAKE_USER_MAKE_RULES_OVERRIDE ${PROJECT_SOURCE_DIR}/cmake/SetDefaults.cmake)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Contributing to MUSICA
|
|
2
|
+
|
|
3
|
+
We welcome contributions from the community! This guide outlines how you can contribute to the MUSICA project.
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
### Development Setup
|
|
8
|
+
|
|
9
|
+
1. **Clone the repository:**
|
|
10
|
+
```bash
|
|
11
|
+
git clone https://github.com/NCAR/musica.git
|
|
12
|
+
cd musica
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
2. **Build the project:**
|
|
16
|
+
```bash
|
|
17
|
+
mkdir build && cd build
|
|
18
|
+
ccmake ..
|
|
19
|
+
make
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
3. **Python development setup:**
|
|
23
|
+
```bash
|
|
24
|
+
pip install -e .
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
For detailed developer options and dependency management, see our [Software Development Plan](docs/Software%20Development%20Plan.pdf).
|
|
28
|
+
|
|
29
|
+
## Types of Contributions
|
|
30
|
+
|
|
31
|
+
We appreciate all types of contributions:
|
|
32
|
+
|
|
33
|
+
### Code Contributions
|
|
34
|
+
- Bug fixes
|
|
35
|
+
- New features
|
|
36
|
+
- Performance improvements
|
|
37
|
+
- Test coverage improvements
|
|
38
|
+
|
|
39
|
+
### Documentation
|
|
40
|
+
- README improvements
|
|
41
|
+
- Code documentation
|
|
42
|
+
- Tutorial and example updates
|
|
43
|
+
- Wiki contributions
|
|
44
|
+
|
|
45
|
+
### Testing and Validation
|
|
46
|
+
- Bug reports with reproducible examples
|
|
47
|
+
- Testing on different platforms
|
|
48
|
+
- Validation against known results
|
|
49
|
+
|
|
50
|
+
### Scientific Contributions
|
|
51
|
+
- New chemical mechanisms
|
|
52
|
+
- Algorithm improvements
|
|
53
|
+
- Performance optimizations
|
|
54
|
+
|
|
55
|
+
## Contribution Process
|
|
56
|
+
|
|
57
|
+
1. **Fork the repository** and create a feature branch
|
|
58
|
+
2. **Make your changes** following our coding standards
|
|
59
|
+
3. **Add tests** for new functionality
|
|
60
|
+
4. **Update documentation** as needed
|
|
61
|
+
5. **Submit a pull request** with a clear description
|
|
62
|
+
|
|
63
|
+
## Recognition Policy
|
|
64
|
+
|
|
65
|
+
We believe in recognizing all contributors appropriately:
|
|
66
|
+
|
|
67
|
+
### Core Development Team
|
|
68
|
+
Contributors who make substantial, ongoing contributions to the codebase, architecture, or project direction will be listed as authors in:
|
|
69
|
+
- `pyproject.toml` (for Python package metadata)
|
|
70
|
+
- `.zenodo.json` (as "creators" for software citations)
|
|
71
|
+
- `AUTHORS.md` (as core developers)
|
|
72
|
+
|
|
73
|
+
### Additional Contributors
|
|
74
|
+
Contributors who make valuable but smaller contributions will be acknowledged in:
|
|
75
|
+
- `.zenodo.json` (as "contributors" with appropriate type)
|
|
76
|
+
- `AUTHORS.md` (in the Additional Contributors section)
|
|
77
|
+
- GitHub's contributor list (automatic)
|
|
78
|
+
|
|
79
|
+
## Development Guidelines
|
|
80
|
+
|
|
81
|
+
### Code Standards
|
|
82
|
+
- Follow existing code style and conventions
|
|
83
|
+
- Include appropriate tests for new functionality
|
|
84
|
+
- Document new features and APIs
|
|
85
|
+
|
|
86
|
+
### Dependency Management
|
|
87
|
+
We use CMake for C++ dependencies and pip for Python dependencies. See our [README](README.md#developer-options) for information about specifying dependency versions during development.
|
|
88
|
+
|
|
89
|
+
### GPU Support
|
|
90
|
+
If contributing GPU-related code, please test on appropriate hardware and follow our GPU build guidelines.
|
|
91
|
+
|
|
92
|
+
## Questions?
|
|
93
|
+
|
|
94
|
+
- Check our [documentation](https://ncar.github.io/musica/index.html)
|
|
95
|
+
- Read our [Software Development Plan](docs/Software%20Development%20Plan.pdf)
|
|
96
|
+
- Contact the maintainers at musica-support@ucar.edu
|
|
97
|
+
|
|
98
|
+
Thank you for your interest in contributing to MUSICA!
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: musica
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.12.0
|
|
4
4
|
Summary: MUSICA is a Python library for performing computational simulations in atmospheric chemistry.
|
|
5
5
|
Author-Email: Matthew Dawsom <mattdawson@ucar.edu>, Jiwon Gim <jiwongim@ucar.edu>, David Fillmore <fillmore@ucar.edu>, Kyle Shores <kshores@ucar.edu>, Montek Thind <mthind@ucar.edu>
|
|
6
6
|
Maintainer-Email: ACOM MUSICA Developers <musica-support@ucar.edu>
|
|
@@ -207,6 +207,7 @@ License: Apache License
|
|
|
207
207
|
limitations under the License.
|
|
208
208
|
|
|
209
209
|
Project-URL: homepage, https://wiki.ucar.edu/display/MUSICA/MUSICA+Home
|
|
210
|
+
Requires-Dist: pyyaml>=6.0.2
|
|
210
211
|
Provides-Extra: test
|
|
211
212
|
Requires-Dist: numpy; extra == "test"
|
|
212
213
|
Requires-Dist: pytest; extra == "test"
|
|
@@ -233,13 +234,21 @@ Multi-Scale Infrastructure for Chemistry and Aerosols
|
|
|
233
234
|
MUSICA is a collection of modeling software, tools, and grids, that
|
|
234
235
|
allow for robust modeling of chemistry in Earth's atmosphere.
|
|
235
236
|
|
|
236
|
-
At present the project encompasses these components
|
|
237
|
+
At present the project encompasses these core components
|
|
237
238
|
- [TUV-x](https://github.com/NCAR/tuv-x)
|
|
238
239
|
- A photolysis rate calculator
|
|
239
240
|
|
|
240
241
|
- [MICM](https://github.com/NCAR/micm)
|
|
241
242
|
- Model Independent Chemical Module
|
|
242
243
|
|
|
244
|
+
- [Mechanism Configuration](https://github.com/NCAR/MechanismConfiguration)
|
|
245
|
+
- The standardized format to describe atmospheric chemistry
|
|
246
|
+
|
|
247
|
+
These components are used to drive the MUSICA software ecosystem. This is a snapshot of how MUSICA can be used with different
|
|
248
|
+
models.
|
|
249
|
+
|
|
250
|
+

|
|
251
|
+
|
|
243
252
|
# Installation
|
|
244
253
|
MUSICA is installable via pip for Python or CMake for C++.
|
|
245
254
|
|
|
@@ -247,6 +256,7 @@ MUSICA is installable via pip for Python or CMake for C++.
|
|
|
247
256
|
```
|
|
248
257
|
pip install musica
|
|
249
258
|
```
|
|
259
|
+
|
|
250
260
|
## CMake
|
|
251
261
|
```
|
|
252
262
|
$ git clone https://github.com/NCAR/musica.git
|
|
@@ -343,17 +353,13 @@ import matplotlib.pyplot as plt
|
|
|
343
353
|
df.plot(x='time.s', y=['CONC.A.mol m-3', 'CONC.B.mol m-3', 'CONC.C.mol m-3'], title='Concentration over time', ylabel='Concentration (mol m-3)', xlabel='Time (s)')
|
|
344
354
|
plt.show()
|
|
345
355
|
```
|
|
346
|
-
# Available grids
|
|
347
356
|
|
|
357
|
+
# Available grids
|
|
348
358
|
Pre-made grids for use in MUSICA are available [here](https://wiki.ucar.edu/display/MUSICA/Available+Grids).
|
|
349
359
|
|
|
350
|
-
# Contributors guide
|
|
351
|
-
Checkout our [software development plan](docs/Software%20Development%20Plan.pdf)
|
|
352
|
-
to see how you can contribute new science to MUSICA software.
|
|
353
|
-
|
|
354
360
|
## Developer Options
|
|
355
361
|
|
|
356
|
-
### Specifying dependency versions via
|
|
362
|
+
### Specifying dependency versions via parameterization at configure time
|
|
357
363
|
|
|
358
364
|
Introduced in [Pull Request #124](https://github.com/NCAR/musica/pull/124), it is possible for developers to specify which versions of various dependencies should be used. These options are currently limited to those dependencies managed via `FetchContent`. This change allows for more easily testing `musica` against changes committed in different repositories and branches. The environmental variables introduced are outlined in the following table.
|
|
359
365
|
|
|
@@ -365,6 +371,7 @@ Introduced in [Pull Request #124](https://github.com/NCAR/musica/pull/124), it i
|
|
|
365
371
|
| [MICM](https://github.com/NCAR/mcim.git) | MICM_GIT_REPOSITORY | MICM_GIT_TAG |
|
|
366
372
|
| [TUV-X](https://github.com/NCAR/tuv-x.git) | TUVX_GIT_REPOSITORY | TUVX_GIT_TAG |
|
|
367
373
|
| [PyBind11](https://github.com/pybind/pybind11) | PYBIND11_GIT_REPOSITORY | PYBIND11_GIT_TAG |
|
|
374
|
+
| [Mechanism Configuration](https://github.com/NCAR/MechanismConfiguration.git) | MECH_CONFIG_GIT_REPOSITORY | MECH_CONFIG_GIT_TAG |
|
|
368
375
|
|
|
369
376
|
#### Example Usage
|
|
370
377
|
|
|
@@ -416,41 +423,49 @@ variable `BUILD_GPU`.
|
|
|
416
423
|
BUILD_GPU=1 pip install -e .
|
|
417
424
|
```
|
|
418
425
|
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
}
|
|
456
|
-
|
|
426
|
+
# Contributing
|
|
427
|
+
|
|
428
|
+
We welcome contributions from the community! Please see our [Contributing Guide](CONTRIBUTING.md) for information on how to get involved.
|
|
429
|
+
|
|
430
|
+
For a complete list of contributors and authors, see [AUTHORS.md](AUTHORS.md).
|
|
431
|
+
|
|
432
|
+
# Citations
|
|
433
|
+
|
|
434
|
+
MUSICA can be cited in at least two ways:
|
|
435
|
+
|
|
436
|
+
1. **Cite the foundational paper** that defines the vision of the MUSICA software:
|
|
437
|
+
- [Pfister et al., 2020, Bulletin of the American Meteorological Society](https://doi.org/10.1175/BAMS-D-19-0331.1)
|
|
438
|
+
- Use the following BibTeX entry:
|
|
439
|
+
```
|
|
440
|
+
@Article { acom.software.musica-vision,
|
|
441
|
+
author = "Gabriele G. Pfister and Sebastian D. Eastham and Avelino F. Arellano and Bernard Aumont and Kelley C. Barsanti and Mary C. Barth and Andrew Conley and Nicholas A. Davis and Louisa K. Emmons and Jerome D. Fast and Arlene M. Fiore and Benjamin Gaubert and Steve Goldhaber and Claire Granier and Georg A. Grell and Marc Guevara and Daven K. Henze and Alma Hodzic and Xiaohong Liu and Daniel R. Marsh and John J. Orlando and John M. C. Plane and Lorenzo M. Polvani and Karen H. Rosenlof and Allison L. Steiner and Daniel J. Jacob and Guy P. Brasseur",
|
|
442
|
+
title = "The Multi-Scale Infrastructure for Chemistry and Aerosols (MUSICA)",
|
|
443
|
+
journal = "Bulletin of the American Meteorological Society",
|
|
444
|
+
year = "2020",
|
|
445
|
+
publisher = "American Meteorological Society",
|
|
446
|
+
address = "Boston MA, USA",
|
|
447
|
+
volume = "101",
|
|
448
|
+
number = "10",
|
|
449
|
+
doi = "10.1175/BAMS-D-19-0331.1",
|
|
450
|
+
pages= "E1743 - E1760",
|
|
451
|
+
url = "https://journals.ametsoc.org/view/journals/bams/101/10/bamsD190331.xml"
|
|
452
|
+
}
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
2. **Cite the MUSICA software and its evaluation** (MUSICAv0):
|
|
456
|
+
- [Schwantes et al., 2022, Journal of Advances in Modeling Earth Systems](https://doi.org/10.1029/2021MS002889)
|
|
457
|
+
- Use the following BibTeX entry:
|
|
458
|
+
```
|
|
459
|
+
@Article{acom.software.musica,
|
|
460
|
+
author = {Schwantes, Rebecca H. and Lacey, Forrest G. and Tilmes, Simone and Emmons, Louisa K. and Lauritzen, Peter H. and Walters, Stacy and Callaghan, Patrick and Zarzycki, Colin M. and Barth, Mary C. and Jo, Duseong S. and Bacmeister, Julio T. and Neale, Richard B. and Vitt, Francis and Kluzek, Erik and Roozitalab, Behrooz and Hall, Samuel R. and Ullmann, Kirk and Warneke, Carsten and Peischl, Jeff and Pollack, Ilana B. and Flocke, Frank and Wolfe, Glenn M. and Hanisco, Thomas F. and Keutsch, Frank N. and Kaiser, Jennifer and Bui, Thao Paul V. and Jimenez, Jose L. and Campuzano-Jost, Pedro and Apel, Eric C. and Hornbrook, Rebecca S. and Hills, Alan J. and Yuan, Bin and Wisthaler, Armin},
|
|
461
|
+
title = {Evaluating the Impact of Chemical Complexity and Horizontal Resolution on Tropospheric Ozone Over the Conterminous US With a Global Variable Resolution Chemistry Model},
|
|
462
|
+
journal = {Journal of Advances in Modeling Earth Systems},
|
|
463
|
+
volume = {14},
|
|
464
|
+
number = {6},
|
|
465
|
+
pages = {e2021MS002889},
|
|
466
|
+
doi = {https://doi.org/10.1029/2021MS002889},
|
|
467
|
+
url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2021MS002889},
|
|
468
|
+
eprint = {https://agupubs.onlinelibrary.wiley.com/doi/pdf/10.1029/2021MS002889},
|
|
469
|
+
year = {2022}
|
|
470
|
+
}
|
|
471
|
+
```
|
|
@@ -16,13 +16,21 @@ Multi-Scale Infrastructure for Chemistry and Aerosols
|
|
|
16
16
|
MUSICA is a collection of modeling software, tools, and grids, that
|
|
17
17
|
allow for robust modeling of chemistry in Earth's atmosphere.
|
|
18
18
|
|
|
19
|
-
At present the project encompasses these components
|
|
19
|
+
At present the project encompasses these core components
|
|
20
20
|
- [TUV-x](https://github.com/NCAR/tuv-x)
|
|
21
21
|
- A photolysis rate calculator
|
|
22
22
|
|
|
23
23
|
- [MICM](https://github.com/NCAR/micm)
|
|
24
24
|
- Model Independent Chemical Module
|
|
25
25
|
|
|
26
|
+
- [Mechanism Configuration](https://github.com/NCAR/MechanismConfiguration)
|
|
27
|
+
- The standardized format to describe atmospheric chemistry
|
|
28
|
+
|
|
29
|
+
These components are used to drive the MUSICA software ecosystem. This is a snapshot of how MUSICA can be used with different
|
|
30
|
+
models.
|
|
31
|
+
|
|
32
|
+

|
|
33
|
+
|
|
26
34
|
# Installation
|
|
27
35
|
MUSICA is installable via pip for Python or CMake for C++.
|
|
28
36
|
|
|
@@ -30,6 +38,7 @@ MUSICA is installable via pip for Python or CMake for C++.
|
|
|
30
38
|
```
|
|
31
39
|
pip install musica
|
|
32
40
|
```
|
|
41
|
+
|
|
33
42
|
## CMake
|
|
34
43
|
```
|
|
35
44
|
$ git clone https://github.com/NCAR/musica.git
|
|
@@ -126,17 +135,13 @@ import matplotlib.pyplot as plt
|
|
|
126
135
|
df.plot(x='time.s', y=['CONC.A.mol m-3', 'CONC.B.mol m-3', 'CONC.C.mol m-3'], title='Concentration over time', ylabel='Concentration (mol m-3)', xlabel='Time (s)')
|
|
127
136
|
plt.show()
|
|
128
137
|
```
|
|
129
|
-
# Available grids
|
|
130
138
|
|
|
139
|
+
# Available grids
|
|
131
140
|
Pre-made grids for use in MUSICA are available [here](https://wiki.ucar.edu/display/MUSICA/Available+Grids).
|
|
132
141
|
|
|
133
|
-
# Contributors guide
|
|
134
|
-
Checkout our [software development plan](docs/Software%20Development%20Plan.pdf)
|
|
135
|
-
to see how you can contribute new science to MUSICA software.
|
|
136
|
-
|
|
137
142
|
## Developer Options
|
|
138
143
|
|
|
139
|
-
### Specifying dependency versions via
|
|
144
|
+
### Specifying dependency versions via parameterization at configure time
|
|
140
145
|
|
|
141
146
|
Introduced in [Pull Request #124](https://github.com/NCAR/musica/pull/124), it is possible for developers to specify which versions of various dependencies should be used. These options are currently limited to those dependencies managed via `FetchContent`. This change allows for more easily testing `musica` against changes committed in different repositories and branches. The environmental variables introduced are outlined in the following table.
|
|
142
147
|
|
|
@@ -148,6 +153,7 @@ Introduced in [Pull Request #124](https://github.com/NCAR/musica/pull/124), it i
|
|
|
148
153
|
| [MICM](https://github.com/NCAR/mcim.git) | MICM_GIT_REPOSITORY | MICM_GIT_TAG |
|
|
149
154
|
| [TUV-X](https://github.com/NCAR/tuv-x.git) | TUVX_GIT_REPOSITORY | TUVX_GIT_TAG |
|
|
150
155
|
| [PyBind11](https://github.com/pybind/pybind11) | PYBIND11_GIT_REPOSITORY | PYBIND11_GIT_TAG |
|
|
156
|
+
| [Mechanism Configuration](https://github.com/NCAR/MechanismConfiguration.git) | MECH_CONFIG_GIT_REPOSITORY | MECH_CONFIG_GIT_TAG |
|
|
151
157
|
|
|
152
158
|
#### Example Usage
|
|
153
159
|
|
|
@@ -199,41 +205,49 @@ variable `BUILD_GPU`.
|
|
|
199
205
|
BUILD_GPU=1 pip install -e .
|
|
200
206
|
```
|
|
201
207
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
}
|
|
239
|
-
|
|
208
|
+
# Contributing
|
|
209
|
+
|
|
210
|
+
We welcome contributions from the community! Please see our [Contributing Guide](CONTRIBUTING.md) for information on how to get involved.
|
|
211
|
+
|
|
212
|
+
For a complete list of contributors and authors, see [AUTHORS.md](AUTHORS.md).
|
|
213
|
+
|
|
214
|
+
# Citations
|
|
215
|
+
|
|
216
|
+
MUSICA can be cited in at least two ways:
|
|
217
|
+
|
|
218
|
+
1. **Cite the foundational paper** that defines the vision of the MUSICA software:
|
|
219
|
+
- [Pfister et al., 2020, Bulletin of the American Meteorological Society](https://doi.org/10.1175/BAMS-D-19-0331.1)
|
|
220
|
+
- Use the following BibTeX entry:
|
|
221
|
+
```
|
|
222
|
+
@Article { acom.software.musica-vision,
|
|
223
|
+
author = "Gabriele G. Pfister and Sebastian D. Eastham and Avelino F. Arellano and Bernard Aumont and Kelley C. Barsanti and Mary C. Barth and Andrew Conley and Nicholas A. Davis and Louisa K. Emmons and Jerome D. Fast and Arlene M. Fiore and Benjamin Gaubert and Steve Goldhaber and Claire Granier and Georg A. Grell and Marc Guevara and Daven K. Henze and Alma Hodzic and Xiaohong Liu and Daniel R. Marsh and John J. Orlando and John M. C. Plane and Lorenzo M. Polvani and Karen H. Rosenlof and Allison L. Steiner and Daniel J. Jacob and Guy P. Brasseur",
|
|
224
|
+
title = "The Multi-Scale Infrastructure for Chemistry and Aerosols (MUSICA)",
|
|
225
|
+
journal = "Bulletin of the American Meteorological Society",
|
|
226
|
+
year = "2020",
|
|
227
|
+
publisher = "American Meteorological Society",
|
|
228
|
+
address = "Boston MA, USA",
|
|
229
|
+
volume = "101",
|
|
230
|
+
number = "10",
|
|
231
|
+
doi = "10.1175/BAMS-D-19-0331.1",
|
|
232
|
+
pages= "E1743 - E1760",
|
|
233
|
+
url = "https://journals.ametsoc.org/view/journals/bams/101/10/bamsD190331.xml"
|
|
234
|
+
}
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
2. **Cite the MUSICA software and its evaluation** (MUSICAv0):
|
|
238
|
+
- [Schwantes et al., 2022, Journal of Advances in Modeling Earth Systems](https://doi.org/10.1029/2021MS002889)
|
|
239
|
+
- Use the following BibTeX entry:
|
|
240
|
+
```
|
|
241
|
+
@Article{acom.software.musica,
|
|
242
|
+
author = {Schwantes, Rebecca H. and Lacey, Forrest G. and Tilmes, Simone and Emmons, Louisa K. and Lauritzen, Peter H. and Walters, Stacy and Callaghan, Patrick and Zarzycki, Colin M. and Barth, Mary C. and Jo, Duseong S. and Bacmeister, Julio T. and Neale, Richard B. and Vitt, Francis and Kluzek, Erik and Roozitalab, Behrooz and Hall, Samuel R. and Ullmann, Kirk and Warneke, Carsten and Peischl, Jeff and Pollack, Ilana B. and Flocke, Frank and Wolfe, Glenn M. and Hanisco, Thomas F. and Keutsch, Frank N. and Kaiser, Jennifer and Bui, Thao Paul V. and Jimenez, Jose L. and Campuzano-Jost, Pedro and Apel, Eric C. and Hornbrook, Rebecca S. and Hills, Alan J. and Yuan, Bin and Wisthaler, Armin},
|
|
243
|
+
title = {Evaluating the Impact of Chemical Complexity and Horizontal Resolution on Tropospheric Ozone Over the Conterminous US With a Global Variable Resolution Chemistry Model},
|
|
244
|
+
journal = {Journal of Advances in Modeling Earth Systems},
|
|
245
|
+
volume = {14},
|
|
246
|
+
number = {6},
|
|
247
|
+
pages = {e2021MS002889},
|
|
248
|
+
doi = {https://doi.org/10.1029/2021MS002889},
|
|
249
|
+
url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2021MS002889},
|
|
250
|
+
eprint = {https://agupubs.onlinelibrary.wiley.com/doi/pdf/10.1029/2021MS002889},
|
|
251
|
+
year = {2022}
|
|
252
|
+
}
|
|
253
|
+
```
|