oasislmf.pytools.gulmc.items

This file contains specific functionality to read and process items files.

Attributes

Functions

read_items(input_path[, ignore_file_type, ...])

Load the items from the items file.

generate_item_map(items, coverages)

Generate item_map; requires items to be sorted.

process_items(items, valid_area_peril_id[, ...])

Processes the Items loaded from the file extracting meta data around the vulnerability data.

Module Contents

oasislmf.pytools.gulmc.items.logger[source]
oasislmf.pytools.gulmc.items.read_items(input_path, ignore_file_type=set(), dynamic_footprint=False, legacy=False)[source]

Load the items from the items file.

Args:

input_path (str): the path pointing to the file ignore_file_type (Set[str]): file extension to ignore when loading.

Returns:
Tuple[Dict[int, int], List[int], Dict[int, int], List[Tuple[int, int]], List[int]]

vulnerability dictionary, vulnerability IDs, areaperil to vulnerability index dictionary, areaperil ID to vulnerability index array, areaperil ID to vulnerability array

oasislmf.pytools.gulmc.items.generate_item_map(items, coverages)[source]

Generate item_map; requires items to be sorted.

Args:
items (numpy.ndarray[int32, int32, int32]): 1-d structured array storing

item_id, coverage_id, group_id for all items. items need to be sorted by increasing areaperil_id, vulnerability_id in order to output the items in correct order.

Returns:
item_map (Dict[ITEM_MAP_KEY_TYPE, ITEM_MAP_VALUE_TYPE]): dict storing

the mapping between areaperil_id, vulnerability_id to item.

areaperil_ids_map (Dict[int, Dict[int, int]]) dict storing the mapping between each

areaperil_id and all the vulnerability ids associated with it.

oasislmf.pytools.gulmc.items.process_items(items, valid_area_peril_id, agg_vuln_to_vulns=None)[source]

Processes the Items loaded from the file extracting meta data around the vulnerability data.

Args:

items: (List[Item]) Data loaded from the vulnerability file valid_area_peril_id: array of area_peril_id to be included (if none, all are included). agg_vuln_to_vulns (dict[tuple[areaperil_int, int], int]): dict with aggregate vulnerability definitions.

Returns: (Tuple[Dict[int, int], Dict[int, int], np.array[int], np.array[int], dict[int, dict[int, int]], List[int])

vulnerability dictionary, areaperil to vulnerability index dictionary, areaperil to vulnerability index array, vuln id to vuln idx for each vulnerability in each areaperil, list of all used vulnerability ids.