Skip to content

Commit

Permalink
Add plots of covariant velocity component errors
Browse files Browse the repository at this point in the history
  • Loading branch information
dennisYatunin committed Jul 16, 2024
1 parent 4cac473 commit 9ae6551
Show file tree
Hide file tree
Showing 16 changed files with 201 additions and 140 deletions.
200 changes: 100 additions & 100 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -893,60 +893,60 @@ steps:
# slurm_gpus: 1
# slurm_mem: 20G

# - label: "GPU: Analytic Huge Schar Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_huge_schar_mountain_test.yml
# --job_id gpu_plane_analytic_huge_schar_mountain_test
# artifact_paths: "gpu_plane_analytic_huge_schar_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Huge Schar Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_huge_schar_mountain_test.yml
--job_id gpu_plane_analytic_huge_schar_mountain_test
artifact_paths: "gpu_plane_analytic_huge_schar_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Big Schar Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_big_schar_mountain_test.yml
# --job_id gpu_plane_analytic_big_schar_mountain_test
# artifact_paths: "gpu_plane_analytic_big_schar_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Big Schar Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_big_schar_mountain_test.yml
--job_id gpu_plane_analytic_big_schar_mountain_test
artifact_paths: "gpu_plane_analytic_big_schar_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Schar Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_schar_mountain_test.yml
# --job_id gpu_plane_analytic_schar_mountain_test
# artifact_paths: "gpu_plane_analytic_schar_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Schar Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_schar_mountain_test.yml
--job_id gpu_plane_analytic_schar_mountain_test
artifact_paths: "gpu_plane_analytic_schar_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Small Schar Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_small_schar_mountain_test.yml
# --job_id gpu_plane_analytic_small_schar_mountain_test
# artifact_paths: "gpu_plane_analytic_small_schar_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Small Schar Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_small_schar_mountain_test.yml
--job_id gpu_plane_analytic_small_schar_mountain_test
artifact_paths: "gpu_plane_analytic_small_schar_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Tiny Schar Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_tiny_schar_mountain_test.yml
# --job_id gpu_plane_analytic_tiny_schar_mountain_test
# artifact_paths: "gpu_plane_analytic_tiny_schar_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Tiny Schar Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_tiny_schar_mountain_test.yml
--job_id gpu_plane_analytic_tiny_schar_mountain_test
artifact_paths: "gpu_plane_analytic_tiny_schar_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

- label: "GPU: Analytic Teeny Tiny Schar Mountain Test (2D)"
command: >
Expand Down Expand Up @@ -981,60 +981,60 @@ steps:
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Schar Mountain Test (2D, Higher Horizontal Resolution)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_schar_mountain_high_horz_res_test.yml
# --job_id gpu_plane_analytic_schar_mountain_high_horz_res_test
# artifact_paths: "gpu_plane_analytic_schar_mountain_high_horz_res_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Schar Mountain Test (2D, Higher Horizontal Resolution)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_schar_mountain_high_horz_res_test.yml
--job_id gpu_plane_analytic_schar_mountain_high_horz_res_test
artifact_paths: "gpu_plane_analytic_schar_mountain_high_horz_res_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Schar Mountain Test (2D, Higher Vertical Resolution)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_schar_mountain_high_vert_res_test.yml
# --job_id gpu_plane_analytic_schar_mountain_high_vert_res_test
# artifact_paths: "gpu_plane_analytic_schar_mountain_high_vert_res_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Schar Mountain Test (2D, Higher Vertical Resolution)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_schar_mountain_high_vert_res_test.yml
--job_id gpu_plane_analytic_schar_mountain_high_vert_res_test
artifact_paths: "gpu_plane_analytic_schar_mountain_high_vert_res_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Cosine Mountain Test (2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/plane_analytic_cosine_mountain_test.yml
# --job_id gpu_plane_analytic_cosine_mountain_test
# artifact_paths: "gpu_plane_analytic_cosine_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Cosine Mountain Test (2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/plane_analytic_cosine_mountain_test.yml
--job_id gpu_plane_analytic_cosine_mountain_test
artifact_paths: "gpu_plane_analytic_cosine_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Cosine Mountain Test (Extruded 2D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/extruded_plane_analytic_cosine_mountain_test.yml
# --job_id gpu_extruded_plane_analytic_cosine_mountain_test
# artifact_paths: "gpu_extruded_plane_analytic_cosine_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Cosine Mountain Test (Extruded 2D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/extruded_plane_analytic_cosine_mountain_test.yml
--job_id gpu_extruded_plane_analytic_cosine_mountain_test
artifact_paths: "gpu_extruded_plane_analytic_cosine_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - label: "GPU: Analytic Cosine Mountain Test (3D)"
# command: >
# julia --color=yes --project=examples examples/hybrid/driver.jl
# --config_file $CONFIG_PATH/box_analytic_cosine_mountain_test.yml
# --job_id gpu_box_analytic_cosine_mountain_test
# artifact_paths: "gpu_box_analytic_cosine_mountain_test/output_active/*"
# env:
# CLIMACOMMS_DEVICE: "CUDA"
# agents:
# slurm_gpus: 1
- label: "GPU: Analytic Cosine Mountain Test (3D)"
command: >
julia --color=yes --project=examples examples/hybrid/driver.jl
--config_file $CONFIG_PATH/box_analytic_cosine_mountain_test.yml
--job_id gpu_box_analytic_cosine_mountain_test
artifact_paths: "gpu_box_analytic_cosine_mountain_test/output_active/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1

