1 / 30

Risiko : Python, GDAL, GeoNode for the Estimation of Impact from Natural Hazards

Risiko : Python, GDAL, GeoNode for the Estimation of Impact from Natural Hazards. Presenter: Ariel Núñez , GFDRR Labs, The World Bank. Where? Indonesia. Located among major tectonic plates boundaries. Biggest volcanoes and earthquakes in the world. Earthquakes cause Tsunamis.

kisha
Télécharger la présentation

Risiko : Python, GDAL, GeoNode for the Estimation of Impact from Natural Hazards

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Risiko: Python, GDAL, GeoNode for the Estimation of Impact from Natural Hazards Presenter: Ariel Núñez, GFDRR Labs, The World Bank

  2. Where? Indonesia • Located among major tectonic plates boundaries. • Biggest volcanoes and earthquakes in the world. • Earthquakes cause Tsunamis.

  3. 8.6 Magnitude Earthquake. April 11, 2012

  4. Automatic impact report

  5. Who? BNPB • Disaster Management Agency • AusAID (acting as AIFDR) • The World Bank (GFDRR Labs)

  6. What? Risiko: Risk in a Box • We decided to change the name • Nothing to do with Justin Timberlake and a song with a similar name.

  7. What? SAFEScenario Assessment for Emergency • In Indonesia it is actually called: InaSAFE (to help with SEO) • Core: python-safe: Ole Nielsen, PhD • Web: geonode-safe: Ariel Núñez • Desktop: qgis-safe: Tim Sutton

  8. How? • Easy to use • Allow results to be reproduced • Ensure consistency across different locations and scenarios • Platform for near real time impact estimates • Free and Open Source (GPL v3)

  9. Padang Earthquake, 2009

  10. Building Survey Sept 30th,2009 GeoScience Australia / ITB

  11. Impact

  12. Pictures or it didn’t happen. Source code

  13. Vulnerability Curves

  14. Impact function

  15. National Hazard Map - BNPB

  16. Mentawi fault zone off Sumatra

  17. Sumatran Fault 7.8 Shakemap

  18. Repeating the experiment

  19. Impact

  20. Type of analysis • Things that are usually done in a combination of Excel and ArcGIS. • More about normal distributions and statistics than about ‘point inside polygon’ operations.

  21. For developers

  22. Let’s try it out sudo apt-get install python-numpy python-scipy python-nose pip install python-safe python >>> import safe >>> safe.test()

  23. Simple Plugin Architecture class PluginMount(type): def __init__(cls, name, bases, attrs): if not hasattr(cls, 'plugins'): cls.plugins = [] else: cls.plugins.append(cls) class FunctionProvider: __metaclass__ = PluginMount

  24. Sample Impact Function class EmpiricalFatalityFunction(FunctionProvider): """Risk plugin for earthquake damage based on empirical results :param requires category==’hazard' :param requires subcategory==’earthquake’ :param requires unit=‘mmi’ "”” @staticmethod def run(layers, teta=14.05, beta=0.17, zeta=2.15):

  25. Get data def run() : … # Identify input layers intensity = get_hazard_layer(layers) population = get_exposure_layer(layers) # Extract data H = intensity.get_data(nan=0) P = population.get_data(nan=0)

  26. Calculate impact # Calculate impact logHazard = 1 / beta * numpy.log(H / teta) # Convert array to be standard floats expected by cdf arrayout = numpy.array([[float(value) for value in row] for row in logHazard]) x = arrayout * P F = cdf(x)

  27. Creating the output # Create new layer and return R = Raster(F, projection=population.get_projection(), geotransform=population.get_geotransform(), name='Estimated fatalities') return R

  28. To remember: • If you deal with vector and raster data and like Python and GDAL, help us develop python-safe.http://github.com/AIFDR/python-safe • If you need a data storage for your scripts that deal with GIS, try GeoNode/GeoServer.http://geonode.org

  29. Video

  30. Thanks! • @ingenieroariel • anunezgomez@worldbank.org • http://github.com/AIFDR/python-safe

More Related