Module viiaReferenceApproach

This module contains the functions developed to assist the process for the reference approach. Note that many functions still are in development

Preselection

viiapackage.viiaReferenceApproach.viia_get_preselection_reference_approach(project: ViiaProject, material_load_walls: str, most_floor_height: float, most_thickness_load_walls: float, nr_levels: int, other_floors_material: str, extend_object_data: int = 15, output_folder: Optional[Path] = None, send_to_myviia: bool = False) Path[source]

This function is used to collect data from the engineering database of MYVIIA and return the most optimal available objects to be referenced as a pre-selection. The references are weighed based on some parameters that are believed to select for the best reference objects.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • material_load_walls (str): Provide the material of the load-bearing walls for which the reference objects are matched. Select from ‘aerated concrete’, ‘concrete’, ‘clay masonry < 1945’, ‘clay masonry > 1945’, ‘calcium silicate > 1960’, ‘calcium silicate > 1985’, ‘HSB’, ‘modification wall’ or ‘timber’.

  • most_floor_height (float): Most common height of the load-bearing walls for which the reference objects are matched, in [m]. This is the most common floor height (approx.) or in absence of a common height the maximum wall height at the ground level. If we have 4 floors with heights: 3, 3.19, 3.2, 2.7m, the most common floor height is 3.2m. If we have 4 floors with all different height: 3, 3.2, 3.5, 2.7, then the most common floor height is the height of the ground floor.

  • most_thickness_load_walls (float): Most common thickness of the load-bearing walls for which the reference objects are matched, in [mm]. For PSSEs walls if existing. Usually, the thickness of masonry PSSE is constant between floors but if not select the most common at the ground floor level.

  • nr_levels (int): Number of levels excluding the basement level and including storage/living area attics. A basement level is included if it covers all the footprint area of the object (excluding appendances) and is modelled for the analysis. Small attic with non-structural ceiling (so no storage/living area) is not considered as a level.

  • other_floors_material (str): Provide only the most dominant material for the floor materials, other than the ground floor, for which the reference objects are matched. Select from ‘concrete’, ‘masonry’, ‘timber’ or ‘other (structural)’.

  • extend_object_data (int): Optional input for defining the amount of (best-fitting) objects that get extended information. Extended information includes measures, cost estimate and overview pictures. Default value is 15. Increasing this value will have issues for performance.

  • output_folder (Path): Optional input for location where to create the report. Default value is None, indicating the default location is used. In normal production objects do not change this!

  • send_to_myviia (bool): Select if the top 5 objects should be prefilled in the MYVIIA webtool. Default value is False, not sending data to MYVIIA.

Output:
  • The best 10 matching reference objects are provided for the user as a pre-selection to be used further in the process of the reference approach.

Helper-classes

class viiapackage.reference_approach.viia_current_object.CurrentObject(cluster: str, cluster_main: str, construction_year: int, material_load_walls: str, most_floor_height: float, most_thickness_load_walls: float, nr_levels: int, other_floors_material: str, pga: float, consequence_class: str, typology: float, objectnumber_viia: str, objectpart: str)[source]

Bases: object

Helper class for storing the data from user for the current object.

__init__(cluster: str, cluster_main: str, construction_year: int, material_load_walls: str, most_floor_height: float, most_thickness_load_walls: float, nr_levels: int, other_floors_material: str, pga: float, consequence_class: str, typology: float, objectnumber_viia: str, objectpart: str)[source]
Input:
  • cluster (str): Cluster code for the current object, for example ‘4B’.

  • cluster_main (str): Main cluster code for the current object, for example ‘4’.

  • construction_year (int): Year of construction for the current object, for example 1999.

  • material_load_walls (str): Provide the material of the load-bearing walls for which the current objects are matched. Select from ‘aerated concrete’, ‘concrete’, ‘clay masonry < 1945’, ‘clay masonry > 1945’, ‘calcium silicate > 1960’, ‘calcium silicate > 1985’, ‘HSB’, ‘modification wall’ or ‘timber’.

  • most_floor_height (float): Most common height of the load-bearing walls for which the current objects are matched, in [m]. This is the most common floor height (approx.) or in absence of a common height the maximum wall height at the ground level. If we have 4 floors with heights: 3, 3.19, 3.2, 2.7m, the most common floor height is 3.2m. If we have 4 floors with all different height: 3, 3.2, 3.5, 2.7, then the most common floor height is the height of the ground floor.

  • most_thickness_load_walls (float): Most common thickness of the load-bearing walls for which the current objects are matched, in [m]. For PSSEs walls if existing. Usually, the thickness of masonry PSSE is constant between floors but if not select the most common at the ground floor level.

  • nr_levels (int): Number of levels excluding the basement level and including storage/living area attics. A basement level is included if it covers all the footprint area of the object (excluding appendances) and is modelled for the analysis. Small attic with non-structural ceiling (so no storage/living area) is not considered as a level.

  • other_floors_material (str): Provide only the most dominant material for the floor materials, other than the ground floor, for which the current objects are matched. Select from ‘concrete’, ‘masonry’, ‘timber’ or ‘other (structural)’.

  • pga (float): Value of the pga of the current object, in [g].

  • consequence_class (str): Indicate the consequence class of the current object. E.g. ‘CC1b’ or ‘CC2’.

  • typology (str): Name of the cluster of the current object, according NCG naming, for example ‘Vrijstaand’.

  • objectnumber_viia (str): Number of the current VIIA-object, used for reporting only.

  • objectpart (str): Name of the current objectpart, used for reporting only.

