From b944eea4ed9120ad94d3e2a86b4813afc26a32ec Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 9 Nov 2023 09:53:10 +0100 Subject: [PATCH 01/33] add variable proxydryss to ebas reading --- pyaerocom/data/ebas_config.ini | 3 +++ pyaerocom/data/variables.ini | 5 +++++ pyaerocom/io/read_ebas.py | 2 ++ 3 files changed, 10 insertions(+) diff --git a/pyaerocom/data/ebas_config.ini b/pyaerocom/data/ebas_config.ini index 79e8ab710..69f41d642 100644 --- a/pyaerocom/data/ebas_config.ini +++ b/pyaerocom/data/ebas_config.ini @@ -505,6 +505,9 @@ requires=concprcpso4 [proxydryoxs] requires=concprcpoxs +[proxydryss] +requires=concprcpoxs + [proxydryso2] requires=concprcpoxs diff --git a/pyaerocom/data/variables.ini b/pyaerocom/data/variables.ini index dbe323b4b..9ab72ec0b 100644 --- a/pyaerocom/data/variables.ini +++ b/pyaerocom/data/variables.ini @@ -5665,6 +5665,11 @@ description=proxy dry deposition of total sulphur mass unit = mg S m-2 d-1 minimum=0 +[proxydryss] +description=proxy dry deposition of sea salt mass +unit = mg m-2 d-1 +minimum=0 + [proxydryso2] description=proxy dry deposition of SO2 unit = mg S m-2 d-1 diff --git a/pyaerocom/io/read_ebas.py b/pyaerocom/io/read_ebas.py index ae36bf358..02ea2300d 100644 --- a/pyaerocom/io/read_ebas.py +++ b/pyaerocom/io/read_ebas.py @@ -249,6 +249,7 @@ class ReadEbas(ReadUngriddedBase): # proxy drydep # Suphar based "proxydryoxs": ["concprcpoxs", "pr"], + "proxydryss": ["concprcpoxs", "pr"], "proxydryso2": ["concprcpoxs", "pr"], "proxydryso4": ["concprcpoxs", "pr"], # Oxidized nitrogen based @@ -319,6 +320,7 @@ class ReadEbas(ReadUngriddedBase): # proxy dry dep # Suphar based "proxydryoxs": compute_wetoxs_from_concprcpoxs, + "proxydryss": compute_wetoxs_from_concprcpoxs, "proxydryso2": compute_wetoxs_from_concprcpoxs, "proxydryso4": compute_wetoxs_from_concprcpoxs, # Oxidized nitrogen based From bf9e234f51f85d08ac2e21f38922eeee54afab3d Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 9 Nov 2023 10:18:40 +0100 Subject: [PATCH 02/33] add variable proxydryss to ebas reading --- tests/io/test_read_ebas.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/io/test_read_ebas.py b/tests/io/test_read_ebas.py index c5acbdb2b..598644d85 100644 --- a/tests/io/test_read_ebas.py +++ b/tests/io/test_read_ebas.py @@ -331,6 +331,7 @@ def test_PROVIDES_VARIABLES(reader: ReadEbas): "proxydryno3f", "proxydryo3", "proxydryoxs", + "proxydryss", "proxydrypm10", "proxydrypm25", "proxydryrdn", From a610c6782576181a3ecc36d5a6f1c44115042574 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 9 Nov 2023 12:17:15 +0100 Subject: [PATCH 03/33] add variable proxydryss --- pyaerocom/aeroval/glob_defaults.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 00f57cd62..f2090552e 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -266,6 +266,7 @@ "proxydryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 0.30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "proxydryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryno2": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", @@ -630,6 +631,7 @@ ts=["Surface Temperature", "3D", "Temperature"], # proxy drydep proxydryoxs=["proxyDryOXS", "3D", "Deposition"], + proxydryss=["proxyDrySS", "3D", "Deposition"], proxydryso2=["proxyDrySO2", "3D", "Deposition"], proxydryso4=["proxyDrySO4", "3D", "Deposition"], proxydryoxn=["proxyDryOXN", "3D", "Deposition"], From 08277d9cd73dd52a842fd218fe76c53187d64d8c Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 9 Nov 2023 14:07:32 +0100 Subject: [PATCH 04/33] add variables proxydryna, depna --- pyaerocom/aeroval/glob_defaults.py | 21 ++++++++++++++++++--- pyaerocom/data/ebas_config.ini | 5 ++++- pyaerocom/data/variables.ini | 17 +++++++++++++++++ pyaerocom/io/read_ebas.py | 8 +++++--- pyaerocom/plugins/ipcforests/reader.py | 6 +++++- tests/io/test_read_ebas.py | 1 + 6 files changed, 50 insertions(+), 8 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index f2090552e..afda08a4a 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -267,6 +267,7 @@ "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "proxydryna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryno2": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", @@ -311,9 +312,11 @@ "colmap": "coolwarm", }, "depoxs": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, } @@ -614,14 +617,25 @@ concCocpm10=["OC PM10", "3D", "Particle concentration"], concdust=["Dust concentration", "3D", "Particle concentration"], # Depositions + depoxs=["TotDepOXS", "3D", "Deposition"], + deprdn=["TotDepRDN", "3D", "Deposition"], + depoxn=["TotDepOXN", "3D", "Deposition"], + depoxsf=["TotDepOXSforr", "3D", "Deposition"], + deprdnf=["TotDepRDNforr", "3D", "Deposition"], + depoxnf=["TotDepOXNforr", "3D", "Deposition"], + depss=["TotDepSS", "3D", "Deposition"], + depssf=["TotDepSSforr", "3D", "Deposition"], + depna=["TotDepSodium", "3D", "Deposition"], + depnaf=["TotDepSodiumforr", "3D", "Deposition"], drysox=["DryOXS", "3D", "Deposition"], - dryoxs=["FakeDryOXS", "3D", "Deposition"], - dryoxn=["FakeDryOXN", "3D", "Deposition"], - dryrdn=["FakeDryRDN", "3D", "Deposition"], + dryoxs=["DryOXS", "3D", "Deposition"], + dryoxn=["DryOXN", "3D", "Deposition"], + dryrdn=["DryRDN", "3D", "Deposition"], depdust=["TotDustDep", "3D", "Deposition"], drydust=["DryDustDep", "3D", "Deposition"], wetdust=["WetDustDep", "3D", "Deposition"], wetoxs=["WetOXS", "3D", "Deposition"], + wetna=["WetSodium", "3D", "Deposition"], wetoxsc=["WetOXScorr", "3D", "Deposition"], wetoxst=["WetOXStot", "3D", "Deposition"], wetoxn=["WetOXN", "3D", "Deposition"], @@ -632,6 +646,7 @@ # proxy drydep proxydryoxs=["proxyDryOXS", "3D", "Deposition"], proxydryss=["proxyDrySS", "3D", "Deposition"], + proxydryna=["proxyDrySodium", "3D", "Deposition"], proxydryso2=["proxyDrySO2", "3D", "Deposition"], proxydryso4=["proxyDrySO4", "3D", "Deposition"], proxydryoxn=["proxyDryOXN", "3D", "Deposition"], diff --git a/pyaerocom/data/ebas_config.ini b/pyaerocom/data/ebas_config.ini index 69f41d642..0e323a68c 100644 --- a/pyaerocom/data/ebas_config.ini +++ b/pyaerocom/data/ebas_config.ini @@ -506,7 +506,10 @@ requires=concprcpso4 requires=concprcpoxs [proxydryss] -requires=concprcpoxs +requires=concprcpna + +[proxydryna] +requires=concprcpna [proxydryso2] requires=concprcpoxs diff --git a/pyaerocom/data/variables.ini b/pyaerocom/data/variables.ini index 9ab72ec0b..2bc947b6f 100644 --- a/pyaerocom/data/variables.ini +++ b/pyaerocom/data/variables.ini @@ -5555,6 +5555,18 @@ description=Total deposition in forest of total sulphur mass unit = mg S m-2 d-1 minimum=0 +[depna] +description=Total deposition of total sodium mass +unit = mg m-2 d-1 +minimum=0 + +[depnaf] +description=Total deposition in forest of total sodium mass +unit = mg m-2 d-1 +minimum=0 + + + [wetno2] var_name = wetno2 description = Wet deposition of nitrogen oxide in total PM @@ -5670,6 +5682,11 @@ description=proxy dry deposition of sea salt mass unit = mg m-2 d-1 minimum=0 +[proxydryna] +description=proxy dry deposition of sodium mass +unit = mg m-2 d-1 +minimum=0 + [proxydryso2] description=proxy dry deposition of SO2 unit = mg S m-2 d-1 diff --git a/pyaerocom/io/read_ebas.py b/pyaerocom/io/read_ebas.py index 02ea2300d..44a93dc1b 100644 --- a/pyaerocom/io/read_ebas.py +++ b/pyaerocom/io/read_ebas.py @@ -187,7 +187,7 @@ class ReadEbas(ReadUngriddedBase): """ #: version log of this class (for caching) - __version__ = "0.51_" + ReadUngriddedBase.__baseversion__ + __version__ = "0.52_" + ReadUngriddedBase.__baseversion__ #: Name of dataset (OBS_ID) DATA_ID = const.EBAS_MULTICOLUMN_NAME @@ -249,7 +249,8 @@ class ReadEbas(ReadUngriddedBase): # proxy drydep # Suphar based "proxydryoxs": ["concprcpoxs", "pr"], - "proxydryss": ["concprcpoxs", "pr"], + "proxydryss": ["concprcpna", "pr"], + "proxydryna": ["concprcpna", "pr"], "proxydryso2": ["concprcpoxs", "pr"], "proxydryso4": ["concprcpoxs", "pr"], # Oxidized nitrogen based @@ -320,7 +321,8 @@ class ReadEbas(ReadUngriddedBase): # proxy dry dep # Suphar based "proxydryoxs": compute_wetoxs_from_concprcpoxs, - "proxydryss": compute_wetoxs_from_concprcpoxs, + "proxydryss": compute_wetna_from_concprcpna, + "proxydryna": compute_wetna_from_concprcpna, "proxydryso2": compute_wetoxs_from_concprcpoxs, "proxydryso4": compute_wetoxs_from_concprcpoxs, # Oxidized nitrogen based diff --git a/pyaerocom/plugins/ipcforests/reader.py b/pyaerocom/plugins/ipcforests/reader.py index 18f9678d3..265a7fde0 100644 --- a/pyaerocom/plugins/ipcforests/reader.py +++ b/pyaerocom/plugins/ipcforests/reader.py @@ -21,7 +21,7 @@ class ReadIPCForest(ReadUngriddedBase): #: version log of this class (for caching) - __version__ = "0.4_" + ReadUngriddedBase.__baseversion__ + __version__ = "0.5_" + ReadUngriddedBase.__baseversion__ #: Name of dataset (OBS_ID) DATA_ID = const.IPCFORESTS_NAME @@ -57,9 +57,11 @@ class ReadIPCForest(ReadUngriddedBase): "depoxs": 20, "depoxn": 19, "deprdn": 17, + "depna": 16, "depoxsf": 20, "depoxnf": 19, "deprdnf": 17, + "depnaf": 16, "wetso4": 20, "wetno3": 19, "wetnh4": 17, @@ -86,6 +88,8 @@ class ReadIPCForest(ReadUngriddedBase): "wetnh4": "mg N m-2 d-1", "wetno2": "mg N m-2 d-1", "wetna": "mg m-2 d-1", + "depna": "mg m-2 d-1", + "depnaf": "mg m-2 d-1", # unverified "wetcl": "mg m-2 d-1", } diff --git a/tests/io/test_read_ebas.py b/tests/io/test_read_ebas.py index 598644d85..75cc653f1 100644 --- a/tests/io/test_read_ebas.py +++ b/tests/io/test_read_ebas.py @@ -332,6 +332,7 @@ def test_PROVIDES_VARIABLES(reader: ReadEbas): "proxydryo3", "proxydryoxs", "proxydryss", + "proxydryna", "proxydrypm10", "proxydrypm25", "proxydryrdn", From 2f7a8332451dbd47bcf8f024342065aea5d63417 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 13:23:07 +0100 Subject: [PATCH 05/33] adjusted depna color scale --- pyaerocom/aeroval/glob_defaults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index afda08a4a..98b3f0464 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -312,11 +312,11 @@ "colmap": "coolwarm", }, "depoxs": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], "colmap": "coolwarm"}, "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depnaf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, } From 2807cadb04c0a40689b189fc346a5640681a134a Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 13:23:25 +0100 Subject: [PATCH 06/33] adjusted to added dep variables --- tests/test_varcollection.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_varcollection.py b/tests/test_varcollection.py index fff03d390..71f4b1e2f 100644 --- a/tests/test_varcollection.py +++ b/tests/test_varcollection.py @@ -81,7 +81,7 @@ def test_VarCollection_get_var_error(collection: VarCollection): "search_pattern,num", [ ("*blaaaaaaa*", 0), - ("dep*", 7), + ("dep*", 9), ("od*", 26), ("conc*", 90), ], From a7c9bc5862ac7a3d7b7b4ce819240d5ab5acfc47 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 13:46:56 +0100 Subject: [PATCH 07/33] adjusted depna color scale --- pyaerocom/aeroval/glob_defaults.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 98b3f0464..a45c6ab3f 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -312,7 +312,7 @@ "colmap": "coolwarm", }, "depoxs": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], "colmap": "coolwarm"}, + "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm"}, "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, From 583dd8659ebc3049eb45edf1a25b22d8546bf524 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 14:12:58 +0100 Subject: [PATCH 08/33] adjusted wetdep color scales --- pyaerocom/aeroval/glob_defaults.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index a45c6ab3f..178141748 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -200,15 +200,18 @@ "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], "colmap": "coolwarm", }, - "wetoxs": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm"}, - "wetna": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm"}, - "wetoxn": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm"}, + "wetoxs": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, + "wetna": { + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10, 20], + "colmap": "coolwarm", + }, + "wetoxn": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetrdn": { - "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm", }, - "wetoxsf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm"}, - "wetoxnf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm"}, + "wetoxsf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, + "wetoxnf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetrdnf": { "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], "colmap": "coolwarm", @@ -312,7 +315,10 @@ "colmap": "coolwarm", }, "depoxs": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "depna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm"}, + "depna": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, From 65a10297051d1ea32af5499b58a69ef3a401cdef Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 15:16:57 +0100 Subject: [PATCH 09/33] add nh4 for concNnh4 unit conversion --- pyaerocom/molmasses.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pyaerocom/molmasses.py b/pyaerocom/molmasses.py index 9c4dae73f..1b7bf53ad 100644 --- a/pyaerocom/molmasses.py +++ b/pyaerocom/molmasses.py @@ -10,6 +10,7 @@ "no2": 46.0055, "hno3": 63.01, "nh3": 17.031, + "nh4": 18.039, "co": 28.010, "isop": 68.12, "glyoxal": 58.036, From fb014288ad0775afbbaee375a85beeb2c2025325 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 10 Nov 2023 17:52:37 +0100 Subject: [PATCH 10/33] added concom25 definition --- pyaerocom/aeroval/glob_defaults.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 178141748..7f83e9961 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -200,6 +200,10 @@ "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], "colmap": "coolwarm", }, + "concom25": { + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], + "colmap": "coolwarm", + }, "wetoxs": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetna": { "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10, 20], @@ -619,6 +623,7 @@ concsspm25=["SS PM25", "3D", "Particle concentration"], concCecpm25=["EC PM2.5", "3D", "Particle concentration"], concCocpm25=["OC PM2.5", "3D", "Particle concentration"], + concom25=["OM PM2.5", "3D", "Particle concentration"], concCecpm10=["EC PM10", "3D", "Particle concentration"], concCocpm10=["OC PM10", "3D", "Particle concentration"], concdust=["Dust concentration", "3D", "Particle concentration"], From 9df4db350275a046e5d6fcceded3ce2df69e8959 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 10:44:02 +0100 Subject: [PATCH 11/33] adjusted more colorscales --- pyaerocom/aeroval/glob_defaults.py | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 7f83e9961..1d25414fc 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -206,7 +206,7 @@ }, "wetoxs": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetna": { - "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10, 20], + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10, 20, 50, 100], "colmap": "coolwarm", }, "wetoxn": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, @@ -324,11 +324,20 @@ "colmap": "coolwarm", }, "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "deprdn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "deprdn": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "depnaf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depnaf": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, "depoxnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "deprdnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "deprdnf": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, } #: Default information for statistical parameters @@ -636,8 +645,8 @@ depoxnf=["TotDepOXNforr", "3D", "Deposition"], depss=["TotDepSS", "3D", "Deposition"], depssf=["TotDepSSforr", "3D", "Deposition"], - depna=["TotDepSodium", "3D", "Deposition"], - depnaf=["TotDepSodiumforr", "3D", "Deposition"], + depna=["TotDepNa", "3D", "Deposition"], + depnaf=["TotDepNaforr", "3D", "Deposition"], drysox=["DryOXS", "3D", "Deposition"], dryoxs=["DryOXS", "3D", "Deposition"], dryoxn=["DryOXN", "3D", "Deposition"], @@ -646,7 +655,7 @@ drydust=["DryDustDep", "3D", "Deposition"], wetdust=["WetDustDep", "3D", "Deposition"], wetoxs=["WetOXS", "3D", "Deposition"], - wetna=["WetSodium", "3D", "Deposition"], + wetna=["WetNa", "3D", "Deposition"], wetoxsc=["WetOXScorr", "3D", "Deposition"], wetoxst=["WetOXStot", "3D", "Deposition"], wetoxn=["WetOXN", "3D", "Deposition"], @@ -657,7 +666,7 @@ # proxy drydep proxydryoxs=["proxyDryOXS", "3D", "Deposition"], proxydryss=["proxyDrySS", "3D", "Deposition"], - proxydryna=["proxyDrySodium", "3D", "Deposition"], + proxydryna=["proxyDryNa", "3D", "Deposition"], proxydryso2=["proxyDrySO2", "3D", "Deposition"], proxydryso4=["proxyDrySO4", "3D", "Deposition"], proxydryoxn=["proxyDryOXN", "3D", "Deposition"], From 79848a2faa1c6ecc1dde8cf20f4c110ce70d27a9 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 11:44:35 +0100 Subject: [PATCH 12/33] adjusted more colorscales --- pyaerocom/aeroval/glob_defaults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 1d25414fc..bd9ad9847 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -211,13 +211,13 @@ }, "wetoxn": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetrdn": { - "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10], "colmap": "coolwarm", }, "wetoxsf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetoxnf": {"scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], "colmap": "coolwarm"}, "wetrdnf": { - "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5], + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5, 10], "colmap": "coolwarm", }, "prmm": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, From c6c5fe188c8c2425b0472f356eb212ebbe0af8a1 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 13:23:11 +0100 Subject: [PATCH 13/33] adjusted more colorscales --- pyaerocom/aeroval/glob_defaults.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index bd9ad9847..9efd8a2f3 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -318,22 +318,34 @@ "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80], "colmap": "coolwarm", }, - "depoxs": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depoxs": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, "depna": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100, 200], + "colmap": "coolwarm", + }, + "depoxn": { "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm", }, - "depoxn": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "deprdn": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100, 200], + "colmap": "coolwarm", + }, + "depoxsf": { "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm", }, - "depoxsf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "depnaf": { "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm", }, - "depoxnf": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "depoxnf": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "colmap": "coolwarm", + }, "deprdnf": { "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], "colmap": "coolwarm", From 3863d3cb0c45f6107f4908a8da98bf8caf384991 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 13:24:41 +0100 Subject: [PATCH 14/33] adjusted more colorscales --- pyaerocom/aeroval/glob_defaults.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 9efd8a2f3..85e2cc8f2 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -347,7 +347,7 @@ "colmap": "coolwarm", }, "deprdnf": { - "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20], + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100, 200], "colmap": "coolwarm", }, } From cfc8a716271ab1fcb7face73e2d20d00c4858317 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 13:45:10 +0100 Subject: [PATCH 15/33] adjusted more colorscales --- pyaerocom/aeroval/glob_defaults.py | 49 +++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 8 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 85e2cc8f2..7cc4fffe2 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -158,6 +158,14 @@ "scale": [0, 0.75, 1.5, 2.25, 3.0, 3.75, 4.5, 5.25, 6.0, 6.75, 7.5, 8.25], "colmap": "coolwarm", }, + "vmrno": { + "scale": [0, 0.75, 1.5, 2.25, 3.0, 3.75, 4.5, 5.25, 6.0, 6.75, 7.5, 8.25], + "colmap": "coolwarm", + }, + "vmrso2": { + "scale": [0, 0.75, 1.5, 2.25, 3.0, 3.75, 4.5, 5.25, 6.0, 6.75, 7.5, 8.25], + "colmap": "coolwarm", + }, "concpm10": {"scale": [0, 10, 20, 30, 40, 50, 60, 70, 80], "colmap": "coolwarm"}, "concpm25": {"scale": [0, 5, 10, 15, 20, 25, 30, 35, 40, 45], "colmap": "coolwarm"}, "conco3": {"scale": [0, 15, 30, 45, 60, 75, 90, 105, 120], "colmap": "coolwarm"}, @@ -170,29 +178,54 @@ "colmap": "coolwarm", }, "concNno3pm10": { - "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1], + "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1, 1.5, 2, 5, 10], "colmap": "coolwarm", }, "concNno3pm25": { - "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1], + "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1, 1.5, 2, 5, 10], "colmap": "coolwarm", }, "concNnh3": { - "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 7.5, 10.0, 20], + "colmap": "coolwarm", + }, + "concNnh4": { + "scale": [ + 0, + 0.25, + 0.5, + 0.75, + 1.0, + 1.25, + 1.5, + 1.75, + 2.0, + 2.5, + 3.0, + 3.5, + 4.0, + 4.5, + 5.0, + 7.5, + 10.0, + 20, + ], "colmap": "coolwarm", }, - "concNnh4": {"scale": [0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0], "colmap": "coolwarm"}, "concNtno3": { - "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1.0], + "scale": [0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1.0, 1.5, 2, 5], "colmap": "coolwarm", }, "concNtnh": { - "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 7.5, 10.0, 20], + "colmap": "coolwarm", + }, + "concsspm25": { + "scale": [0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 5, 10], "colmap": "coolwarm", }, - "concsspm25": {"scale": [0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0], "colmap": "coolwarm"}, "concsspm10": { - "scale": [0, 0.75, 1.5, 2.25, 3.0, 3.75, 4.5, 5.25, 6.0, 6.75, 7.5, 8.25], + "scale": [0, 0.75, 1.5, 2.25, 3.0, 3.75, 4.5, 5.25, 6.0, 6.75, 7.5, 8.25, 10, 15, 20, 50], "colmap": "coolwarm", }, "concCecpm25": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, From 4ffdc8158a97d9dc99a6c9406ce7fe948d5944e9 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 14:27:40 +0100 Subject: [PATCH 16/33] add DataQueryError to errors --- pyaerocom/aeroval/modelmaps_engine.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pyaerocom/aeroval/modelmaps_engine.py b/pyaerocom/aeroval/modelmaps_engine.py index 025d349ce..43ad08f2f 100644 --- a/pyaerocom/aeroval/modelmaps_engine.py +++ b/pyaerocom/aeroval/modelmaps_engine.py @@ -11,6 +11,7 @@ from pyaerocom.exceptions import ( DataCoverageError, DataDimensionError, + DataQueryError, TemporalResolutionError, VariableDefinitionError, VarNotAvailableError, @@ -84,7 +85,12 @@ def _run_model(self, model_name: str, var_list): _files = self._process_map_var(model_name, var, self.reanalyse_existing) files.extend(_files) - except (TemporalResolutionError, DataCoverageError, VariableDefinitionError) as e: + except ( + TemporalResolutionError, + DataCoverageError, + VariableDefinitionError, + DataQueryError, + ) as e: if self.raise_exceptions: raise logger.warning(f"Failed to process maps for {model_name} {var} data. Reason: {e}.") From fe948224f1b75ed764a89540a16a7084e7373c11 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 16:08:20 +0100 Subject: [PATCH 17/33] adjusted more color bars --- pyaerocom/aeroval/glob_defaults.py | 45 ++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 7cc4fffe2..1e3b28e3f 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -254,9 +254,12 @@ "colmap": "coolwarm", }, "prmm": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, - "dryoxs": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, - "dryoxn": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, - "dryrdn": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, + "dryoxs": { + "scale": [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 1, 1.5, 2, 5], + "colmap": "coolwarm", + }, + "dryoxn": {"scale": [0, 0.1, 0.2, 0.5, 1, 2.0, 5, 10, 20, 50], "colmap": "coolwarm"}, + "dryrdn": {"scale": [0, 0.1, 0.2, 0.5, 1, 2.0, 5, 10, 20, 50], "colmap": "coolwarm"}, "depdust": { "scale": [0.0, 0.2, 0.5, 1.0, 2.0, 5.0, 10.0, 20.0, 50.0, 100.0, 200.0, 500.0, 1000.0], "colmap": "coolwarm", @@ -304,41 +307,77 @@ }, "ts": {"scale": [265, 270, 275, 280, 285, 290, 300, 305, 310, 315, 320], "colmap": "coolwarm"}, "proxydryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 0.30, 40, 50], "colmap": "coolwarm"}, + "dryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 0.30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "drypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "dryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "dryna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryno2": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", }, + "dryno2": { + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "colmap": "coolwarm", + }, "proxydryhono": {"scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006], "colmap": "coolwarm"}, + "dryhono": {"scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006], "colmap": "coolwarm"}, "proxydryn2o5": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, + "dryn2o5": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, "proxydryhno3": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", }, + "dryhno3": { + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "colmap": "coolwarm", + }, "proxydryno3c": { "scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm", }, + "dryno3c": { + "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "colmap": "coolwarm", + }, "proxydryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, + "dryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, "proxydrynh3": { "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80], "colmap": "coolwarm", }, + "drynh3": { + "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80], + "colmap": "coolwarm", + }, "proxydrynh4": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", }, + "drynh4": { + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "colmap": "coolwarm", + }, "proxydryso2": { "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], "colmap": "coolwarm", }, + "dryso2": { + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "colmap": "coolwarm", + }, "proxydryso4": { "scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm", }, + "dryso4": { + "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "colmap": "coolwarm", + }, "proxydryoxs": { "scale": [0, 0.05, 0.1, 0.15, 0.20, 0.25, 0.30, 0.35, 0.40], "colmap": "coolwarm", From c5df88005285f658d6652037c7885df171e1536d Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 16:23:32 +0100 Subject: [PATCH 18/33] adjusted more color bars --- pyaerocom/aeroval/glob_defaults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 1e3b28e3f..4d0f546d2 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -306,8 +306,8 @@ "colmap": "coolwarm", }, "ts": {"scale": [265, 270, 275, 280, 285, 290, 300, 305, 310, 315, 320], "colmap": "coolwarm"}, - "proxydryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 0.30, 40, 50], "colmap": "coolwarm"}, - "dryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 0.30, 40, 50], "colmap": "coolwarm"}, + "proxydryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, + "dryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, From 3e2386eba5e012b6bd3a77a528a6d095041bbcfb Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 13 Nov 2023 16:35:27 +0100 Subject: [PATCH 19/33] adjusted more color bars --- pyaerocom/aeroval/glob_defaults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index 4d0f546d2..ac35539a9 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -306,8 +306,8 @@ "colmap": "coolwarm", }, "ts": {"scale": [265, 270, 275, 280, 285, 290, 300, 305, 310, 315, 320], "colmap": "coolwarm"}, - "proxydryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, - "dryo3": {"scale": [0, 0.5, 1, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, + "proxydryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, + "dryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, From dbe787677c65210fe71b4ce932fc52009cbb7c8c Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Tue, 14 Nov 2023 10:36:38 +0100 Subject: [PATCH 20/33] added more variables so aeroval's map plotting works --- pyaerocom/data/variables.ini | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/pyaerocom/data/variables.ini b/pyaerocom/data/variables.ini index 2bc947b6f..0865510b8 100644 --- a/pyaerocom/data/variables.ini +++ b/pyaerocom/data/variables.ini @@ -1589,7 +1589,8 @@ var_name = dryhno3 description = Dry deposition of HNO3 standard_name = tendency_of_atmosphere_mass_content_of_nitric_acid_due_to_dry_deposition var_type = dry deposition flux -unit = kg m-2 s-1 +;unit = kg m-2 s-1 +unit = mg N m-2 d-1 minimum = 0 maximum = 10000 dimensions = time,lat,lon @@ -1606,6 +1607,30 @@ maximum = 10000 dimensions = time,lat,lon comments_and_purpose = Verification of nitrogen budget. Verification of aerosol budget and speciation. +[dryno3c] +var_name = dryno3c +description = Dry deposition of nitrate aerosol in total PM coarse +;standard_name = atmosphere_mass_content_of_nitrate_dry_aerosol_particles_due_to_dry_deposition +var_type = dry deposition flux +;unit = kg m-2 s-1 +unit = mg N m-2 d-1 +minimum = 0 +maximum = 10000 +dimensions = time,lat,lon +comments_and_purpose = Verification of nitrogen budget. Verification of aerosol budget and speciation. + +[dryno3f] +var_name = dryno3f +description = Dry deposition of nitrate aerosol in total PM fine +;standard_name = atmosphere_mass_content_of_nitrate_dry_aerosol_particles_due_to_dry_deposition +var_type = dry deposition flux +;unit = kg m-2 s-1 +unit = mg N m-2 d-1 +minimum = 0 +maximum = 10000 +dimensions = time,lat,lon +comments_and_purpose = Verification of nitrogen budget. Verification of aerosol budget and speciation. + [dryno2] var_name = dryno2 description = Dry deposition of NO2 @@ -1939,7 +1964,8 @@ var_name = drypm10 description = Dry deposition of PM10 standard_name = tendency_of_atmosphere_mass_content_of_pm10_dry_aerosol_particles_due_to_dry_deposition var_type = dry deposition flux -unit = kg m-2 s-1 +# unit = kg m-2 s-1 +unit = mg m-2 d-1 minimum = 0 maximum = 10000 dimensions = time,lat,lon @@ -5687,6 +5713,11 @@ description=proxy dry deposition of sodium mass unit = mg m-2 d-1 minimum=0 +[dryna] +description=proxy dry deposition of sodium mass +unit = mg m-2 d-1 +minimum=0 + [proxydryso2] description=proxy dry deposition of SO2 unit = mg S m-2 d-1 From 0c1d2e92e6dd9474838248aeb08f756b240ce165 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Tue, 14 Nov 2023 10:37:05 +0100 Subject: [PATCH 21/33] adjusted more color bars to data --- pyaerocom/aeroval/glob_defaults.py | 69 +++++++++++++++++++----------- 1 file changed, 45 insertions(+), 24 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index ac35539a9..ab608c4e9 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -310,72 +310,93 @@ "dryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "proxydrypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "drypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "proxydrypm25": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], + "colmap": "coolwarm", + }, + "drypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], "colmap": "coolwarm"}, "proxydryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "dryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "proxydryna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "dryna": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "proxydryna": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50], + "colmap": "coolwarm", + }, + "dryna": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50], + "colmap": "coolwarm", + }, "proxydryno2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], "colmap": "coolwarm", }, "dryno2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], + "colmap": "coolwarm", + }, + "proxydryhono": { + "scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "colmap": "coolwarm", + }, + "dryhono": { + "scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "colmap": "coolwarm", + }, + "proxydryn2o5": { + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.01, 0.02], + "colmap": "coolwarm", + }, + "dryn2o5": { + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.01, 0.02], "colmap": "coolwarm", }, - "proxydryhono": {"scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006], "colmap": "coolwarm"}, - "dryhono": {"scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006], "colmap": "coolwarm"}, - "proxydryn2o5": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, - "dryn2o5": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, "proxydryhno3": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2.0, 5.0], "colmap": "coolwarm", }, "dryhno3": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2.0, 5.0], "colmap": "coolwarm", }, "proxydryno3c": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryno3c": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, - "proxydryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, - "dryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05], "colmap": "coolwarm"}, + "proxydryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, + "dryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, "proxydrynh3": { - "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80], + "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 1, 2, 5], "colmap": "coolwarm", }, "drynh3": { - "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80], + "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 1, 2, 5], "colmap": "coolwarm", }, "proxydrynh4": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], "colmap": "coolwarm", }, "drynh4": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], "colmap": "coolwarm", }, "proxydryso2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2, 5], "colmap": "coolwarm", }, "dryso2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2, 5], "colmap": "coolwarm", }, "proxydryso4": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryso4": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05], + "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "proxydryoxs": { From 729929f5400279e861a8a5fb1cf8bd57fe834457 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Tue, 14 Nov 2023 11:45:57 +0100 Subject: [PATCH 22/33] adjusted more color bars to data --- pyaerocom/aeroval/glob_defaults.py | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index ab608c4e9..cec6a5593 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -309,9 +309,9 @@ "proxydryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "dryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, + "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100], "colmap": "coolwarm"}, "proxydrypm25": { - "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100], "colmap": "coolwarm", }, "drypm25": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10], "colmap": "coolwarm"}, @@ -326,27 +326,27 @@ "colmap": "coolwarm", }, "proxydryno2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2], "colmap": "coolwarm", }, "dryno2": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 1.0, 2], "colmap": "coolwarm", }, "proxydryhono": { - "scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "scale": [0., 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], "colmap": "coolwarm", }, "dryhono": { - "scale": [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "scale": [0., 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], "colmap": "coolwarm", }, "proxydryn2o5": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.01, 0.02], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], "colmap": "coolwarm", }, "dryn2o5": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.01, 0.02], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], "colmap": "coolwarm", }, "proxydryhno3": { @@ -358,15 +358,15 @@ "colmap": "coolwarm", }, "proxydryno3c": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryno3c": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, - "proxydryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, - "dryno3f": {"scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, + "proxydryno3f": {"scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, + "dryno3f": {"scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, "proxydrynh3": { "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 1, 2, 5], "colmap": "coolwarm", @@ -392,11 +392,11 @@ "colmap": "coolwarm", }, "proxydryso4": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryso4": { - "scale": [0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], + "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "proxydryoxs": { From 6a69dd6d103eac4ab0df2be8ead14845ae3ca42b Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Tue, 14 Nov 2023 14:08:29 +0100 Subject: [PATCH 23/33] added minimum --- pyaerocom/aeroval/glob_defaults.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index cec6a5593..bd782b1df 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -174,7 +174,7 @@ "vmrno2": {"scale": [0, 5, 10, 15, 20, 25, 30, 35, 40], "colmap": "coolwarm"}, "vmro3max": {"scale": [0, 7.5, 15, 22.5, 30, 37.5, 45, 52.5, 60], "colmap": "coolwarm"}, "concNhno3": { - "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5], + "scale": [0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 1], "colmap": "coolwarm", }, "concNno3pm10": { @@ -217,7 +217,7 @@ "colmap": "coolwarm", }, "concNtnh": { - "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 7.5, 10.0, 20], + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 7.5, 10.0, 20, 50], "colmap": "coolwarm", }, "concsspm25": { @@ -229,8 +229,13 @@ "colmap": "coolwarm", }, "concCecpm25": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, + "concCec25": {"scale": [0, 1.25, 2.5, 3.75, 5, 6.25, 7.5, 8.75, 10], "colmap": "coolwarm"}, "concCocpm25": { - "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0], + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 10], + "colmap": "coolwarm", + }, + "concCoc25": { + "scale": [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 10], "colmap": "coolwarm", }, "concom25": { @@ -737,6 +742,8 @@ concsspm25=["SS PM25", "3D", "Particle concentration"], concCecpm25=["EC PM2.5", "3D", "Particle concentration"], concCocpm25=["OC PM2.5", "3D", "Particle concentration"], + concCec25=["EC PM2.5", "3D", "Particle concentration"], + concCoc25=["OC PM2.5", "3D", "Particle concentration"], concom25=["OM PM2.5", "3D", "Particle concentration"], concCecpm10=["EC PM10", "3D", "Particle concentration"], concCocpm10=["OC PM10", "3D", "Particle concentration"], From 3881d75bf2d645cb965ecc43845f7f361f145cf2 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Tue, 14 Nov 2023 14:08:35 +0100 Subject: [PATCH 24/33] added minimum --- pyaerocom/data/variables.ini | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyaerocom/data/variables.ini b/pyaerocom/data/variables.ini index 0865510b8..5f5d3d977 100644 --- a/pyaerocom/data/variables.ini +++ b/pyaerocom/data/variables.ini @@ -2990,6 +2990,7 @@ unit = ug C m-3 [concCocpm25] description=Mass concentration of organic carbon in PM2.5 unit = ug C m-3 +minimum = 0 [concCocpm10] description=Mass concentration of organic carbon in PM2.5 @@ -5530,6 +5531,7 @@ maximum = 1000 [concCoc25] description=Mass concentration of organic carbon in PM2.5 unit = ug C m-3 +minimum = 0 [concom25] description=Mass concentration of organic matter in PM2.5 From ef6d5b9ea9bb81d975c42e818253b6a2b32abc2a Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Wed, 15 Nov 2023 10:32:10 +0100 Subject: [PATCH 25/33] adjusted more color bars --- pyaerocom/aeroval/glob_defaults.py | 32 ++++++++++++++++++------------ 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/pyaerocom/aeroval/glob_defaults.py b/pyaerocom/aeroval/glob_defaults.py index bd782b1df..0780163cf 100644 --- a/pyaerocom/aeroval/glob_defaults.py +++ b/pyaerocom/aeroval/glob_defaults.py @@ -314,7 +314,10 @@ "proxydryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "dryo3": {"scale": [0, 0.5, 1, 5, 10, 15, 20, 25, 30, 40, 50], "colmap": "coolwarm"}, "proxydrypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, - "drypm10": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100], "colmap": "coolwarm"}, + "drypm10": { + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100], + "colmap": "coolwarm", + }, "proxydrypm25": { "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100], "colmap": "coolwarm", @@ -323,11 +326,11 @@ "proxydryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "dryss": {"scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2], "colmap": "coolwarm"}, "proxydryna": { - "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50], + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100, 200], "colmap": "coolwarm", }, "dryna": { - "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50], + "scale": [0, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 5, 10, 20, 50, 100, 200], "colmap": "coolwarm", }, "proxydryno2": { @@ -339,19 +342,19 @@ "colmap": "coolwarm", }, "proxydryhono": { - "scale": [0., 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "scale": [0.0, 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], "colmap": "coolwarm", }, "dryhono": { - "scale": [0., 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], + "scale": [0.0, 0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.008, 0.01, 0.02], "colmap": "coolwarm", }, "proxydryn2o5": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], "colmap": "coolwarm", }, "dryn2o5": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.2], "colmap": "coolwarm", }, "proxydryhno3": { @@ -363,15 +366,18 @@ "colmap": "coolwarm", }, "proxydryno3c": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryno3c": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], + "colmap": "coolwarm", + }, + "proxydryno3f": { + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, - "proxydryno3f": {"scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, - "dryno3f": {"scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, + "dryno3f": {"scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5], "colmap": "coolwarm"}, "proxydrynh3": { "scale": [0, 0.10, 0.20, 0.30, 0.40, 0.50, 0.60, 0.70, 0.80, 1, 2, 5], "colmap": "coolwarm", @@ -397,11 +403,11 @@ "colmap": "coolwarm", }, "proxydryso4": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "dryso4": { - "scale": [0., 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], + "scale": [0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.2, 0.5], "colmap": "coolwarm", }, "proxydryoxs": { From 3721046a9081af7bfd62c9c17fc03729d0ae0222 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 16 Nov 2023 10:13:11 +0100 Subject: [PATCH 26/33] adjusted testing to added species --- pyaerocom/molmasses.py | 16 +++++++++++++++- tests/test_molmasses.py | 9 +++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/pyaerocom/molmasses.py b/pyaerocom/molmasses.py index 1b7bf53ad..699dfb229 100644 --- a/pyaerocom/molmasses.py +++ b/pyaerocom/molmasses.py @@ -1,4 +1,17 @@ -VAR_PREFIXES = ["vmr", "mmr", "conc", "sconc", "wet", "dry"] +VAR_PREFIXES = [ + "vmr", + "mmr", + "conc", + "sconc", + "wet", + "dry", + "concNt", + "concN", + "concC", + "proxydry", + "proxywet", + "dep", +] # in g/mol MOLMASSES = { @@ -8,6 +21,7 @@ "so4": 96.06, "no": 30.01, "no2": 46.0055, + "no3": 62.0045, "hno3": 63.01, "nh3": 17.031, "nh4": 18.039, diff --git a/tests/test_molmasses.py b/tests/test_molmasses.py index 758277fbe..4100ccd32 100644 --- a/tests/test_molmasses.py +++ b/tests/test_molmasses.py @@ -12,6 +12,11 @@ ("vmro3", "o3"), ("mmro3", "o3"), ("wetso4", "so4"), + ("concNnh4", "nh4"), + ("concNnh3", "nh3"), + ("concNtno3", "no3"), + ("proxydryno2", "no2"), + ("proxywetno2", "no2"), ], ) def test_get_species(var_name: str, species: str): @@ -27,6 +32,10 @@ def test_get_species(var_name: str, species: str): ("vmro3", 48), ("mmro3", 48), ("wetso4", 96.06), + ("concNnh4", 18.039), + ("concNnh3", 17.031), + ("concNtno3", 62.0045), + ("proxydryno2", 46.0055), ], ) def test_get_molmass(var_name: str, molmass: float): From 148bd34d5bedc3872f720eacc363daf4ada95565 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 16 Nov 2023 11:54:41 +0100 Subject: [PATCH 27/33] added ipcforests testing to CI --- tests/fixtures/data_access.py | 5 +++- tests/plugins/ipcforests/test_reader.py | 40 ++++++++----------------- 2 files changed, 17 insertions(+), 28 deletions(-) diff --git a/tests/fixtures/data_access.py b/tests/fixtures/data_access.py index fc93fc9d0..4365b0453 100644 --- a/tests/fixtures/data_access.py +++ b/tests/fixtures/data_access.py @@ -14,11 +14,12 @@ from pyaerocom import const, io from pyaerocom.io.readungriddedbase import ReadUngriddedBase from pyaerocom.plugins.ghost.reader import ReadGhost +from pyaerocom.plugins.ipcforests.reader import ReadIPCForest logger = logging.getLogger(__name__) #: tarfile to download -TESTATA_FILE = "testdata-minimal.tar.gz.20231019" +TESTATA_FILE = "testdata-minimal.tar.gz.20231116" minimal_dataset = pooch.create( path=const.OUTPUTDIR, # ~/MyPyaerocom/ @@ -30,6 +31,7 @@ "testdata-minimal.tar.gz.20231013": "md5:f3e311c28e341a5c54d5bbba6f9849d2", "testdata-minimal.tar.gz.20231017": "md5:705d91e01ca7647b4c93dfe67def661f", "testdata-minimal.tar.gz.20231019": "md5:f8912ee83d6749fb2a9b1eda1d664ca2", + "testdata-minimal.tar.gz.20231116": "md5:5da747f6596817295ba7affe3402b722", }, ) @@ -84,6 +86,7 @@ def register_ungridded(self, name: str): "G.EEA.hourly.Subset": DataForTests("obsdata/GHOST/data/EEA_AQ_eReporting/hourly", ReadGhost), "G.EBAS.daily.Subset": DataForTests("obsdata/GHOST/data/EBAS/daily", ReadGhost), "G.EBAS.hourly.Subset": DataForTests("obsdata/GHOST/data/EBAS/hourly", ReadGhost), + "IPCFORESTS.Subset": DataForTests("obsdata/ipc-forests/dep", ReadIPCForest), "EEA_AQeRep.v2.Subset": DataForTests("obsdata/EEA_AQeRep.v2/renamed", io.ReadEEAAQEREP_V2), "Earlinet-test": DataForTests("obsdata/Earlinet", io.ReadEarlinet), } diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index 2033fb05d..6c65e5c27 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -1,42 +1,34 @@ from __future__ import annotations -from pathlib import Path - import pytest from pyaerocom import const from pyaerocom.plugins.ipcforests.metadata import MetadataReader as ReadIPCForestMeta from pyaerocom.plugins.ipcforests.reader import ReadIPCForest -from tests.conftest import lustre_unavail - -try: - IPC_PATH = Path(const.OBSLOCS_UNGRIDDED[const.IPCFORESTS_NAME]) -except KeyError: - pytest.mark.skip(reason=f"IPCForests path not initialised due to non existence in CI") +from tests.fixtures.data_access import DataForTests, TEST_DATA -# stationnames are not consistent between variables! -# wetoxn -STATION_NAMES = ("DE-604-2", "NO-7-2", "UK-718-2") -# fakedrypm10 -# STATION_NAMES = ("Birkenes II", "La Coulonche", "Jarczew") +# station names are not consistent between variables! +# STATION_NAMES = ("DE-604-2", "NO-7-2", "UK-718-2") +# Station names are kind of limited since we took only the last 5000 lines from the data file for the test data set +STATION_NAMES = ("BG-1-1", "LV-15-2", "BG-4-3") VARS_DEFAULT = {"wetoxn"} VARS_PROVIDED = VARS_DEFAULT +IPC_PATH = DataForTests(TEST_DATA["IPCFORESTS.Subset"].relpath).path + -@lustre_unavail @pytest.fixture(scope="module") -def reader() -> ReadIPCForest: - return ReadIPCForest(data_dir=str(IPC_PATH)) +def reader(): + return ReadIPCForest("IPCFORESTS.Subset") -@lustre_unavail @pytest.fixture(scope="module") def meta_reader() -> ReadIPCForestMeta: + # pytest.set_trace() return ReadIPCForestMeta(str(IPC_PATH)) -@lustre_unavail @pytest.fixture() def station_files(station: str) -> list[Path]: p = IPC_PATH.glob("dp_dem.csv") @@ -46,47 +38,41 @@ def station_files(station: str) -> list[Path]: return files -@lustre_unavail def test_DATASET_NAME(reader: ReadIPCForest): assert reader.DATA_ID == const.IPCFORESTS_NAME -@lustre_unavail def test_DEFAULT_VARS(reader: ReadIPCForest): assert set(reader.DEFAULT_VARS) >= VARS_DEFAULT -@lustre_unavail def test_METADATA(meta_reader: ReadIPCForestMeta): assert len(meta_reader.deposition_type) >= 3, "found less deposition types than expected" -@lustre_unavail def test_PROVIDES_VARIABLES(reader: ReadIPCForest): return set(reader.PROVIDES_VARIABLES) >= VARS_PROVIDED -@lustre_unavail def test_read_file( - reader: ReadIPCForest, + reader: ReadIPCForest, ): data = reader.read(vars_to_retrieve=VARS_DEFAULT) assert set(data.contains_vars) == VARS_DEFAULT -@lustre_unavail def test_read_station( - reader: ReadIPCForest, + reader: ReadIPCForest, ): # IPCForest reader does not support partial read of stations at this time # not easy to implement due to being a single file dataset data = reader.read( vars_to_retrieve=VARS_DEFAULT, ) + print(data.unique_station_names) for station in STATION_NAMES: assert station in data.unique_station_names -@lustre_unavail def test_reader_gives_correct_IPC_PATH(reader: ReadIPCForest): assert str(IPC_PATH) == reader.data_dir From d522ec4f047f2010f8416c0b648e3e4f03fa5202 Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 16 Nov 2023 12:43:55 +0100 Subject: [PATCH 28/33] linting --- tests/plugins/ipcforests/test_reader.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index 6c65e5c27..2a9dcdfa1 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -5,7 +5,7 @@ from pyaerocom import const from pyaerocom.plugins.ipcforests.metadata import MetadataReader as ReadIPCForestMeta from pyaerocom.plugins.ipcforests.reader import ReadIPCForest -from tests.fixtures.data_access import DataForTests, TEST_DATA +from tests.fixtures.data_access import TEST_DATA, DataForTests # station names are not consistent between variables! # STATION_NAMES = ("DE-604-2", "NO-7-2", "UK-718-2") @@ -55,14 +55,14 @@ def test_PROVIDES_VARIABLES(reader: ReadIPCForest): def test_read_file( - reader: ReadIPCForest, + reader: ReadIPCForest, ): data = reader.read(vars_to_retrieve=VARS_DEFAULT) assert set(data.contains_vars) == VARS_DEFAULT def test_read_station( - reader: ReadIPCForest, + reader: ReadIPCForest, ): # IPCForest reader does not support partial read of stations at this time # not easy to implement due to being a single file dataset From 7c8529a6c204c5d363d069e704356443cb80ad5e Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 16 Nov 2023 12:46:50 +0100 Subject: [PATCH 29/33] linting --- tests/plugins/ipcforests/test_reader.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index 2a9dcdfa1..f368ddc53 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -1,5 +1,7 @@ from __future__ import annotations +from pathlib import Path + import pytest from pyaerocom import const From 067d04c368cfe490defeb10ce78938c4f787f59b Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Thu, 16 Nov 2023 13:58:31 +0100 Subject: [PATCH 30/33] remove clutter --- tests/plugins/ipcforests/test_reader.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index f368ddc53..831bdd2e3 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -27,7 +27,6 @@ def reader(): @pytest.fixture(scope="module") def meta_reader() -> ReadIPCForestMeta: - # pytest.set_trace() return ReadIPCForestMeta(str(IPC_PATH)) From 011fe2a78a0e16404e2a248c077932e62cc9c2dc Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Fri, 17 Nov 2023 09:47:55 +0100 Subject: [PATCH 31/33] remove clutter --- tests/plugins/ipcforests/test_reader.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index 831bdd2e3..510d3dd8a 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -10,7 +10,6 @@ from tests.fixtures.data_access import TEST_DATA, DataForTests # station names are not consistent between variables! -# STATION_NAMES = ("DE-604-2", "NO-7-2", "UK-718-2") # Station names are kind of limited since we took only the last 5000 lines from the data file for the test data set STATION_NAMES = ("BG-1-1", "LV-15-2", "BG-4-3") @@ -65,12 +64,10 @@ def test_read_file( def test_read_station( reader: ReadIPCForest, ): - # IPCForest reader does not support partial read of stations at this time - # not easy to implement due to being a single file dataset + data = reader.read( vars_to_retrieve=VARS_DEFAULT, ) - print(data.unique_station_names) for station in STATION_NAMES: assert station in data.unique_station_names From 14e436d75170efb99388713a0b4c7a6b46c265ac Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 4 Dec 2023 09:57:11 +0100 Subject: [PATCH 32/33] adjusted to review --- pyaerocom/data/variables.ini | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pyaerocom/data/variables.ini b/pyaerocom/data/variables.ini index 5f5d3d977..354342745 100644 --- a/pyaerocom/data/variables.ini +++ b/pyaerocom/data/variables.ini @@ -1610,7 +1610,6 @@ comments_and_purpose = Verification of nitrogen budget. Verification of aerosol [dryno3c] var_name = dryno3c description = Dry deposition of nitrate aerosol in total PM coarse -;standard_name = atmosphere_mass_content_of_nitrate_dry_aerosol_particles_due_to_dry_deposition var_type = dry deposition flux ;unit = kg m-2 s-1 unit = mg N m-2 d-1 @@ -1622,7 +1621,6 @@ comments_and_purpose = Verification of nitrogen budget. Verification of aerosol [dryno3f] var_name = dryno3f description = Dry deposition of nitrate aerosol in total PM fine -;standard_name = atmosphere_mass_content_of_nitrate_dry_aerosol_particles_due_to_dry_deposition var_type = dry deposition flux ;unit = kg m-2 s-1 unit = mg N m-2 d-1 @@ -1964,6 +1962,7 @@ var_name = drypm10 description = Dry deposition of PM10 standard_name = tendency_of_atmosphere_mass_content_of_pm10_dry_aerosol_particles_due_to_dry_deposition var_type = dry deposition flux +# the following is CF's unit, but we want to perform a comparison based on obs units # unit = kg m-2 s-1 unit = mg m-2 d-1 minimum = 0 From 2118b98a1023dd7b2488dce12301ee0aea16ee7a Mon Sep 17 00:00:00 2001 From: Jan Jurgen Griesfeller Date: Mon, 4 Dec 2023 09:58:14 +0100 Subject: [PATCH 33/33] linting --- tests/plugins/ipcforests/test_reader.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/plugins/ipcforests/test_reader.py b/tests/plugins/ipcforests/test_reader.py index 510d3dd8a..8fb680b8f 100644 --- a/tests/plugins/ipcforests/test_reader.py +++ b/tests/plugins/ipcforests/test_reader.py @@ -64,7 +64,6 @@ def test_read_file( def test_read_station( reader: ReadIPCForest, ): - data = reader.read( vars_to_retrieve=VARS_DEFAULT, )