Wind Modeling
Wind Modeling¶
The wind model in erad is built using typical hurricane data. The model can be imported using the command below
Williams et al. (2020) Bennett et al. (2021)
from IPython.display import display, HTML
import plotly.graph_objects as go
import plotly.io as pio
pio.renderers.default = "plotly_mimetype"/opt/homebrew/Caskroom/miniconda/base/envs/erad/lib/python3.12/site-packages/kaleido/__init__.py:14: UserWarning:
Warning: You have Plotly version 6.0.1, which is not compatible with this version of Kaleido (1.0.0).
This means that static image generation (e.g. `fig.write_image()`) will not work.
Please upgrade Plotly to version 6.1.1 or greater, or downgrade Kaleido to version 0.2.1.
from erad.models.hazard import WindModelAn instance of WindModel requires the following pieces of information,
timestamp: The timestamp for the hurricane event
center: Center of the hurricane in lat / long format
max_wind_speed: Maximum wind speed
air_pressure: Air pressuse of the hurricame
radius_of_max_wind: Radius of the maximum wind speed
radius_of_closest_isobar: Radius of closest isobar
from datetime import datetime
from gdm.quantities import Distance
from shapely.geometry import Point
from erad.quantities import Speed, Pressure
hurricane = WindModel(
name="hurricane 1",
timestamp=datetime.now(),
center=Point(87, 20),
max_wind_speed=Speed(20, "miles/hour"),
air_pressure=Pressure(10000, "hPa"),
radius_of_max_wind=Distance(30, "miles"),
radius_of_closest_isobar=Distance(100, "miles"),
)
hurricane.pprint()An example of the WindModel can be built using the example() methods for testing purposes.
earthquake = WindModel.example()
earthquake.pprint()Building from historical events¶
Erad allows users to build wind models from historic hurricane events as well. The from_hurricane_sid class method can be used to build wind models representing historic events.
hurricane_track = WindModel.from_hurricane_sid("2017228N14314")
for h in hurricane_track:
h.pprint()
break
print(f"number of hurricane points : {len(hurricane_track)}")number of hurricane points : 141
Plotting the Wind Model¶
fig = go.Figure()
for track in hurricane_track:
track.plot(figure=fig)
fig.show()- Williams, J. H., Paulik, R., Wilson, T. M., Wotherspoon, L., Rusdin, A., & Pratama, G. M. (2020). Tsunami fragility functions for road and utility pole assets using field survey and remotely sensed data from the 2018 Sulawesi tsunami, Palu, Indonesia. Pure and Applied Geophysics, 177, 3545–3562.
- Bennett, J. A., Trevisan, C. N., DeCarolis, J. F., Ortiz-Garcı́a, C., Pérez-Lugo, M., Etienne, B. T., & Clarens, A. F. (2021). Extending energy system modelling to include extreme weather risks and application to hurricane events in Puerto Rico. Nature Energy, 6(3), 240–249.