# - group: "Benchmarks"
# steps:
Expand Down
2 changes: 1 addition & 1 deletion config/model_configs/box_analytic_cosine_mountain_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ toml: [toml/analytic_mountain_test.toml]
analytic_check: true
output_default_diagnostics: false
diagnostics:
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror]
- short_name: [orog, ua, wa, uapredicted, wapredicted, uaerror, waerror, c1error, c3error]
period: 1hours
57 changes: 30 additions & 27 deletions post_processing/ci_plots.jl
Original file line number Diff line number Diff line change
Expand Up @@ -735,16 +735,36 @@ function make_plots(
Val(:gpu_plane_analytic_schar_mountain_test),
Val(:gpu_plane_analytic_small_schar_mountain_test),
Val(:gpu_plane_analytic_tiny_schar_mountain_test),
Val{:gpu_plane_analytic_teeny_tiny_schar_mountain_test},
Val{:gpu_plane_analytic_teeny_teeny_tiny_schar_mountain_test},
Val{:gpu_plane_analytic_teeny_teeny_teeny_tiny_schar_mountain_test},
Val(:gpu_plane_analytic_teeny_tiny_schar_mountain_test),
Val(:gpu_plane_analytic_teeny_teeny_tiny_schar_mountain_test),
Val(:gpu_plane_analytic_teeny_teeny_teeny_tiny_schar_mountain_test),
Val(:gpu_plane_analytic_schar_mountain_high_horz_res_test),
Val(:gpu_plane_analytic_schar_mountain_high_vert_res_test),
)

short_names =
["ua", "wa", "uapredicted", "wapredicted", "uaerror", "waerror"]
slice_summary_vars = Iterators.flatmap(short_names) do short_name
error_short_names = ["uaerror", "waerror", "c1error", "c3error"]
summary_short_names =
["ua", "wa", "uapredicted", "wapredicted", error_short_names...]
closeup_summary_short_names = ["wa", "wapredicted", "waerror", "c3error"]

rms_error_vars = Iterators.flatmap((level_rms, column_rms)) do rms_func
Iterators.flatmap(error_short_names) do short_name
map(simdirs) do simdir
data = get(simdir; short_name)
data = window(data, "z_reference"; left = 0, right = 13e3)
rms_func(data)
end
end
end
orog_vars = map_comparison(get, simdirs, ["orog"])
make_plots_generic(
output_paths,
[rms_error_vars..., orog_vars...],
time = 24 * 60 * 60,
output_name = "rms_errors_24h",
)

slice_summary_vars = Iterators.flatmap(summary_short_names) do short_name
hours_to_plot = short_name in ("ua", "wa") ? (1, 2, 5, 24) : (24,)
Iterators.flatmap(hours_to_plot) do n_hours
map(simdirs) do simdir
Expand All @@ -763,8 +783,8 @@ function make_plots(
)

if is_schar_mountain
zoomed_slice_vars =
Iterators.flatmap(["wa", "wapredicted", "waerror"]) do short_name
closeup_slice_summary_vars =
Iterators.flatmap(closeup_summary_short_names) do short_name
map(simdirs) do simdir
data = get(simdir; short_name)
data = window(data, "x"; left = 40e3, right = 60e3)
Expand All @@ -775,29 +795,12 @@ function make_plots(
end
make_plots_generic(
output_paths,
collect(zoomed_slice_vars);
collect(closeup_slice_summary_vars);
plot_fn = plot_contours!,
output_name = "zoomed_slice_24h",
output_name = "closeup_slice_summary_24h",
)
end

rms_error_vars = Iterators.flatmap((level_rms, column_rms)) do rms_func
Iterators.flatmap(["uaerror", "waerror"]) do short_name
map(simdirs) do simdir
data = get(simdir; short_name)
data = window(data, "z_reference"; left = 0, right = 13e3)
rms_func(data)
end
end
end
orog_vars = map_comparison(get, simdirs, ["orog"])
make_plots_generic(
output_paths,
[rms_error_vars..., orog_vars...],
time = 24 * 60 * 60,
output_name = "rms_errors_24h",
)

# collected_vars = collect(slice_summary_vars)
# (; dims, dim_attributes, dim2index, index2dim) = collected_vars[1]
# u_data = collected_vars[4].data
Expand Down
Loading

0 comments on commit 9ae6551

Please sign in to comment.