class viiapackage.reference_approach.viia_convert_data_eng_database.MYVIIAEngDatabase(id: int, cluster: str = False, cluster_main: str = False, construction_year: int = False, material_load_walls: str = False, most_floor_height: float = False, most_thickness_load_walls: float = False, nr_levels: int = False, objectnumber_viia: str = False, objectpart: str = False, objectpart_id: int = False, other_floors_material: str = False, pga: float = False, rekenmethodiek: str = False, status: str = False, tva_sent: date = False, consequence_class: str = False, bg_floor_material: list = False, roof_material: list = False, building_height: float = False, foundation_type: str = False, measures: list = None, total_cost: Union[str, float] = None, box_link: str = None, dat_file_link: str = None)[source]

Bases: object

Helper class for storing the data from MYVIIA.

__init__(id: int, cluster: str = False, cluster_main: str = False, construction_year: int = False, material_load_walls: str = False, most_floor_height: float = False, most_thickness_load_walls: float = False, nr_levels: int = False, objectnumber_viia: str = False, objectpart: str = False, objectpart_id: int = False, other_floors_material: str = False, pga: float = False, rekenmethodiek: str = False, status: str = False, tva_sent: date = False, consequence_class: str = False, bg_floor_material: list = False, roof_material: list = False, building_height: float = False, foundation_type: str = False, measures: list = None, total_cost: Union[str, float] = None, box_link: str = None, dat_file_link: str = None) None
static from_myviia(dictionary)[source]

Method of ‘MYVIIAEngDatabase’ to convert data from the endpoint to the flat object description required for the reference approach and scoring.

property is_recent: bool

Method of ‘MYVIIAEngDatabase’ to check if the object is finished after 1st January 2019.

property score: float

Method of ‘MYVIIAEngDatabase’ to score if the object can be used as reference.

property score_cluster: int

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of cluster.

property score_construction_year: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of construction year.

property score_material_load_walls: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of most common load bearing walls.

property score_most_floor_height: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of most common floor height which implies the most common wall height.

property score_most_thickness_load_walls: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of the thickness of load bearing walls.

property score_nr_levels

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of number of story levels.

property score_other_floors_material: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of floor material.

property score_pga: float

Method of ‘MYVIIAEngDatabase’ to calculate score for the aspect of the pga of the address.

Helper-functions

viiapackage.reference_approach.viia_current_object.viia_current_object(project: ViiaProject, material_load_walls: str, most_floor_height: float, most_thickness_load_walls: float, nr_levels: int, other_floors_material: str) CurrentObject[source]

