You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Then run the simulation with the following command:
30
30
```
31
-
julia --project=examples examples/hybrid/driver.jl --config_file path_to_mysim.yml
31
+
julia --project=.buildkite .buildkite/ci_driver.jl --config_file path_to_mysim.yml
32
32
```
33
33
34
34
The configuration in the yaml file above can be changed to adjust to the kind of simulation desired. Options such as t\_end can be increased to the desired simulation time. Other arguments such as radiation type can be changed based on the options in `default_config.yml`.
35
35
36
36
After a simulation is ran the output files should be available in the output folder, where hdf5 files store all the simulation's data, and two mp4s should be produced with a vertical temperature profile and a vertical wind profile which change over time. If you want to quickly access data from the final day of the simulation simply add a -i to the command line input, like so:
37
37
38
38
```
39
-
julia -i --project=examples examples/hybrid/driver.jl --config_file filepath
39
+
julia -i --project=.buildkite .buildkite/ci_driver.jl --config_file filepath
40
40
```
41
41
42
42
This will bring you into a julia environment where the current state of the simulation can be accessed. Run propertynames(Y) and propertynames(p) to see accessible values, some examples:
Copy file name to clipboardExpand all lines: docs/src/single_column_prospect.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,9 +15,9 @@
15
15
16
16
For example, to run the BOMEX test case execute the following:
17
17
```bash
18
-
julia --project=examples examples/hybrid/driver.jl --config_file config/model_configs/prognostic_edmfx_bomex_column.yml --job_id bomex
18
+
julia --project=.buildkite .buildkite/ci_driver.jl --config_file config/model_configs/prognostic_edmfx_bomex_column.yml --job_id bomex
19
19
```
20
-
It may also be helpful to run in interactive mode to be able to examine the simulation object, debug, and develop the code further. To enter debug mode run `julia --project=examples` and then in the REPL run:
20
+
It may also be helpful to run in interactive mode to be able to examine the simulation object, debug, and develop the code further. To enter debug mode run `julia --project=.buildkite` and then in the REPL run:
21
21
```julia
22
22
using Revise # if you are developing ClimaAtmos
23
23
import ClimaAtmos as CA
@@ -33,7 +33,7 @@ Currently three versions of the externally driven single column model, `GCM` dri
33
33
### GCM-Driven Case
34
34
For the `GCM` driven case we can run the experiment using the config file `config/model_configs/prognostic_edmfx_gcmdriven_column.yml` by running:
35
35
```bash
36
-
julia --project=examples examples/hybrid/driver.jl --config_file config/model_configs/prognostic_edmfx_gcmdriven_column.yml --job_id gcm_driven_scm
36
+
julia --project=.buildkite .buildkite/ci_driver.jl --config_file config/model_configs/prognostic_edmfx_gcmdriven_column.yml --job_id gcm_driven_scm
37
37
```
38
38
In the config the following settings are particularly important:
39
39
```YAML
@@ -64,7 +64,7 @@ By this point, the first 4 entries are intuitive. We need to dispatch over each
64
64
65
65
The data is generated by downloading from ECMWF and further documentation for ERA5 data download can be found either directly on the ECMWF page and `ClimaArtifacts.jl`. Note that the profiles, surface temperature, and surface fluxes cannot be obtained from a single request and so together we need 3 files for all the data. We include a script at `src/utils/era5_observations_to_forcing_file.jl` which extracts the profiles and computes the tendencies needed for the simulation from the raw ERA5 reanalysis files. We store the observations directly into an artifact `era5_hourly_atmos_processed` to eliminate the need to reprocess specific sites and locations. This setup means that users are free to choose sites globally at any time at which ERA5 data is available. Unfortunately, global hourly renanalysis is too large to store in an artifact and so we have currently only provided support for the first 5 days of July 2007 in the tropical Pacific, stored in `era5_hourly_atmos_raw`, only available on the `clima` and Caltech `HPC` servers. The test case can be run using:
66
66
```bash
67
-
julia --project=examples examples/hybrid/driver.jl --config_file config/model_configs/prognostic_edmfx_tv_era5driven_column.yml --job_id era5driven
67
+
julia --project=.buildkite .buildkite/ci_driver.jl --config_file config/model_configs/prognostic_edmfx_tv_era5driven_column.yml --job_id era5driven
68
68
```
69
69
70
70
#### Monthly Averaged Forcing
@@ -79,7 +79,7 @@ site_latitude: 17.0
79
79
site_longitude: -149.0
80
80
```
81
81
```bash
82
-
julia --project=examples examples/hybrid/driver.jl --config_file config/model_configs/prognostic_edmfx_diurnal_scm_imp.yml --job_id bomex
82
+
julia --project=.buildkite .buildkite/ci_driver.jl --config_file config/model_configs/prognostic_edmfx_diurnal_scm_imp.yml --job_id bomex
83
83
```
84
84
85
85
#### Running the Reanalysis-driven cases at different times and locations
Copy file name to clipboardExpand all lines: reproducibility_tests/README.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ This document outlines how reproducibility tests work and how to update PRs to p
4
4
5
5
## The basic idea of how reproducibility tests work
6
6
7
-
When a particular job opts-in to testing reproducibilitys (using the `reproducibility_test` command line option and the `julia --project=examples reproducibility_tests/test_mse.jl` command), we compare the solution dataset (the prognostic state at the last timestep) of that job with a reference dataset.
7
+
When a particular job opts-in to testing reproducibilitys (using the `reproducibility_test` command line option and the `julia --project=.buildkite reproducibility_tests/test_mse.jl` command), we compare the solution dataset (the prognostic state at the last timestep) of that job with a reference dataset.
8
8
9
9
We don't always have a reference to compare against, due to what we'll call **failure modes**. For a full list of failure modes, see [Failure modes](#Failure-modes), but here are a few examples:
10
10
@@ -45,7 +45,7 @@ Note: We currently do not prepend the folder names by the reference counter, how
45
45
46
46
## Allowing flaky tests
47
47
48
-
Users can add the flag `test_broken_report_flakiness` to the `test_mse.jl` script: `julia --project=examples reproducibility_tests/test_mse.jl --test_broken_report_flakiness true`, which will have the following behavior:
48
+
Users can add the flag `test_broken_report_flakiness` to the `test_mse.jl` script: `julia --project=.buildkite reproducibility_tests/test_mse.jl --test_broken_report_flakiness true`, which will have the following behavior:
49
49
50
50
- If the test is not reproducible (i.e., flaky) when compared against `N` comparable references, then the test will pass and be reported as broken.
51
51
- If the test is reproducible when compared against `N` comparable references, then the test will fail `@test_broken`, and users will be asked to fix the broken test. At which point you can remove the `--test_broken_report_flakiness true` flag from that particular job, reinforcing a strict reproducibility constraint.
@@ -64,7 +64,7 @@ To update the mse tables:
64
64
65
65
To add a new reproducibility test:
66
66
67
-
- Set the command-line `reproducibility_test` to true, and add `julia --color=yes --project=examples reproducibility_tests/test_mse.jl --job_id [job_id] --out_dir [job_id]` as a separate command for the new (or existing) job
67
+
- Set the command-line `reproducibility_test` to true, and add `julia --color=yes --project=.buildkite reproducibility_tests/test_mse.jl --job_id [job_id] --out_dir [job_id]` as a separate command for the new (or existing) job
68
68
- Copy the `all_best_mse` dict template from the job's log
69
69
- Paste the `all_best_mse` dict template into `reproducibility_test/reproducibility_test_job_ids.jl`
70
70
@@ -90,7 +90,7 @@ We cannot (easily) compare the output with a reference if we change the spatial
90
90
91
91
## A detailed procedure of how reproducibility tests are performed
92
92
93
-
Reprodicibility tests are performed at the end of `examples/hybrid/driver.jl`, after a simulation completes, and relies on a unique job id (`job_id`). Here is an outline of the reproducibility test procedure:
93
+
Reprodicibility tests are performed at the end of `.buildkite/ci_driver.jl`, after a simulation completes, and relies on a unique job id (`job_id`). Here is an outline of the reproducibility test procedure:
94
94
95
95
0) Run a simulation, with a particular `job_id`, to the final time.
96
96
1) Load a list of job IDs in `reproducibility_test_job_ids.jl`.
0 commit comments