Source code for geometric_features.aggregation.ocean.ice_shelf_regions

from geometric_features import FeatureCollection


[docs] def ice_shelves(gf): """ Aggregate 106 Antarctic ice shelves and ice-shelf regions 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 ice shelves """ # Authors # ------- # Xylar Asay-Davis iceShelfNames = ['Abbot', 'Amery', 'Atka', 'Aviator', 'Bach', 'Baudouin', 'Borchgrevink', 'Brahms', 'Brunt_Stancomb', 'Campbell', 'Cheetham', 'Conger_Glenzer', 'Cook', 'Cosgrove', 'Crosson', 'Dennistoun', 'Dibble', 'Dotson', 'Drygalski', 'Edward_VIII', 'Ekstrom', 'Ferrigno', 'Filchner', 'Fimbul', 'Fitzgerald', 'Frost', 'GeikieInlet', 'George_VI', 'Getz', 'Gillet', 'Hamilton', 'Hannan', 'HarbordGlacier', 'Helen', 'Holmes', 'HolmesWest', 'Hull', 'Jelbart', 'Land', 'Larsen_B', 'Larsen_C', 'Larsen_D', 'Larsen_E', 'Larsen_F', 'Larsen_G', 'Lazarev', 'Lillie', 'Mariner', 'Matusevitch', 'Mendelssohn', 'Mertz', 'Moscow_University', 'Moubray', 'Mulebreen', 'Myers', 'Nansen', 'Nickerson', 'Ninnis', 'Nivl', 'Noll', 'Nordenskjold', 'Pine_Island', 'PourquoiPas', 'Prince_Harald', 'Publications', 'Quar', 'Rayner_Thyer', 'Rennick', 'Richter', 'Riiser-Larsen', 'Ronne', 'Western_Ross', 'Eastern_Ross', 'Shackleton', 'Shirase', 'Slava', 'SmithInlet', 'Stange', 'Sulzberger', 'Suvorov', 'Swinburne', 'Thwaites', 'Tinker', 'Totten', 'Tracy_Tremenchus', 'Tucker', 'Underwood', 'Utsikkar', 'Venable', 'Verdi', 'Vigrid', 'Vincennes', 'Voyeykov', 'West', 'Wilkins', 'Wilma_Robert_Downer', 'Withrow', 'Wordie', 'Wylde', 'Zubchatyy'] combinedIceShelves = {'Filchner-Ronne': ['Filchner', 'Ronne'], 'Ross': ['Western_Ross', 'Eastern_Ross'], 'Antarctica': ['AntarcticPenninsulaIMBIE', 'WestAntarcticaIMBIE', 'EastAntarcticaIMBIE'], 'Peninsula': ['AntarcticPenninsulaIMBIE'], 'West Antarctica': ['WestAntarcticaIMBIE'], 'East Antarctica': ['EastAntarcticaIMBIE']} nIMBIEBasins = 27 for basinNumber in range(1, nIMBIEBasins + 1): basinName = 'Antarctica_IMBIE{}'.format(basinNumber) combinedIceShelves['IMBIE{}'.format(basinNumber)] = [basinName] # create a FeatureCollection containing all ice shelves and combined # ice-shelf regions fc = FeatureCollection() # build analysis regions from combining ice shelves from regions with the # appropriate tags for shelfName in combinedIceShelves: subNames = combinedIceShelves[shelfName] print(shelfName) print(' * merging features') fcShelf = gf.read(componentName='iceshelves', objectType='region', tags=subNames, allTags=False) print(' * combining features') fcShelf = fcShelf.combine(featureName=shelfName) # merge the feature for the basin into the collection of all basins fc.merge(fcShelf) # build ice shelves from regions with the appropriate tags for shelfName in iceShelfNames: print(shelfName) print(' * merging features') fcShelf = gf.read(componentName='iceshelves', objectType='region', tags=[shelfName]) print(' * combining features') fcShelf = fcShelf.combine(featureName=shelfName) # merge the feature for the basin into the collection of all basins fc.merge(fcShelf) return fc