Function to create the instance for the current object. It collects the data required from the project instance and the user input.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • material_load_walls (str): Provide the material of the load-bearing walls for which the current objects are matched. Select from ‘aerated concrete’, ‘concrete’, ‘clay masonry < 1945’, ‘clay masonry > 1945’, ‘calcium sillicate > 1960’, ‘calcium sillicate > 1985’, ‘HSB’, ‘modification wall’ or ‘timber’.

  • most_floor_height (float): Most common height of the load-bearing walls for which the current objects are matched, in [m]. This is the most common floor height (approx.) or in absence of a common height the maximum wall height at the ground level. If we have 4 floors with heights: 3, 3.19, 3.2, 2.7m, the most common floor height is 3.2m. If we have 4 floors with all different height: 3, 3.2, 3.5, 2.7, then the most common floor height is the height of the ground floor.

  • most_thickness_load_walls (float): Most common thickness of the load-bearing walls for which the current objects are matched, in [mm]. For PSSEs walls if existing. Usually, the thickness of masonry PSSE is constant between floors but if not select the most common at the ground floor level.

  • nr_levels (int): Number of levels excluding the basement level and including storage/living area attics. A basement level is included if it covers all the footprint area of the object (excluding appendances) and is modelled for the analysis. Small attic with non-structural ceiling (so no storage/living area) is not considered as a level.

  • other_floors_material (str): Provide only the most dominant material for the floor materials, other than the ground floor, for which the current objects are matched. Select from ‘concrete’, ‘masonry’, ‘timber’ or ‘other (structural)’.

Output:
  • Returns the created current object as instance of the ReferenceObject class. Validation of the input is performed in the setters of the class.

viiapackage.reference_approach.viia_convert_data_eng_database.viia_convert_data_eng_database(data: List[dict]) List[MYVIIAEngDatabase][source]

Function to convert the raw data from MYVIIA to instances of the MYVIIAEngDatabase helper-class which is used for the comparison of the reference object. The list of records is filtered for ‘NLTH’ analyses finished after 1st January 2019.

Input:
  • data (list of dict): Raw input from the MYVIIA endpoint for the engineering database. Format of the dictionary is set in MYVIIA.

Output:
  • Returns list of instances of MYVIIAEngDatabase with references valid to be used in the reference approach.

viiapackage.reference_approach.viia_preset_myviia_selection.viia_preset_selected_reference_objects_myviia(project: ViiaProject, reference_objects: List[MYVIIAEngDatabase], current_object: CurrentObject) None[source]

This function will extend the information of the reference object with additional queries on MYVIIA. Currently, the data is extended for the information on the strengthening measures applied.

Input:
  • reference_object (obj): Object reference of the MYVIIAEngDatabase class.

Output:
  • The instance is extended with data from MYVIIA.

viiapackage.reference_approach.viia_extend_data_reference_objects.viia_extend_reference_object(reference_object: MYVIIAEngDatabase, token: Optional[str] = None) MYVIIAEngDatabase[source]

This function will extend the information of the reference object with additional queries on MYVIIA. Currently the data is extended for the information on the strengthening measures applied.

Input:
  • reference_object (obj): Object reference of the MYVIIAEngDatabase class.

Output:
  • The instance is extended with data from MYVIIA.

viiapackage.reference_approach.viia_report_preselection.viia_report_preselection(project: ViiaProject, reference_objects: List[MYVIIAEngDatabase], current_object: CurrentObject, extend_object_data: int, output_folder: Optional[Path] = None) Path[source]

This function creates an Excel-sheet of possible reference objects, to be used in the Reference Approach. Several properties such as the consequence class, building height, applied measures and overview pictures are shown of these objects. This list of objects is ranked and ordered based on their similarity to the current object the engineer is working on.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • reference_objects (list of obj): List of instances of MYVIIAEngDatabase with references valid to be used in the reference approach.

  • current_object (obj): Object reference of the current object, for which the available data will be added in the template.

  • extend_object_data (int): Input for defining the amount of (best-fitting) objects that get extended information. Extended information includes measures, cost estimate and overview pictures.

  • output_folder (Path): Optional input for location where to create the report. Default value is None, indicating the default location is used. In normal production objects do not change this!

Output:
  • Excel sheet with the detailed data of the ranked reference objects for the user as a pre-selection to be used further in the process of the reference approach.

Validation failure mechanisms

viiapackage.viiaReferenceApproach.viia_collect_reference_models(project: ViiaProject)[source]

Function to collect the reference object models from MYVIIA and store for further assessment of failure mechanisms.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

Output:
  • The selected reference objects in MYVIIA are collected and stored in the project instance.

viiapackage.viiaReferenceApproach.viia_collect_reference_walls_data(project: ViiaProject, failure_mechanism: str, ref_models: Dict = None) Tuple[Union[Path, List[RefWallIP], List[RefWallOOP], List[Dict]], List[Dict[str, Union[str, float]]]][source]

Function to collect the data from all walls in all referenced objects and store for further assessment of failure mechanisms.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • failure_mechanism (str): The type of report required. Possible options are ‘IP’ and ‘OOP’.

  • ref_models (dict): Dictionary with reference models that need to be considered. Default is None, then the reference models binded to the project are used.

