/ClimaAtmos.jl

ClimaAtmos.jl is a library for building atmospheric circulation models that is designed from the outset to leverage data assimilation and machine learning tools. We welcome contributions!

Primary LanguageJuliaApache License 2.0Apache-2.0

ClimaAtmos.jl

Atmosphere components of the CliMA software stack.

docsbuild dev ghaci buildkite codecov discussions col-prac

ClimaAtmos.jl is the atmosphere components of the CliMA software stack. We strive for a user interface that makes ClimaAtmos.jl as friendly and intuitive to use as possible, allowing users to focus on the science.

Installation instructions

Recommended Julia: Stable release v1.10.0

ClimaAtmos.jl is a registered Julia package. To install

julia> using Pkg

julia> Pkg.add("ClimaAtmos")

Alternatively, download the ClimaAtmos source with:

$ git clone https://github.com/CliMA/ClimaAtmos.jl.git

Now change into the ClimaAtmos.jl directory with

$ cd ClimaAtmos.jl

To use ClimaAtmos, you need to instantiate all dependencies with:

$ julia --project
julia> ]
(ClimaAtmos) pkg> instantiate

Running instructions

Currently, the simulations are stored in the test folder. Run all the test cases with the following commands.

First, we instantiate the test environment, by launching (from ClimaAtmos.jl/) Julia with the test/ environment active:

$ julia --project=test

Then, once in the Julia REPL, we switch to the package manager by pressing ]:

julia> ]

Once in the package manager, we develop the ClimaAtmos.jl/ directory:

test> dev .

Now, we can switch back to the Julia REPL by escaping and run the test suite interactively:

julia> include(joinpath("test", "runtests.jl"))

Or escape the Julia REPL and run from the command line:

$ julia --project=test test/runtests.jl

If you run into issues when running the test suite this way, please open an issue.

Contributing

If you're interested in contributing to the development of ClimaAtmos we want your help no matter how big or small a contribution you make! It's always great to have new people look at the code with fresh eyes: you will see errors that other developers have missed.

Let us know by opening an issue if you'd like to work on a new feature.

Here is the rule of thumb coding style and unicode usage restrictions.

For more information, check out our contributor's guide.