diff --git a/esmvalcore/cmor/tables/custom/CMOR_coordinates.dat b/esmvalcore/cmor/tables/custom/CMOR_coordinates.dat index 490ddab6f5..6f704c9b2e 100644 --- a/esmvalcore/cmor/tables/custom/CMOR_coordinates.dat +++ b/esmvalcore/cmor/tables/custom/CMOR_coordinates.dat @@ -104,3 +104,47 @@ type: double must_have_bounds: yes !---------------------------------- ! + +!============ +axis_entry: p700 +!============ +!---------------------------------- +! Axis attributes: +!---------------------------------- +standard_name: air_pressure +units: Pa +axis: Z ! X, Y, Z, T (default: undeclared) +positive: down ! up or down (default: undeclared) +long_name: pressure +!---------------------------------- +! Additional axis information: +!---------------------------------- +out_name: plev +stored_direction: decreasing +type: double +value: 70000. ! of scalar (singleton) dimension +must_have_bounds: no +!---------------------------------- +! + +!============ +axis_entry: p1000 +!============ +!---------------------------------- +! Axis attributes: +!---------------------------------- +standard_name: air_pressure +units: Pa +axis: Z ! X, Y, Z, T (default: undeclared) +positive: down ! up or down (default: undeclared) +long_name: pressure +!---------------------------------- +! Additional axis information: +!---------------------------------- +out_name: plev +stored_direction: decreasing +type: double +value: 100000. ! of scalar (singleton) dimension +must_have_bounds: no +!---------------------------------- +! diff --git a/esmvalcore/cmor/tables/custom/CMOR_ctp.dat b/esmvalcore/cmor/tables/custom/CMOR_ctp.dat new file mode 100644 index 0000000000..1073118275 --- /dev/null +++ b/esmvalcore/cmor/tables/custom/CMOR_ctp.dat @@ -0,0 +1,19 @@ +SOURCE: CMIP5 +!============ +variable_entry: ctp +!============ +modeling_realm: atmos +!---------------------------------- +! Variable attributes: +!---------------------------------- +standard_name: +units: hPa +cell_methods: time: mean +cell_measures: area: areacella +long_name: Cloud Top Pressure +!---------------------------------- +! Additional variable information: +!---------------------------------- +dimensions: longitude latitude time +type: real +!---------------------------------- diff --git a/esmvalcore/cmor/tables/custom/CMOR_reff.dat b/esmvalcore/cmor/tables/custom/CMOR_reff.dat new file mode 100644 index 0000000000..284670fc77 --- /dev/null +++ b/esmvalcore/cmor/tables/custom/CMOR_reff.dat @@ -0,0 +1,19 @@ +SOURCE: CMIP6 +!============ +variable_entry: reff +!============ +modeling_realm: atmos +!---------------------------------- +! Variable attributes: +!---------------------------------- +standard_name: +units: um +cell_methods: time: mean +cell_measures: area: areacella +long_name: Cloud Effective Radius +!---------------------------------- +! Additional variable information: +!---------------------------------- +dimensions: longitude latitude time +type: real +!---------------------------------- diff --git a/esmvalcore/cmor/tables/custom/CMOR_ta1000.dat b/esmvalcore/cmor/tables/custom/CMOR_ta1000.dat new file mode 100644 index 0000000000..7193a96b2e --- /dev/null +++ b/esmvalcore/cmor/tables/custom/CMOR_ta1000.dat @@ -0,0 +1,21 @@ +SOURCE: CMIP5 +!============ +variable_entry: ta1000 +!============ +modeling_realm: atmos +!---------------------------------- +! Variable attributes: +!---------------------------------- +standard_name: air_temperature +units: K +cell_methods: time: mean +cell_measures: area: areacella +long_name: Air Temperature at 1000hPa +!---------------------------------- +! Additional variable information: +!---------------------------------- +dimensions: longitude latitude time p1000 +out_name: ta1000 +type: real +!---------------------------------- +! diff --git a/esmvalcore/cmor/tables/custom/CMOR_wap700.dat b/esmvalcore/cmor/tables/custom/CMOR_wap700.dat new file mode 100644 index 0000000000..3061fc2cd0 --- /dev/null +++ b/esmvalcore/cmor/tables/custom/CMOR_wap700.dat @@ -0,0 +1,22 @@ +SOURCE: CMIP5 +!============ +variable_entry: wap700 +!============ +modeling_realm: atmos +!---------------------------------- +! Variable attributes: +!---------------------------------- +standard_name: lagrangian_tendency_of_air_pressure +units: Pa s-1 +cell_methods: time: mean +cell_measures: area: areacella +long_name: Omega (=dp/dt) at 700hPa +comment: at 700 hPa level; commonly referred to as ""omega"", this represents the vertical component of velocity in pressure coordinates (positive down) +!---------------------------------- +! Additional variable information: +!---------------------------------- +dimensions: longitude latitude time p700 +out_name: wap700 +type: real +!---------------------------------- +! diff --git a/tests/integration/cmor/test_table.py b/tests/integration/cmor/test_table.py index 680e5b4c01..c76fa82b96 100644 --- a/tests/integration/cmor/test_table.py +++ b/tests/integration/cmor/test_table.py @@ -494,6 +494,42 @@ def test_get_variable_tosStderr(self): 'Sea Surface Temperature Error') self.assertEqual(var.units, 'K') + def test_get_variable_ctp(self): + """Get ctp variable.""" + CustomInfo() + var = self.variables_info.get_variable('day', 'ctp') + self.assertEqual(var.short_name, 'ctp') + self.assertEqual(var.long_name, + 'Cloud Top Pressure') + self.assertEqual(var.units, 'hPa') + + def test_get_variable_reff(self): + """Get reff variable.""" + CustomInfo() + var = self.variables_info.get_variable('day', 'reff') + self.assertEqual(var.short_name, 'reff') + self.assertEqual(var.long_name, + 'Cloud Effective Radius') + self.assertEqual(var.units, 'um') + + def test_get_variable_ta1000(self): + """Get ta1000 variable.""" + CustomInfo() + var = self.variables_info.get_variable('day', 'ta1000') + self.assertEqual(var.short_name, 'ta1000') + self.assertEqual(var.long_name, + 'Air Temperature at 1000hPa') + self.assertEqual(var.units, 'K') + + def test_get_variable_wap700(self): + """Get wap700 variable.""" + CustomInfo() + var = self.variables_info.get_variable('day', 'wap700') + self.assertEqual(var.short_name, 'wap700') + self.assertEqual(var.long_name, + 'Omega (=dp/dt) at 700hPa') + self.assertEqual(var.units, 'Pa s-1') + @pytest.mark.parametrize( 'project,mip,short_name,frequency',