Hazard Disaggregation

Tables:

  • DisaggAggregationExceedance - Disaggregation curves of Probablity of Exceedance
  • DisaggAggregationOccurence - Disaggregation curves of Probablity of Occurence

The base class LocationIndexedModel provides common attributes and indexing for models that support location-based indexing.

The base class DisaggAggregationBase defines attribtues common to both types of disaggregation curve.

classDiagram
direction TB

class LocationIndexedModel {

    partition_key = UnicodeAttribute(hash_key=True)  # For this we will use a downsampled location to 1.0 degree
    sort_key = UnicodeAttribute(range_key=True)

    nloc_001 = UnicodeAttribute()  # 0.001deg ~100m grid
    nloc_01 = UnicodeAttribute()  # 0.01deg ~1km grid
    nloc_1 = UnicodeAttribute()  # 0.1deg ~10km grid
    nloc_0 = UnicodeAttribute()  # 1.0deg ~100km grid

    version = VersionAttribute()
    uniq_id = UnicodeAttribute()

    lat = FloatAttribute()  # latitude decimal degrees
    lon = FloatAttribute()  # longitude decimal degrees

    vs30 = EnumConstrainedIntegerAttribute(VS30Enum)
    site_vs30 = FloatAttribute(null=True)

    created = TimestampAttribute(default=datetime_now)

}

class DisaggAggregationBase{
    ... fields from LocationIndexedModel
    hazard_model_id = UnicodeAttribute()
    imt = EnumConstrainedUnicodeAttribute(IntensityMeasureTypeEnum)

    hazard_agg = EnumConstrainedUnicodeAttribute(AggregationEnum)  # eg MEAN
    disagg_agg = EnumConstrainedUnicodeAttribute(AggregationEnum)

    disaggs = CompressedPickleAttribute()  # a very compressible numpy array,
    bins = PickleAttribute()  # a much smaller numpy array

    shaking_level = FloatAttribute()
    probability = EnumAttribute(ProbabilityEnum)  # eg TEN_PCT_IN_50YRS
}

class DisaggAggregationExceedance{
    ... fields from DisaggAggregationBase
}

class DisaggAggregationOccurence{
    ... fields from DisaggAggregationBase
}
LocationIndexedModel <|-- DisaggAggregationBase
DisaggAggregationBase <| -- DisaggAggregationExceedance
DisaggAggregationBase <| -- DisaggAggregationOccurence