Module viiaMaterials, viiaGeometries and viiaDatas

These modules contain the functions to create and assign materials, geometries and datas. These are part of the shapes and connections in the model. For the three types of properties separate classes contain the different property-models.

Materials

viiapackage.viiaMaterials.viia_convert_material_to_linear(project: ViiaProject, material: Material) Material[source]

Sub-function to convert material to linear material.

viiapackage.viiaMaterials.viia_create_materials(project: ViiaProject, material_name: str, hbv_span: Optional[float] = None, hbv_width: Optional[float] = None)[source]

This function will collect the arguments for the creation of an object based on the name of the element material. The VIIA naming convention is applied in this function and sub-functions it uses.

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

  • material_name(str): Name of the element geometry.

  • hbv_span (float): Span of the floor for timber floors and roofs, in [m].

  • hbv_width (float): Width of the floor, perpendicular to the span, for timber floors and roofs, in [m].

Output:
  • Returns the object reference to the ‘Material’ object that is created based on the input arguments.

viiapackage.viiaMaterials.viia_linear_properties(project: ViiaProject, shapes: List[Union[str, Shapes, Connections]] = None)[source]

This function removes all non-linear materials and replaces them for the linear version of it. It does not affect the soil, the soil-structure interaction (SSI) interface and the piles (which can be set linear separately). Function can operate before and after creating model in DIANA.

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

  • shapes (list with obj): List with shape and/or connection object references, of which the properties must be adjusted. If ‘None’, all non-linear materials will be replaced, except for the above-mentioned materials. Alternative (list with str): List with shape and/or connection names, of which the properties must be adjusted.

Output:
  • All non-linear materials of shape objects that are given, are replaced with the linear version.

  • If model is created the materials will be updated in DIANA.

  • A list is saved with references to original non-linear material that was assigned, this list can be found in project.project_specific[‘lists’][‘nonlinear shapes original’].

  • The object of the non-linear material is not removed when it is not used anymore. In DIANA the materials are removed when they are not used anymore (if model has been created).

viiapackage.viiaMaterials.viia_non_linear_properties(project: ViiaProject)[source]

This function replaces all linear materials created with viia_linear_properties with the original material. Function only works if viia_linear_properties has been executed.

Note

The function viia_linear_properties must have been executed previously.

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

Output:
  • All shapes and connections with originally non-linear materials are reset.

Sub-functions for materials

viiapackage.materials.viia_change_damping_explicit.viia_change_damping_explicit(project: ViiaProject)[source]

This function will change the beta damping for any material in the project to corresponding value for explicit analysis. It will overrule the default set for materials in the VIIA database, according latest BoD.

Function use: ABAQUS

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

Output:
  • The beta damping for all materials in the object will be change to corresponding explicit value from BoD. The material properties will be updated.

viiapackage.materials.viia_check_material_name.viia_check_material_name(project: ViiaProject, material_name: str, material_group: str) bool[source]

Function to check whether the name of the material is according to VIIA convention

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

  • material_name (str): Name of the material.

  • material_group (str): Name of the material-group.

Output:
  • Returns True if the material-name complies to VIIA naming convention.

  • Raises an error if the material-name is not according to VIIA convention.

viiapackage.materials.viia_create_material_model._viia_create_bond_slip_reinforcement_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect], reinforcement_steel_type: str = 'linear elastic', bond_slip_interface_type: str = 'multi linear') BondSlipModel[source]

Function to create a bond-slip reinforcement material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

  • reinforcement_steel_type (str): Type of material model for the steel reinforcement. Currently only ‘linear elastic’ is available (default value).

  • bond_slip_interface_type (str): Type of interface behaviour. Currently only ‘multi linear’ is available (default value).

