From 9ede3dbcb2424340399d8577572042067fdf45a3 Mon Sep 17 00:00:00 2001 From: Martin Jury Date: Fri, 5 Jun 2020 10:42:12 +0200 Subject: [PATCH 1/6] initial commit --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 25 +++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py new file mode 100644 index 0000000000..f636677e57 --- /dev/null +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -0,0 +1,25 @@ +"""Fixes for FGOALS-f3-L model.""" +from ..fix import Fix +# from esmvalcore.cmor.fix import Fix + +class Sftlf(Fix): + """Fixes for sftlf.""" + + def fix_data(self, cube): + """Fix data. + + Unit is %, values are <= 1. + + Parameters + ---------- + cube: iris.cube.Cube + Cube to fix + + Returns + ------- + iris.cube.Cube + Fixed cube. It can be a difference instance. + """ + if cube.units == "%" and cube.data.max() <= 1.: + cube.data = cube.data * 100 + return cube From cc4d0207a78d0dc6078f2bdd30971f23a13cdceb Mon Sep 17 00:00:00 2001 From: mwjury Date: Wed, 17 Jun 2020 12:25:55 +0200 Subject: [PATCH 2/6] Update esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py Co-authored-by: Valeriu Predoi --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 1 + 1 file changed, 1 insertion(+) diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py index f636677e57..ac2b3cba38 100644 --- a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -1,5 +1,6 @@ """Fixes for FGOALS-f3-L model.""" from ..fix import Fix +import dask.array as da # from esmvalcore.cmor.fix import Fix class Sftlf(Fix): From 24318dcb07ef7b465981562d26ef76af44b598bf Mon Sep 17 00:00:00 2001 From: mwjury Date: Wed, 17 Jun 2020 12:26:19 +0200 Subject: [PATCH 3/6] Update esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py Co-authored-by: Valeriu Predoi --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py index ac2b3cba38..67c869e915 100644 --- a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -21,6 +21,6 @@ def fix_data(self, cube): iris.cube.Cube Fixed cube. It can be a difference instance. """ - if cube.units == "%" and cube.data.max() <= 1.: + if cube.units == "%" and da.max(cube.core_data()).compute() <= 1.: cube.data = cube.data * 100 return cube From 76ebcf9c3b8abd345e16bc9ee4c302d730afa681 Mon Sep 17 00:00:00 2001 From: mwjury Date: Wed, 17 Jun 2020 12:26:30 +0200 Subject: [PATCH 4/6] Update esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py Co-authored-by: Valeriu Predoi --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py index 67c869e915..7a43503f98 100644 --- a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -22,5 +22,5 @@ def fix_data(self, cube): Fixed cube. It can be a difference instance. """ if cube.units == "%" and da.max(cube.core_data()).compute() <= 1.: - cube.data = cube.data * 100 + cube.data = cube.core_data() * 100. return cube From 91247f6e7b777e69c35cb144cc25fb41c6d5fa8d Mon Sep 17 00:00:00 2001 From: Martin Jury Date: Wed, 17 Jun 2020 15:13:12 +0200 Subject: [PATCH 5/6] codacy stuff --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py index 7a43503f98..a8939428e6 100644 --- a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -1,7 +1,6 @@ """Fixes for FGOALS-f3-L model.""" -from ..fix import Fix import dask.array as da -# from esmvalcore.cmor.fix import Fix +from ..fix import Fix class Sftlf(Fix): """Fixes for sftlf.""" From f2d7802e1b4b847583b1817c00d8955f103b4fac Mon Sep 17 00:00:00 2001 From: Javier Vegas-Regidor Date: Tue, 5 Jan 2021 14:44:03 +0100 Subject: [PATCH 6/6] Better naming --- esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py index 8f022c5f6a..05dd58c963 100644 --- a/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py +++ b/esmvalcore/cmor/_fixes/cmip6/fgoals_f3_l.py @@ -1,12 +1,13 @@ -"""Fixes for FGOALS-f3-L model.""" +"""Fixes for CMIP6 FGOALS-f3-L model.""" import cftime -import numpy as np import dask.array as da +import numpy as np + from ..fix import Fix + class AllVars(Fix): """Fixes for all vars.""" - def fix_metadata(self, cubes): """Fix parent time units. @@ -42,7 +43,6 @@ def fix_metadata(self, cubes): class Sftlf(Fix): """Fixes for sftlf.""" - def fix_data(self, cube): """Fix data.