Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blotchy return period wind hazard maps #105

Open
richsdixon opened this issue Nov 16, 2020 · 1 comment
Open

Blotchy return period wind hazard maps #105

richsdixon opened this issue Nov 16, 2020 · 1 comment

Comments

@richsdixon
Copy link

Hi - like another poster I am looking at Atlantic wind hazard - I've started running the tool (I've included the .ini file below) but I'm finding the return period maps are quite "blotchy" and - as suggested in another "issue" - the hazard is pretty low, however I don't get the smoothness of output that the other person is getting.

Is anyone able to offer any advice as to why this is so "blotchy"? My only guess is that it's a function of running only 1000 years of simulation: however in those 1000 years I would hope that I'm still seeing a return period well above 30 m/s in most places for the 50-year wind hazard. Thanks in advance for any help here.

image

[Actions]
; TCRM modules to execute
DataProcess=True
ExecuteStat=True
ExecuteTrackGenerator=True
ExecuteWindfield=True
ExecuteHazard=True
CreateDatabase=True
PlotHazard=True

PlotData=False

ExecuteEvaluate=False
DownloadData=False

[DataProcess]
InputFile=ibtracs.NA.list.v04r00.csv
Source=IBTRACS
StartSeason=1970
FilterSeasons=True

[Region]
; Domain for windfield and hazard calculation
gridLimit={'xMin':275.0,'xMax':285.0,'yMin':24.0,'yMax':34.0}
gridSpace={'x':1.0,'y':1.0}
gridInc={'x':1.0,'y':0.5}
LocalityID=250913860
LocalityName=Florida, USA

[StatInterface]
kdeType=gau
kde2DType=Gaussian
kdeStep=0.2

[TrackGenerator]
NumSimulations=1000
YearsPerSimulation=1
SeasonSeed=403943
TrackSeed=89333

[WindfieldInterface]
;TrackPath=./output/florida6/tracks
Margin=5.0
Resolution=0.02
Source=TCRM
profileType=holland
windFieldType=kepert

[Hazard]
; Years to calculate return period wind speeds
InputPath=./output/florida6/windfield
;Resolution=0.05
Years=2,5,10,50
MinimumRecords=10
CalculateCI=False

[Input]
#LocationFile = input/USZipShapefile.shp
LocationFile = input/stationlist.shp
landmask = input/landmask.nc
mslpfile = MSLP/slp.day.ltm.nc
datasets = IBTRACS,LTMSLP
MSLPGrid=1,2,3,4,12

[Output]
Path=./output/florida6

[Logging]
LogFile=./output/florida6/log/florida6.log
LogLevel=INFO
Verbose=False

[Process]
ExcludePastProcessed=True
DatFile=./output/florida6/process/dat/florida6.dat

[RMW]
GetRMWDistFromInputData=False
mean=50.0
sigma=0.6

[TCRM]
; Output track files settings
Columns=index,age,lon,lat,speed,bearing,pressure,penv,rmax
FieldDelimiter=,
NumberOfHeadingLines=1
SpeedUnits=kph
PressureUnits=hPa

[IBTRACS]
; Input data file settings
; url = ftp://eclipse.ncdc.noaa.gov/pub/ibtracs/v03r10/wmo/csv/Allstorms.ibtracs_wmo.v03r10.csv.gz
;url = https://www.ncei.noaa.gov/data/international-best-track-archive-for-climate-stewardship-ibtracs/v04r00/access/csv/ibtracs.ALL.list.v04r00.csv
path = input
filename = ibtracs.NA.list.v04r00.csv
columns = tcserialno,season,num,skip,skip,skip,date,skip,lat,lon,skip,pressure
fielddelimiter = ,
numberofheadinglines = 2
pressureunits = hPa
lengthunits = km
dateformat = %Y-%m-%d %H:%M:%S
speedunits = mph

[LTMSLP]
; MSLP climatology file settings
URL = ftp://ftp.cdc.noaa.gov/Datasets/ncep.reanalysis.derived/surface/slp.day.1981-2010.ltm.nc
path = MSLP
filename = slp.day.ltm.nc

@wcarthur
Copy link
Member

There is a 1 degree smoothing filter applied to the data before plotting (the underlying data in the hazard/hazard.nc file is unchanged). The smoothing filter propagates missing values. In the case of the example simulations, the likelihood of a grid point not recording a wind speed is moderate, leading to the blotchiness. We've implemented the filter to avoid

Solutions include increasing the Margin setting and increasing the number of simulations NumSimulations. Alternatively, you can comment out the firt three lines in the HazardMap.plot method in PlotInterface/maps.py

class HazardMap(FilledContourMapFigure):
    """
    A map for presenting return level data. 

    """
    def plot(self, data, xgrid, ygrid, title, lvls, cbarlab, map_kwargs):
        #dx = np.mean(np.diff(xgrid))
        #dmask = data.mask
        #data = ma.array(data, mask=dmask)
        self.add(data, xgrid, ygrid, title, lvls, cbarlab, map_kwargs)
        self.cmap = sns.light_palette("orange", as_cmap=True)
        super(HazardMap, self).plot()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants