Vertical profile plot

Generate vertical profile of region-averaged field.

References

General functionality is provided using CSET recipe generic_level_domain_mean_vertical_profile_series.yaml

The following CSET operators are used:

Using cset bake on the command line

  • Access recipe file using cset cookbook.

  • Set required recipe inputs on command line.

Example to generate vertical profile plot of domain averaged air_temperature on pressure levels for any number of input models:

cset cookbook generic_level_domain_mean_vertical_profile_series.yaml
cset -v bake -i "/path/to/input/data1" "..." "/path/to/input/dataN" \
             -o "./output_path" \
             -r generic_level_domain_mean_vertical_profile_series.yaml \
             --VARNAME="air_temperature" \
             --MODEL_NAME="['my_model_label1', '...', 'my_model_labelN']" \
             --LEVELTYPE="pressure" \
             --METHOD="SEQ" \
             --SUBAREA_TYPE='None' --SUBAREA_EXTENT='None' --SUBAREA_NAME=''

Configuring the cset_workflow

  • Update workflow configuration settings via rose edit GUI or in rose-suite.conf file.

  • Complete General setup options and Cycling and Model options details - see Configure the workflow.

  • To plot vertical profile of fields defined on pressure levels, set required configuration options on Diagnostics / Pressure level fields panel:

    PRESSURE_LEVEL_FIELDS = ["air_temperature", ...]
    PRESSURE_LEVELS = ['1000', '850', '500', ...]
    PROFILE_PLEVEL = True
    
  • To plot vertical profile of fields defined on model levels, set required configuration options on Diagnostics / Model level fields panel:

    MODEL_LEVEL_FIELDS = ["air_temperature", ...]
    MODEL_LEVELS = [1, 2, 3, ...]
    PROFILE_MLEVEL = True
    

Example python code

air_temperature  [2021-04-10 21:00:00]
from CSET import sample_data_path
from CSET.operators import collapse, plot, read

# Set paths to input data
filename1 = sample_data_path("profile_air_temperature_1.nc")
filename2 = sample_data_path("profile_air_temperature_2.nc")

# Read selected variable(s) of interest for 2 models
cubes = read.read_cubes(
    [filename1, filename2],
    ["air_temperature"],
    model_names=["model_fcst_1", "model_fcst_2"],
)

# Collapse input data over selected dimensions
collapsed_cubes = collapse.collapse(
    cubes, ["grid_longitude", "grid_latitude", "time"], "MEAN"
)

# Plot domain mean profile using plot_vertical_line_series
plot.plot_vertical_line_series(collapsed_cubes, series_coordinate="pressure")

Total running time of the script: (0 minutes 0.299 seconds)

Gallery generated by Sphinx-Gallery