Output:
  • If save_xls is True. Returns an excel-sheet with detailed data of the walls in the reference objects

  • Else a list of instance of collected walls and a list of dictionary with the data are returned.

viiapackage.viiaReferenceApproach.viia_scoring_current_wall(project: ViiaProject, current_wall: Dict[str, Union[str, float]], ref_walls_data: List[Dict], ref_walls: Union[List[RefWallIP], List[RefWallOOP]], ref_models: Dict = None, output_folder: Optional[Union[Path, str]] = None, save_xls: bool = True) Union[Path, List[Dict]][source]

This function compares the data of currently investigated walls and data of all walls from all referenced objects, and gives scores for each item in comparison.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • current_wall (dict): Data about the current wall. Example:

    For in-plane walls:
    current_wall = {
        'Object part': '313B - Woonhuis',  # str (Object and Object part)
        'Layer': 'N5',                     # str (VIIA layer, optional)
        'Material': 'MW-KLEI<1945',        # str (VIIA material)
        'Width': 4.05,                     # float, in [m].
        'Height': 2.50,                    # float, in [m].
        'Thickness': 210,                  # int, in [mm].
        'Wall type': 'Outer wall',         # str ('Inner wall' or 'Outer Wall')
        'z-coordinate top': 2.5}           # float, in [m].
    
    For out-of-plane walls:
    current_wall = {
        'Object part': '313B - Woonhuis',             # str (Object and Object part)
        'Layer': 'N5',                                # str (VIIA layer, optional)
        'Material': 'MW-KLEI<1945',                   # str (VIIA material)
        'Width': 4.05,                                # float, in [m].
        'Height': 2.50,                               # float, in [m].
        'Thickness': 210,                             # int, in [mm].
        'Wall type': 'Outer wall',                    # str ('Inner wall' or 'Outer Wall')
        'size_of_openings': [[1, 2], [1.0, 0.8]],     # list[list], in [m].
        'floor_spanning_direction': ['Parallel'],     # str ('Parallel' or 'Perpendicular').
        'roof_spanning_direction': ['Perpendicular'], # str ('Parallel' or 'Perpendicular').
        'overburden_load': 2                          # float, in [kN/m].
    
  • ref_walls_data (list): The list of dictionary with the data collected from all walls from all referenced objects.

  • ref_walls (list): The list of instance of all walls from all referenced objects.

  • output_folder (Path): Optional input for location where to create the report. Default value is None, indicating the default location is used. In normal production objects do not change this!

  • save_xls (bool): Indicates if the report should be saved as Excel or that the data dictionary should be returned .Default is True.

Output:
  • A list of dictionary with the scores for each wall from referenced objects compared to current wall.

Helper-classes

class viiapackage.reference_approach.reference_wall.current_wall.CurrentWall(density: float, height: float, layer: str, material: str, object_part: str, thickness: float, wall_type: str, width: float, name: str = '-', z_top: float = False, openings: float = False, size_of_openings: list = False, floor_spanning_direction: list = False, roof_spanning_direction: list = False, overburden_load: float = False)[source]

Bases: object

Class for the inputs of the user for the wall. These are used to compare to.

__init__(density: float, height: float, layer: str, material: str, object_part: str, thickness: float, wall_type: str, width: float, name: str = '-', z_top: float = False, openings: float = False, size_of_openings: list = False, floor_spanning_direction: list = False, roof_spanning_direction: list = False, overburden_load: float = False) None
to_report() Dict[str, Union[str, float]][source]

Method of ‘CurrentWall’ to convert data for the report.

to_table() Dict[str, Union[str, float]][source]

Method of ‘CurrentWall’ to convert data for a table.

class viiapackage.reference_approach.viia_generate_ref_report.RefWallIP(wall: Wall, measures: str)[source]

Bases: RefWall

Class for the data of the reference walls. These are compared to the current wall.

__init__(wall: Wall, measures: str)[source]
Input:
  • wall (Wall): Object reference of the wall from the reference object. Should be an instance of Wall class.

  • measures (str): All the measures in string format that have been applied to the object.

property score: float

Method of ‘RefWallIP’ to calculate total score for comparison of the current wall and reference wall.

property score_density: float

Method of ‘RefWallIP’ to calculate score for comparison of the density of the walls.

property score_height: float

Method of ‘RefWallIP’ to calculate score for comparison of the height of the walls.

property score_layer

Method of RefWallIP to determine the score of the wall based on its layer compared to the current wall

property score_material: float

Method of ‘RefWallIP’ to calculate score for comparison of the material of the walls.

property score_thickness: float

Method of ‘RefWallIP’ to calculate score for comparison of the thickness of the walls.

property score_wall_type: float

Method of ‘RefWallIP’ to calculate score for comparison of the wall-type (inner or facade) of the walls.

property score_width: float

Method of ‘RefWallIP’ to calculate score for comparison of the width of the walls.

property score_z_coordinate_top: float

Method of ‘RefWallIP’ to calculate score for comparison of the z-coordinate of the top of the walls.

to_report() Dict[str, Union[str, float]][source]

Method of ‘RefWallIP’ to convert data for the report.

to_score() Dict[str, Union[str, float]][source]

Method of ‘RefWallIP’ to score the wall.

to_table() Dict[str, Union[str, float]][source]

Method of ‘RefWallIP’ to convert data for a table.

property z_top

Returns the z-coordinate of the top-side of the wall of the reference object, in [m].

class viiapackage.reference_approach.viia_generate_ref_report.RefWallOOP(wall: Wall, measures: str, segment_width: float, segment_nr: Optional[int] = None)[source]

Bases: RefWall

Class for the data of the reference walls. These are compared to the current wall.

__init__(wall: Wall, measures: str, segment_width: float, segment_nr: Optional[int] = None)[source]
Input:
  • wall (Wall): Object reference of the wall from the reference object. Should be an instance of Wall class.

  • measures (str): All the measures in string format that have been applied to the object.

  • segment_width (float): Width of the wall between two lateral supporting walls, in [m]. In case of no segmentations due to supporting walls, the total width of the wall is used.

  • segment_nr (int): Number of the segment of the wall (starting at 1). Default value None, which is the case if the wall is not split.

calc_floor_spanning_direction(wall) list[source]

Method of ‘RefWallOOP’ to determine the spanning direction of the connected floors compared to the wall.

calc_overburden_load(wall) float[source]

Method of ‘RefWallOOP’ to determine the spanning direction of the floor compared to the current wall.

calc_roof_spanning_direction(wall) list[source]

Method of ‘RefWallOOP’ to determine the spanning direction of the connected roof compared to the wall.

calc_size_of_openings(wall) List[list][source]

Method of ‘RefWallOOP’ to calculate the size of the opening(s) of each wall.

property floor_spanning_direction: list

Method of ‘RefWallOOP’ to determine the spanning direction of the floors.

property openings: int

Method of ‘RefWallOOP’ to calculate the number of opening of each wall.

property overburden_load: float

Method of ‘RefWallOOP’ to determine the spanning direction of the floor compared to the current wall.

property roof_spanning_direction

Method of ‘RefWallOOP’ to determine the spanning direction of the floors.

property score: float

Method of ‘RefWallOOP’ to calculate total score for comparison of the current wall and reference wall.

property score_density: float

Method of ‘RefWallOOP’ to calculate score for comparison of the density of the walls.

property score_floor_spanning: float

Method of ‘RefWallOOP’ to calculate score for comparison of the floor spanning compared to the walls.

property score_height: float

Method of ‘RefWallOOP’ to calculate score for comparison of the total height of the walls.

property score_material: float

Method of ‘RefWallOOP’ to calculate score for comparison of the material of the walls.

property score_opening_size: float

Method of ‘RefWallOOP’ to calculate score for comparison of the size of the opening of the walls.

property score_openings: float

Method of ‘RefWallOOP’ to calculate score for comparison of the opening of the walls.

property score_ov_load: float

Method of ‘RefWallOOP’ to calculate score for comparison of the overburden loads of the walls.

property score_roof_spanning: float

Method of ‘RefWallOOP’ to calculate score for comparison of the roof spanning compared to the walls.

property score_thickness: float

Method of ‘RefWallOOP’ to calculate score for comparison of the thickness of the walls.

property score_wall_type: float

Method of ‘RefWallOOP’ to calculate score for comparison of the wall-type (inner or facade) of the walls.

property score_width: float

Method of ‘RefWallOOP’ to calculate score for comparison of the total length of the walls.

property size_of_openings: List[list]

Method of ‘RefWallOOP’ to calculate the number of opening of each wall.

to_report() Dict[str, Union[str, float]][source]

Method of ‘RefWallOOP’ to convert data for the report.

to_score() Dict[str, Union[str, float]][source]

Method of ‘RefWallOOP’ to score the wall.

to_table() Dict[str, Union[str, float]][source]

Method of ‘RefWallOOP’ to convert data for a table.

property wall_vector

Method of ‘RefWallOOP’ to determine the vector of the current wall.

Helper-functions

viiapackage.reference_approach.viia_collect_ref_models.viia_collect_ref_models(project: ViiaProject, objectparts: Dict[int, Dict[str, Any]]) Dict[int, Dict[str, Any]][source]

Function to collect the models from the reference objects from MYVIIA.

Input:
  • objectparts (dict): Dictionary with the IDs of the referenced objectparts and the general data of these objectparts.

Output:
  • Creates subprojects for the reference objects selected by user in MYVIIA, which have a model stored in the database of MYVIIA.

  • Returns dictionary with the reference objectparts ID (key) with information in dictionary with the subproject. This dictionary is also stored in the project variable.

viiapackage.reference_approach.viia_collect_ref_models.viia_get_ref_models_from_myviia(project: ViiaProject) Dict[int, Dict[str, Any]][source]

Function to collect the selected reference objects from MYVIIA.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

Output:
  • Returns dictionary with the IDs of the referenced objects and the general data of these objects.

viiapackage.reference_approach.viia_generate_ref_report.viia_generate_ref_ip_data(obj_vs_measures: dict, ref_models: dict) List[RefWallIP][source]

Function to generate the required data for the in-plane failure mechanism according the Reference Approach.

Input:
  • obj_vs_measures (dict): Dictionary with object parts and the applied measures

  • ref_models (dict): Dictionary with reference models that need to be considered.

Output:
  • Returns a tuple, first is a list of instances of RefWallIP with data and scores per wall. The second item is the current wall as instance of CurrentWall.

viiapackage.reference_approach.viia_generate_ref_report.viia_generate_ref_oop_data(obj_vs_measures: dict, ref_models: dict) List[RefWallOOP][source]

Function to generate the required data for the out-of-plane failure mechanism according the Reference Approach.

Input:
  • obj_vs_measures (dict): Dictionary with object parts and the applied measures

  • ref_models (dict): Dictionary with reference models that need to be considered.

Output:
  • Returns a tuple, first is a list of instances of RefWallOOP with data and scores per wall. The second item is the current wall as instance of CurrentWall.

viiapackage.reference_approach.viia_generate_ref_report.viia_generate_ref_report(project: ViiaProject, wall_data: List[dict], failure_mechanism: str, output_folder: Optional[Path] = None) Path[source]

This function creates an excel-sheet with a (sorted) list of all walls in the referenced object models.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • wall_data (list of obj): List of data about the walls in the reference objects, including the current wall at first position.

  • failure_mechanism (str): The type of report required. Possible options are ‘IP’ and ‘OOP’.

  • output_folder (Path): Optional input for location where to create the report. Default value is None, indicating the default location is used. In normal production objects do not change this!

Output:
  • Creates an excel-sheet with the detailed data of the walls in the reference objects, ranked by comparison to the current wall that is being investigated

Reporting reference approach

viiapackage.viiaReferenceApproach.viia_ref_table(project: ViiaProject, ref_element: Union[RefWallIP, RefWallOOP], output_folder: Optional[Union[Path, str]] = None) Path[source]

This function collects all referenced object models and creates an Excel sheet with a (sorted) list of all walls in the referenced object models. This list is compared to the wall currently being investigated.

Input:
  • project (obj): VIIA project object containing collections of fem objects and project variables.

  • current_element (dict): CurrentWall object, containing information about the element currently investigated.

  • ref_element (dict): RefWallIP or RefWallOOP object, containing information about chosen referenced element.

  • output_folder (Path): Optional input for location where to create the Word file. Default value is None, indicating the default location is used. In normal production objects do not change this!

Output:
  • Returns a Word file with a filled in table for the assessment of an element in the Reference Approach.

Helper-functions

viiapackage.reference_approach.viia_get_ref_info_from_myviia.viia_get_ref_info_from_myviia(project: ViiaProject) List[dict][source]

This function will generate dictionary keys for reference object data that can later be used as jinja tags for templating.

Note

Currently only available in Dutch.

Input
  • project (obj): VIIA project object containing collections of fem objects and project variables.

Output
  • Dictionary of jinja tags assigned to corresponding info.