Source code for geometric_features.aggregation.ocean.subbasin_regions



[docs] 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 : geometric_features.GeometricFeatures 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 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