From 96d93f46c263375912055079c614069c5cfa031b Mon Sep 17 00:00:00 2001 From: Milena Veneziani Date: Thu, 22 Oct 2020 15:53:27 -0700 Subject: [PATCH 1/7] Add module to aggregate regions into ocean subbasins --- geometric_features/aggregation/__init__.py | 0 .../aggregation/ocean/__init__.py | 1 + .../aggregation/ocean/subbasin.py | 253 ++++++++++++++++++ 3 files changed, 254 insertions(+) create mode 100644 geometric_features/aggregation/__init__.py create mode 100644 geometric_features/aggregation/ocean/__init__.py create mode 100644 geometric_features/aggregation/ocean/subbasin.py diff --git a/geometric_features/aggregation/__init__.py b/geometric_features/aggregation/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/geometric_features/aggregation/ocean/__init__.py b/geometric_features/aggregation/ocean/__init__.py new file mode 100644 index 00000000..f2d83826 --- /dev/null +++ b/geometric_features/aggregation/ocean/__init__.py @@ -0,0 +1 @@ +from geometric_features.aggregation.ocean.subbasin import subbasin diff --git a/geometric_features/aggregation/ocean/subbasin.py b/geometric_features/aggregation/ocean/subbasin.py new file mode 100644 index 00000000..b17be999 --- /dev/null +++ b/geometric_features/aggregation/ocean/subbasin.py @@ -0,0 +1,253 @@ +#!/usr/bin/env python + +import shapely +import numpy +import xarray +import os +import matplotlib.pyplot as plt +import pyproj +import gzip +import shutil +import tempfile + +from geometric_features import GeometricFeatures, FeatureCollection +from geometric_features.feature_collection import _round_coords + +from geometric_features.download import download_files +from geometric_features.utils import write_feature_names_and_tags + + +def subbasins(gf): + ''' + Aggregates ocean regions into the following larger sub-basins: + * Arctic Ocean Basin + * North Atlantic Basin + * South Atlantic Basin + * North Pacific Basin + * South Pacific Basin + * Indian Ocean Basin + * Southern Ocean Basin + + Parameters + ---------- + gf : ``GeometricFeatures`` + An object that knows how to download and read geometric featuers + Returns + ------- + fc : geometric_features.FeatureCollection + The new feature collection with ocean sub-basins + ''' + # Authors + # ------- + # Milena Veneziani + + author = 'Milena Veneziani' + + # Create Arctic Ocean + fcAr = gf.read('ocean', 'region', ['Central Arctic']) + fcESS = gf.read('ocean', 'region', ['East Siberian Sea']) + fcLap = gf.read('ocean', 'region', ['Laptev Sea']) + fcChu = gf.read('ocean', 'region', ['Chukchi Sea']) + fcCa = gf.read('ocean', 'region', ['Canada Basin']) + fcKara = gf.read('ocean', 'region', ['Kara Sea']) + fcBarents = gf.read('ocean', 'region', ['Barents Sea']) + fcAr.merge(fcESS) + fcAr.merge(fcLap) + fcAr.merge(fcChu) + fcAr.merge(fcCa) + fcAr.merge(fcKara) + fcAr.merge(fcBarents) + fcAr = fcAr.combine('Arctic Ocean Basin') + props = fcAr.features[0]['properties'] + props['tags'] = ['Arctic_Ocean_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create North Atlantic + fcNA = gf.read('ocean', 'region', ['North Atlantic Ocean']) + fcGS = gf.read('ocean', 'region', ['Greenland Sea']) + fcLab = gf.read('ocean', 'region', ['Labrador Sea']) + fcNor = gf.read('ocean', 'region', ['Norwegian Sea']) + fcIrm = gf.read('ocean', 'region', ['Irminger Sea']) + fcBayFundy = gf.read('ocean', 'region', ['Bay of Fundy']) + fcNorthSea = gf.read('ocean', 'region', ['North Sea']) + fcBaltic = gf.read('ocean', 'region', ['Baltic Sea']) + fcEngCh = gf.read('ocean', 'region', ['English Channel']) + fcCeltic = gf.read('ocean', 'region', ['Celtic Sea']) + fcBristol = gf.read('ocean', 'region', ['Bristol Channel']) + fcScot = gf.read('ocean', 'region', ['Inner Seas off the West Coast of Scotland']) + fcIrish = gf.read('ocean', 'region', ['Irish Sea and St Georges Channel']) + fcBothnia = gf.read('ocean', 'region', ['Gulf of Bothnia']) + fcCanArc = gf.read('ocean', 'region', ['Canadian Archipelago']) + fcHudson = gf.read('ocean', 'region', ['Hudson Bay']) + fcBaffin = gf.read('ocean', 'region', ['Baffin Bay']) + fcBayBiscay = gf.read('ocean', 'region', ['Bay of Biscay']) + fcGStLaw = gf.read('ocean', 'region', ['Gulf of St-Lawrence']) + fcGMexico = gf.read('ocean', 'region', ['Gulf of Mexico']) + fcCarr = gf.read('ocean', 'region', ['Caribbean Sea']) + fcGuinea = gf.read('ocean', 'region', ['Gulf of Guinea']) + fcNA.merge(fcGS) + fcNA.merge(fcLab) + fcNA.merge(fcNor) + fcNA.merge(fcIrm) + fcNA.merge(fcBayFundy) + fcNA.merge(fcNorthSea) + fcNA.merge(fcBaltic) + fcNA.merge(fcEngCh) + fcNA.merge(fcCeltic) + fcNA.merge(fcBristol) + fcNA.merge(fcScot) + fcNA.merge(fcIrish) + fcNA.merge(fcBothnia) + fcNA.merge(fcCanArc) + fcNA.merge(fcHudson) + fcNA.merge(fcBaffin) + fcNA.merge(fcBayBiscay) + fcNA.merge(fcGStLaw) + fcNA.merge(fcGMexico) + fcNA.merge(fcCarr) + fcNA.merge(fcGuinea) + fcNA = fcNA.combine('North Atlantic Basin') + props = fcNA.features[0]['properties'] + props['tags'] = ['North_Atlantic_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create South Atlantic + fcSA = gf.read('ocean', 'region', ['South Atlantic Ocean']) + fcRio = gf.read('ocean', 'region', ['Rio de La Plata']) + fcSA.merge(fcRio) + fcSA = fcSA.combine('South Atlantic Basin') + props = fcSA.features[0]['properties'] + props['tags'] = ['South_Atlantic_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create North Pacific + fcNP = gf.read('ocean', 'region', ['North Pacific Ocean']) + fcECS = gf.read('ocean', 'region', ['Eastern China Sea']) + fcAla = gf.read('ocean', 'region', ['Gulf of Alaska']) + fcAla2 = gf.read('ocean', 'region', ['The Coastal Waters of Southeast Alaska and British Columbia']) + fcHala = gf.read('ocean', 'region', ['Halamahera Sea']) + fcYell = gf.read('ocean', 'region', ['Yellow Sea']) + fcSCS = gf.read('ocean', 'region', ['South China Sea']) + fcThai = gf.read('ocean', 'region', ['Gulf of Thailand']) + fcBering = gf.read('ocean', 'region', ['Bering Sea']) + fcGCali = gf.read('ocean', 'region', ['Gulf of California']) + fcJapan = gf.read('ocean', 'region', ['Japan Sea']) + fcSeaOk = gf.read('ocean', 'region', ['Sea of Okhotsk']) + fcSingapore = gf.read('ocean', 'region', ['Singapore Strait']) + fcPhil = gf.read('ocean', 'region', ['Philippine Sea']) + fcSulu = gf.read('ocean', 'region', ['Sulu Sea']) + fcInland = gf.read('ocean', 'region', ['Inland Sea']) + fcCelebes = gf.read('ocean', 'region', ['Celebes Sea']) + fcNP.merge(fcECS) + fcNP.merge(fcAla) + fcNP.merge(fcAla2) + fcNP.merge(fcHala) + fcNP.merge(fcYell) + fcNP.merge(fcSCS) + fcNP.merge(fcThai) + fcNP.merge(fcBering) + fcNP.merge(fcGCali) + fcNP.merge(fcJapan) + fcNP.merge(fcSeaOk) + fcNP.merge(fcSingapore) + fcNP.merge(fcPhil) + fcNP.merge(fcSulu) + fcNP.merge(fcInland) + fcNP.merge(fcCelebes) + fcNP = fcNP.combine('North Pacific Basin') + props = fcNP.features[0]['properties'] + props['tags'] = ['North_Pacific_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create South Pacific + fcSP = gf.read('ocean', 'region', ['South Pacific Ocean']) + fcBali = gf.read('ocean', 'region', ['Bali Sea']) + fcSavu = gf.read('ocean', 'region', ['Savu Sea']) + fcMak = gf.read('ocean', 'region', ['Makassar Strait']) + fcAra = gf.read('ocean', 'region', ['Arafura Sea']) + fcCeram = gf.read('ocean', 'region', ['Ceram Sea']) + fcBis = gf.read('ocean', 'region', ['Bismarck Sea']) + fcSolo = gf.read('ocean', 'region', ['Solomon Sea']) + fcMol = gf.read('ocean', 'region', ['Molukka Sea']) + fcBanda = gf.read('ocean', 'region', ['Banda Sea']) + fcGBoni = gf.read('ocean', 'region', ['Gulf of Boni']) + fcGTomini = gf.read('ocean', 'region', ['Gulf of Tomini']) + fcJava = gf.read('ocean', 'region', ['Java Sea']) + fcFlores = gf.read('ocean', 'region', ['Flores Sea']) + fcTimor = gf.read('ocean', 'region', ['Timor Sea']) + fcTasmanN = gf.read('ocean', 'region', ['Tasman Sea North']) + fcCoral = gf.read('ocean', 'region', ['Coral Sea']) + fcSP.merge(fcBali) + fcSP.merge(fcSavu) + fcSP.merge(fcMak) + fcSP.merge(fcAra) + fcSP.merge(fcCeram) + fcSP.merge(fcBis) + fcSP.merge(fcSolo) + fcSP.merge(fcMol) + fcSP.merge(fcBanda) + fcSP.merge(fcGBoni) + fcSP.merge(fcGTomini) + fcSP.merge(fcJava) + fcSP.merge(fcFlores) + fcSP.merge(fcTimor) + fcSP.merge(fcTasmanN) + fcSP.merge(fcCoral) + fcSP = fcSP.combine('South Pacific Basin') + props = fcSP.features[0]['properties'] + props['tags'] = ['South_Pacific_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create Indian Ocean + fcI = gf.read('ocean', 'region', ['Indian Ocean']) + fcBassStN = gf.read('ocean', 'region', ['Bass Strait North']) + fcBayBengal = gf.read('ocean', 'region', ['Bay of Bengal']) + fcGulfOman = gf.read('ocean', 'region', ['Gulf of Oman']) + fcMalaccaSt = gf.read('ocean', 'region', ['Malacca Strait']) + fcGABN = gf.read('ocean', 'region', ['Great Australian Bight North']) + fcMoz = gf.read('ocean', 'region', ['Mozambique Channel']) + fcBu = gf.read('ocean', 'region', ['Andaman or Burma Sea']) + fcAden = gf.read('ocean', 'region', ['Gulf of Aden']) + fcLacc = gf.read('ocean', 'region', ['Laccadive Sea']) + fcArab = gf.read('ocean', 'region', ['Arabian Sea']) + fcI.merge(fcBassStN) + fcI.merge(fcBayBengal) + fcI.merge(fcGulfOman) + fcI.merge(fcMalaccaSt) + fcI.merge(fcGABN) + fcI.merge(fcMoz) + fcI.merge(fcBu) + fcI.merge(fcAden) + fcI.merge(fcLacc) + fcI.merge(fcArab) + fcI = fcI.combine('Indian Ocean Basin') + props = fcI.features[0]['properties'] + props['tags'] = ['Indian_Ocean_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create Southern Ocean + fcSO = gf.read('ocean', 'region', ['Southern Ocean']) + fcTasmanS = gf.read('ocean', 'region', ['Tasman Sea South']) + fcBassStS = gf.read('ocean', 'region', ['Bass Strait South']) + fcGABS = gf.read('ocean', 'region', ['Great Australian Bight South']) + fcSO.merge(fcTasmanS) + fcSO.merge(fcBassStS) + fcSO.merge(fcGABS) + fcSO = fcSO.combine('Southern Ocean Basin') + props = fcSO.features[0]['properties'] + props['tags'] = ['South_Ocean_Basin', 'oceanSubBasinRegions'] + props['author'] = author + + # Create Ocean subBasins merged feature + fc = fcSO + fc.merge(fcAr) + fc.merge(fcNA) + fc.merge(fcSA) + fc.merge(fcNP) + fc.merge(fcSP) + fc.merge(fcI) + props = fc.features[0]['properties'] + props['tags'] = 'oceanSubBasinRegions' + props['author'] = author + + return fc From 95eecb61015581d5466752bf0151a7e0bfa69d5d Mon Sep 17 00:00:00 2001 From: Milena Veneziani Date: Thu, 22 Oct 2020 22:17:17 -0700 Subject: [PATCH 2/7] Added documentation --- docs/aggregation.rst | 13 +++++++++++++ docs/index.rst | 1 + geometric_features/aggregation/ocean/__init__.py | 2 +- .../ocean/{subbasin.py => subbasin_regions.py} | 2 +- 4 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 docs/aggregation.rst rename geometric_features/aggregation/ocean/{subbasin.py => subbasin_regions.py} (99%) diff --git a/docs/aggregation.rst b/docs/aggregation.rst new file mode 100644 index 00000000..563fca76 --- /dev/null +++ b/docs/aggregation.rst @@ -0,0 +1,13 @@ +.. _aggregation.rst: + +Aggregate existing Features +=========================== + +This can be used to aggregate existing features to make new, larger ones. + +The only aggregation function that is currently available is `ocean.subbasins_regions`, +which aggregates oceanic regions to make the following ocean subbasins: North +and South Atlantic, North and South Pacific, Indian Basin, Arctic Basin, and +Southern Ocean Basin. + +.. _`GitHub repository`: https://github.com/MPAS-Dev/geometric_features diff --git a/docs/index.rst b/docs/index.rst index c6851b77..33bfc35c 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -24,6 +24,7 @@ This repository houses geometric features relevant for climate science. adding_features build_docs api + aggregation Indices and tables ================== diff --git a/geometric_features/aggregation/ocean/__init__.py b/geometric_features/aggregation/ocean/__init__.py index f2d83826..c14fd35e 100644 --- a/geometric_features/aggregation/ocean/__init__.py +++ b/geometric_features/aggregation/ocean/__init__.py @@ -1 +1 @@ -from geometric_features.aggregation.ocean.subbasin import subbasin +from geometric_features.aggregation.ocean.subbasin_regions import subbasin diff --git a/geometric_features/aggregation/ocean/subbasin.py b/geometric_features/aggregation/ocean/subbasin_regions.py similarity index 99% rename from geometric_features/aggregation/ocean/subbasin.py rename to geometric_features/aggregation/ocean/subbasin_regions.py index b17be999..fc1989a9 100644 --- a/geometric_features/aggregation/ocean/subbasin.py +++ b/geometric_features/aggregation/ocean/subbasin_regions.py @@ -30,7 +30,7 @@ def subbasins(gf): Parameters ---------- - gf : ``GeometricFeatures`` + gf : geometric_features.GeometricFeatures An object that knows how to download and read geometric featuers Returns ------- From 6466cdc054f780c4173de460202f4fd4fed3339f Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Fri, 23 Oct 2020 09:41:16 +0200 Subject: [PATCH 3/7] Fix function name in import --- geometric_features/aggregation/ocean/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/geometric_features/aggregation/ocean/__init__.py b/geometric_features/aggregation/ocean/__init__.py index c14fd35e..a066d0fd 100644 --- a/geometric_features/aggregation/ocean/__init__.py +++ b/geometric_features/aggregation/ocean/__init__.py @@ -1 +1 @@ -from geometric_features.aggregation.ocean.subbasin_regions import subbasin +from geometric_features.aggregation.ocean.subbasin_regions import subbasins From a1e9606bd4e2341913d616e3f5f6fe5e9d2738ee Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Fri, 23 Oct 2020 09:41:36 +0200 Subject: [PATCH 4/7] Fix documentation and add aggregation to API --- docs/aggregation.rst | 16 ++++++++-------- docs/api.rst | 10 ++++++++++ docs/index.rst | 2 +- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/docs/aggregation.rst b/docs/aggregation.rst index 563fca76..f12d5db8 100644 --- a/docs/aggregation.rst +++ b/docs/aggregation.rst @@ -1,13 +1,13 @@ -.. _aggregation.rst: +.. _aggregation: -Aggregate existing Features +Aggregate Existing Features =========================== -This can be used to aggregate existing features to make new, larger ones. +The :py:mod:`geometric_features.aggregation` module contains functions used to +aggregate existing features to make new, larger ones. -The only aggregation function that is currently available is `ocean.subbasins_regions`, -which aggregates oceanic regions to make the following ocean subbasins: North -and South Atlantic, North and South Pacific, Indian Basin, Arctic Basin, and -Southern Ocean Basin. +The only aggregation function that is currently available is +:py:func:`geometric_features.aggregation.ocean.subbasins`, which aggregates +oceanic regions to make the following ocean subbasins: North and South Atlantic, +North and South Pacific, Indian Basin, Arctic Basin, and Southern Ocean Basin. -.. _`GitHub repository`: https://github.com/MPAS-Dev/geometric_features diff --git a/docs/api.rst b/docs/api.rst index 6eff39dd..e64f712b 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -79,3 +79,13 @@ Manipulating a Feature Collection FeatureCollection.feature_in_collection FeatureCollection.to_geojson FeatureCollection.plot + +Aggregation +----------- + +.. autosummary:: + :toctree: generated/ + + aggregation + aggregation.ocean + aggregation.ocean.subbasins diff --git a/docs/index.rst b/docs/index.rst index 33bfc35c..d5132fbb 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -16,6 +16,7 @@ This repository houses geometric features relevant for climate science. geometric_features feature_collection geometric_data + aggregation .. toctree:: :caption: Developer's Guide @@ -24,7 +25,6 @@ This repository houses geometric features relevant for climate science. adding_features build_docs api - aggregation Indices and tables ================== From bc79a4760f6cd14ef11aed73eaaec3bc33c68518 Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Fri, 23 Oct 2020 10:07:47 +0200 Subject: [PATCH 5/7] Fix some PEP8 issues and typo --- .../aggregation/ocean/subbasin_regions.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/geometric_features/aggregation/ocean/subbasin_regions.py b/geometric_features/aggregation/ocean/subbasin_regions.py index fc1989a9..f5434174 100644 --- a/geometric_features/aggregation/ocean/subbasin_regions.py +++ b/geometric_features/aggregation/ocean/subbasin_regions.py @@ -18,7 +18,7 @@ def subbasins(gf): - ''' + """ Aggregates ocean regions into the following larger sub-basins: * Arctic Ocean Basin * North Atlantic Basin @@ -27,16 +27,16 @@ def subbasins(gf): * South Pacific Basin * Indian Ocean Basin * Southern Ocean Basin - + Parameters ---------- gf : geometric_features.GeometricFeatures - An object that knows how to download and read geometric featuers + An object that knows how to download and read geometric features Returns ------- fc : geometric_features.FeatureCollection The new feature collection with ocean sub-basins - ''' + """ # Authors # ------- # Milena Veneziani @@ -74,7 +74,8 @@ def subbasins(gf): fcEngCh = gf.read('ocean', 'region', ['English Channel']) fcCeltic = gf.read('ocean', 'region', ['Celtic Sea']) fcBristol = gf.read('ocean', 'region', ['Bristol Channel']) - fcScot = gf.read('ocean', 'region', ['Inner Seas off the West Coast of Scotland']) + fcScot = gf.read('ocean', 'region', + ['Inner Seas off the West Coast of Scotland']) fcIrish = gf.read('ocean', 'region', ['Irish Sea and St Georges Channel']) fcBothnia = gf.read('ocean', 'region', ['Gulf of Bothnia']) fcCanArc = gf.read('ocean', 'region', ['Canadian Archipelago']) @@ -124,7 +125,9 @@ def subbasins(gf): fcNP = gf.read('ocean', 'region', ['North Pacific Ocean']) fcECS = gf.read('ocean', 'region', ['Eastern China Sea']) fcAla = gf.read('ocean', 'region', ['Gulf of Alaska']) - fcAla2 = gf.read('ocean', 'region', ['The Coastal Waters of Southeast Alaska and British Columbia']) + fcAla2 = gf.read('ocean', 'region', + ['The Coastal Waters of Southeast Alaska and British ' + 'Columbia']) fcHala = gf.read('ocean', 'region', ['Halamahera Sea']) fcYell = gf.read('ocean', 'region', ['Yellow Sea']) fcSCS = gf.read('ocean', 'region', ['South China Sea']) @@ -158,7 +161,7 @@ def subbasins(gf): props = fcNP.features[0]['properties'] props['tags'] = ['North_Pacific_Basin', 'oceanSubBasinRegions'] props['author'] = author - + # Create South Pacific fcSP = gf.read('ocean', 'region', ['South Pacific Ocean']) fcBali = gf.read('ocean', 'region', ['Bali Sea']) From 626d4234fb6af77c5e4848478215ce7180cb2770 Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Fri, 23 Oct 2020 11:48:31 +0200 Subject: [PATCH 6/7] Remove unused imports These are causing serious problems with the autogenerated documentation. --- .../aggregation/ocean/subbasin_regions.py | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/geometric_features/aggregation/ocean/subbasin_regions.py b/geometric_features/aggregation/ocean/subbasin_regions.py index f5434174..d8095a56 100644 --- a/geometric_features/aggregation/ocean/subbasin_regions.py +++ b/geometric_features/aggregation/ocean/subbasin_regions.py @@ -1,21 +1,5 @@ #!/usr/bin/env python -import shapely -import numpy -import xarray -import os -import matplotlib.pyplot as plt -import pyproj -import gzip -import shutil -import tempfile - -from geometric_features import GeometricFeatures, FeatureCollection -from geometric_features.feature_collection import _round_coords - -from geometric_features.download import download_files -from geometric_features.utils import write_feature_names_and_tags - def subbasins(gf): """ From 5394c24ed98c0a356df003f3e47c7a84260ec7fe Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Fri, 23 Oct 2020 12:04:05 +0200 Subject: [PATCH 7/7] Add an image and more headings to docs --- docs/aggregation.rst | 10 ++++++++++ docs/images/subbasins.png | Bin 0 -> 67175 bytes 2 files changed, 10 insertions(+) create mode 100644 docs/images/subbasins.png diff --git a/docs/aggregation.rst b/docs/aggregation.rst index f12d5db8..98c48d66 100644 --- a/docs/aggregation.rst +++ b/docs/aggregation.rst @@ -6,8 +6,18 @@ Aggregate Existing Features The :py:mod:`geometric_features.aggregation` module contains functions used to aggregate existing features to make new, larger ones. + +Aggregating Ocean Features +-------------------------- + +Ocean Sub-basins +~~~~~~~~~~~~~~~~ + The only aggregation function that is currently available is :py:func:`geometric_features.aggregation.ocean.subbasins`, which aggregates oceanic regions to make the following ocean subbasins: North and South Atlantic, North and South Pacific, Indian Basin, Arctic Basin, and Southern Ocean Basin. +.. image:: images/subbasins.png + :width: 500 px + :align: center diff --git a/docs/images/subbasins.png b/docs/images/subbasins.png new file mode 100644 index 0000000000000000000000000000000000000000..7873b60c0ea8af707efbdca6a148909561bf2ca6 GIT binary patch literal 67175 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

BsKlT) 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