Output:
  • Returns a Bonslip reinforcement material object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_coulomb_friction_interface_model(project: ViiaProject, material_name: str, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a coulomb friction interface model.

Supported interface types:
  • ‘3d point interface’

  • ‘3d line interface (2 shear, 1 normal)’

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

  • material_name (str): Name of the material.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a LinearElasticInterfaceModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_direct_stiffness_matrix_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a direct stiffness matrix material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a DirectStiffnessMatrixModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_engineering_masonry_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create an engineering masonry material model.

Note

VIIA uses only a specific material pattern with the following characteristics: - Head-joint failure type: direct input head-joint tensile strength. - Crack bandwidth specification: Rots.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns an EngineeringMasonryModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_line_mass_material_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a line mass material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a LineMassMaterialModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_linear_elastic_interface_model(project: ViiaProject, material_name: str, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a linear elastic interface model.

Supported interface types:
  • ‘3d line interface (2 shear, 1 normal)’

  • ‘3d line interface (2 normal, 1 shear)’,

  • ‘3d point interface’

  • ‘3D surface interface’

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

  • material_name (str): Name of the material.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a LinearElasticInterfaceModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_linear_elastic_isotropic_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a linear elastic isotropic material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a LinearElasticIsotropicModel material object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_linear_elastic_orthotropic_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a linear elastic orthotropic material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a LinearElasticOrthotropicModel material object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_non_linear_elastic_interface_model(project: ViiaProject, material_name: str, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a non-linear elastic interface model.

Supported interface types:
  • ‘3d line interface (2 shear, 1 normal)’

Supported nonlinear elasticity:
  • ‘No-tension with constant shear stiffness’

  • ‘Diagrams’

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

  • material_name (str): Name of the material.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a NonLinearElasticInterfaceModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_point_mass_material_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a point mass material model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a PointMassMaterialModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_rotational_spring_model(project: ViiaProject, material_group: str, material_model_properties: Dict, aspects: Optional[List[MaterialAspect]] = None)[source]

Function to create a rotational spring model.

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

  • material_group (str): Name of the materialgroup.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a TranslationalSpring material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_surface_mass_material_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a surface mass material model.

Note

VIIA uses only surface material model with distributed mass model.

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a SurfaceMassMaterialModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_total_strain_crack_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a total strain crack model material model.

Note

VIIA uses only a specific material pattern with the following characteristics: - Total strain based crack model: rotating - Tensile curve: hordijk - Reduction model: damaged based - Compression curve: parabolic

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

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a TotalStrainCrackModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_translational_spring_model(project: ViiaProject, material_group: str, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a translational spring model.

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

  • material_group (str): Name of the materialgroup.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns a TranslationalSpring material model object with VIIA settings.

viiapackage.materials.viia_create_material_model._viia_create_von_mises_plasticity_model(project: ViiaProject, material_model_properties: Dict, aspects: List[MaterialAspect])[source]

Function to create a von mises plasticity material model.

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

  • material_name (str): Name of the material.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • aspects (list): List with all the aspect objects of the models.

Output:
  • Returns VonMisesPlasticityModel material model object with VIIA settings.

viiapackage.materials.viia_create_material_model.viia_create_material_model(project: ViiaProject, material_group: str, material_group_properties: Dict[str, Union[str, float, int]], material_name: str, material_model_properties: Dict[str, Union[str, float, int, List[float]]]) Optional[MaterialModel][source]

Function to create a material model for FEM model in VIIA project.

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

  • material_group (str): Name of the materialgroup.

  • material_model_properties (dict): Dictionary with all the needed material model parameters.

  • material_name (str): Name of the material.

  • material_group_properties (dict): Dictionary with all the needed material group parameters.

Output:
  • Ceates and returns the requested material model object.

viiapackage.materials.viia_get_material_group.viia_get_material_group(project: ViiaProject, material_name: str) str[source]

Function to find the material group of the element material based on the name of the material. The groups are related to the material type. Materials are split in category’s ‘linear’ and ‘non-linear’. All information needed is in the name of the material (VIIA naming convention).

Currently available materialgroups are:

Linear:
  • ‘Linear’

  • ‘LinearInterface’

  • ‘LinearOrthotropic’

  • ‘LinearSpring’

  • ‘EmbeddedPile’

  • ‘TimberFrame’

  • ‘PointMass’

  • ‘LineMass’

  • ‘LineMass-Truss’

  • ‘SurfaceMass’

  • ‘Dummy’

Non-linear:
  • ‘NonLinMasonry’

  • ‘NonLinConcrete’

  • ‘NonLinRebar’

  • ‘NonLinBondSlipRebar’

  • ‘NonLinSteel’

  • ‘Soil’

  • ‘NonLinInterfaceFriction’

  • ‘NonLinElasticInterface’

  • ‘USRDEF’

  • ‘NonLinSpring’

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

  • material_name (str): Name of the material to be created (VIIA naming convention).

Output:
  • The name of the material group is returned as string.

viiapackage.materials.viia_get_material_group_constants.viia_get_material_group_constants(project: ViiaProject, material_group: str) Optional[Dict][source]

This function will return a dictionary with the material group constants from the viia_constants database.

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

  • material_group (str): Name of the material group that is looked up in the viia constants database.

Output:
  • Return dictionary with the constants of the material group from the database.

viiapackage.materials.viia_get_material_model_properties._viia_cavity_wall_tie(project: ViiaProject, material_name: str, material_group: str)[source]

Method of Material class to create the material dictionary for cavity wall ties, refered to as ‘SPOUWANKER’ in the shape name.

Procedure can be found in: Cavity wall ties in compression refer to NPR 9096-1-1 2012 par 3.8.2

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

  • material_name (str): Name of the spring material to be created (VIIA naming convention).

  • material_group (str): The name of the material group.

Output:
  • Returns a dictionary of material properties.

viiapackage.materials.viia_get_material_model_properties._viia_concrete_material_properties(project: ViiaProject, material_name: str)[source]

Function to get the material properties for any given concrete material, based on its concrete strengthclass (NEN-EN 1992-1-1). Example material names are: ‘LIN-BETON-C12/15’ or ‘BETON-C30/37’. The available aggregates in the name can be: ‘KWARTS’, ‘KALKSTEEN’, ‘ZANDSTEEN’ or ‘BASALT’ (or none given).

Note that this function uses basic input parameters via the material database and adjusts them for the concrete srengthclass. The materials in the database represent C20/25 concrete.

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

  • material_name (str): Name of the concrete material to be created (VIIA naming convention).

Output:
  • Returns a dictionary with the general material properties defined in the materials database for VIIA and the adjusted parameters that are related to the strength class of the concrete.

viiapackage.materials.viia_get_material_model_properties._viia_hollow_core_slabs(project: ViiaProject, material_name: str)[source]

Function to calculate the material model parameters for hollow core slabs with or without compressive concrete layer. The hollow core slab floors are modelled with linear elastic orthotropic material model. The parameters are calculated based on the parameters of the floor itself and (if present) the compresive layer.

Refer to VIIA_QE_R376_N004 for the calculation procedure.

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

  • material_name (str): Name of the hollow core slab floor, VIIA naming convention. For example: ‘LIN-KPV-260’ for hollow core slab A260 without compressive layer, or ‘LIN-KPV-200-40’ for hollow core slab with 40mm of structural reinforced concrete (not the finishing!).

Output:
  • A dictionary with input and parameters required for an orthotropic material model.

viiapackage.materials.viia_get_material_model_properties._viia_timber_frame_properties_old_npr(project: ViiaProject, material_name: str)[source]

Function to create the material dictionary for timber frame surfaces. This can be ‘HSB’, ‘HBV-PLANKEN’ and ‘HBV-PLATEN’.

Procedure can be found in: Wooden floors.xls version 1.3 d.d. 1 february 2017 Reference: https://royalhaskoningdhv.box.com/s/sdt0sruw4m0fwga8xo57m0mqwt2z7rhr

Note

materialgroup should be ‘TimberFrame’, otherwise ‘None’ is returned.

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

  • material_name (str): Name of the timber frame material to be created (VIIA naming convention).

Output:
  • Returns a dictionary with the general material properties defined in the materials database for VIIA and the adjusted parameters that are related to the dimensions of the beams and planks/plates (information in material name).

viiapackage.materials.viia_get_material_model_properties.viia_get_material_model_properties(project: ViiaProject, material_name: str, material_group: str, hbv_span: Optional[float] = None, hbv_width: Optional[float] = None)[source]

This function creates the dictionary with the material properties of the material. The procedure depends on the name of the materialgroup and creates a dictionary based on the dictionaries in the VIIA material database or based on the name of the material.

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

  • material_name (str): Name of the material.

  • material_group (str): The materialgroup determines the materialmodel that is used.

  • hbv_span (float): Span of the floor for timber floors and roofs, in [m].

  • hbv_width (float): Width of the floor, perpendicular to the span, for timber floors and roofs, in [m].

Output:
  • A dictionary is returned with the default project material properties.

viiapackage.materials.viia_get_material_model_properties.viia_timber_frame_properties(project: ViiaProject, material_name: str, span: Optional[float] = None, width: Optional[float] = None, plank_width: Optional[float] = None)[source]

Function to create the material dictionary for timber frame surfaces. This can be ‘HSB’, ‘HBV-PLANKEN’ and ‘HBV-PLATEN’.

Procedure can be found in: DISM_updated new UPR.xls version 2.5 d.d. 9 September 2021 Reference: excel-sheet

Note

materialgroup should be ‘TimberFrame’, otherwise ‘None’ is returned.

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

  • material_name (str): Name of the timber frame material to be created (VIIA naming convention).

  • span (float): Span of the floor for timber floors and roofs, in [m].

  • width (float): Width of the floor, perpendicular to the span, for timber floors and roofs, in [m].

  • plank_width (float): Width of the planks, in [m]. Default value will be retrieved from the ViiaSettings class.

Output:
  • Returns a dictionary with the general material properties defined in the materials database for VIIA and the adjusted parameters that are related to the dimensions of the beams and planks/plates (information in material name).

viiapackage.materials.viia_get_material_subclass.viia_get_material_class(material_group: str, material_name: str) str[source]

Function gets the subclass of the Material object which should be used.

Input:
  • material_group (str): Name of the material group (determines the material being used).

  • material_name (str): Name of the material.

Output:
  • Returns the material subclass as string.

Geometries

viiapackage.viiaGeometries.viia_create_geometries(project: ViiaProject, geometry_name: str) Geometry[source]

This function will collect the arguments for the creation of an object based on the name of the element geometry. The VIIA naming convention is applied in this function and sub-functions it uses.

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

  • geometry_name(str): Name of the element geometry.

Output:
  • Returns the object reference to the ‘Geometry’ object that is created based on the input arguments.

Sub-functions for geometries

viiapackage.geometries.viia_check_geometry_name.viia_check_geometry_name(geometry_name: str, geometry_group: str) bool[source]

Function to check whether the geometry-name is according to VIIA convention.

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

  • geometry_name (str): Name of the geometry.

  • geometry_group (str): Name of the geometry-group.

Output:
  • Returns True if the geometry-name complies to VIIA naming convention.

  • Raises an error if the geometry-name is not according to VIIA convention.

viiapackage.geometries.viia_create_geometry_model.viia_create_geometry_model(project: ViiaProject, geometry_group: str, geometry_model_properties: Dict[str, Union[str, float, int]]) GeometryModel[source]

Function to create a geometry model based on the given geometry properties.

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

  • geometry_group (str): Geometry group corresponding to the to be created geometry model.

  • geometry_properties (dict): Dictionary with all the needed geometry properties.

Output:
  • Returns a geometry model object with VIIA settings.

viiapackage.geometries.viia_get_geometry_group.viia_get_geometry_group(geometry_name: str) str[source]

Function to find the geometry-group of the element geometry based on the name of the geometry. The groups are related to the shape type it is applied on. All information needed is in the name of the geometry (VIIA naming convention).

Input:
  • geometry_name (str): Name of the element geometry to be created (VIIA naming convention).

Output:
  • Returns the name of the geometry-group based on VIIA naming conventuon, returned as string.

viiapackage.geometries.viia_get_geometry_model_properties._viia_cross_section_shape(project: ViiaProject, geometry_name: str) Dict[str, Union[str, float, int]][source]

This function filters the cross-sectional properties from the name of the geometry. The function will retrieve the properties for class I, class II and class III beams.

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

  • geometry_name (str): Name of the element geometry of a line element.

Output:
  • A dictionary is returned with the key ‘shape’ indicating the type of cross-section and the other entries are the cross-sectional dimensions, depending on the type of shape.

viiapackage.geometries.viia_get_geometry_model_properties._viia_extend_geometry_model_properties(project: ViiaProject, geometry_name: str, geometry_model_properties: Dict[str, Union[str, float, int]]) Dict[str, Union[str, float, int]][source]

This function extends the geometry properties dictionary for additional information for orthotropic surfaces and reinforcements.

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

  • geometry_name (str): Name of the element geometry of a line element.

  • geometry_model_properties (dict): Dictionary with the geometry properties, which will be extended.

Output:
  • The dictionary with geometry properties is returned with the added keys for shell or reinforcement.

viiapackage.geometries.viia_get_geometry_model_properties.viia_get_geometry_model_properties(project: ViiaProject, geometry_name: str, geometry_group: str) Dict[str, Union[str, float, int]][source]

This function collects the geometry-model properties, based on the geometry name according to VIIA naming conventions.

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

  • geometry_name (str): Name of the element geometry.

  • geometry_group (str): Name of the geometry-group.

Output:
  • Returns a dictionary with the properties for the geometry model.

Datas

viiapackage.viiaDatas.viia_create_all_datas(project: ViiaProject)[source]

This function will set the data properties for all the shapes and connections, based on the VIIA convention. For all soil shapes the data is set for ‘GROND’ and interfaces ‘INTERFACE’. For the rest of the shapes and connections the number of integration points over the thickness is set to the number in viiaSettings (depending on linear or non-linear material behaviour). Point-shapes, no-connections and tyings are excluded in this function. Also, shapes or connections that already have a data assigned are not updated.

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

Output:
  • All data attributes of shapes and connections are set. Except if the shape or connection has sub-shapes or already has a data set.

viiapackage.viiaDatas.viia_create_datas(project: ViiaProject, data_names: Union[str, List[str]]) Data[source]

This function will create an instance of the Data class, based on VIIA naming convention.

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

  • data_names (str): Name of the element data to be created. Alternative (list of str): List of multiple strings, the names of the data-models for the element data to be created. All data-models are part of a single instance of the Data class. The name of which is a combination of the names of the data-models.

Output:
  • Returns the object reference to the ‘Data’ object that is created based on the input arguments.

  • If name is not corresponding to the VIIA naming convention an error is raised.