ProbabilityCurve and ProbabilityMap¶
- 
class openquake.hazardlib.probability_map.ProbabilityCurve(array)[source]¶
- This class is a small wrapper over an array of PoEs associated to a set of intensity measure types and levels. It provides a few operators, including the complement operator ~ - ~p = 1 - p - and the inclusive or operator | - p = p1 | p2 = ~(~p1 * ~p2) - Such operators are implemented efficiently at the numpy level, by dispatching on the underlying array. - Here is an example of use: - >>> poe = ProbabilityCurve(numpy.array([0.1, 0.2, 0.3, 0, 0])) >>> ~(poe | poe) * .5 <ProbabilityCurve [ 0.405 0.32 0.245 0.5 0.5 ]> 
- 
class openquake.hazardlib.probability_map.ProbabilityMap[source]¶
- A dictionary site_id -> ProbabilityCurve. It defines the complement operator ~, performing the complement on each curve - ~p = 1 - p - and the “inclusive or” operator |: - m = m1 | m2 = {sid: m1[sid] | m2[sid] for sid in all_sids} - Such operators are implemented efficiently at the numpy level, by dispatching on the underlying array. Moreover there is a classmethod .build(num_levels, num_gsims, sids, initvalue) to build initialized instances of ProbabilityMap.