From e73fbd06e5f33beacb6b208747396b04e98915e9 Mon Sep 17 00:00:00 2001 From: KaratasD Date: Fri, 13 May 2022 13:22:06 +0200 Subject: [PATCH 1/5] Load Restructuring --- Examples/Cantilever/Demo2.py | 139 +++++++++++++++++- RFEM/BasicObjects/thickness.py | 21 +-- .../loadCombination.py | 50 +++---- RFEM/Loads/freeLoad.py | 54 +++---- RFEM/Loads/lineLoad.py | 40 ++--- UnitTests/test_Thickness_Test.py | 4 +- 6 files changed, 212 insertions(+), 96 deletions(-) diff --git a/Examples/Cantilever/Demo2.py b/Examples/Cantilever/Demo2.py index 3c2d7155..8c48f10b 100644 --- a/Examples/Cantilever/Demo2.py +++ b/Examples/Cantilever/Demo2.py @@ -9,22 +9,145 @@ sys.path.append(dirName + r'/../..') from RFEM.initModel import Model +from RFEM.LoadCasesAndCombinations.staticAnalysisSettings import StaticAnalysisSettings +from RFEM.LoadCasesAndCombinations.loadCase import LoadCase +from RFEM.BasicObjects.material import Material from RFEM.BasicObjects.node import Node -from RFEM.BasicObjects.member import Member -from RFEM.TypesForMembers.memberDefinableStiffness import MemberDefinableStiffness +from RFEM.BasicObjects.line import Line +from RFEM.BasicObjects.thickness import Thickness +from RFEM.BasicObjects.surface import Surface +from RFEM.enums import * +from RFEM.Loads.lineLoad import LineLoad + if __name__ == '__main__': - Model(True, "Demo2") + Model(True, "demo") Model.clientModel.service.begin_modification() - Node(1, 0,0,0) - Node(2, 5,2,3) + # Creating a lot of lines for line load testing + + Node(1, 0, 0, 0), Node(2, 2, 0, 0), Node(3, 4, 0, 0), Node( 4, 6, 0, 0), Node(5, 8, 0, 0), Node(6, 10, 0, 0) + Node(7, 10, 2, 0), Node(8, 10, 4, 0), Node(9, 10, 6, 0), Node(10, 10, 8, 0), Node(11, 10, 10, 0) + Node(12, 8, 10, 0), Node(13, 6, 10, 0), Node(14, 4, 10, 0), Node(15, 2, 10, 0), Node(16, 0, 10, 0) + Node(17, 0, 8, 0), Node(18, 0, 6, 0), Node(19, 0, 4, 0), Node(20, 0, 2, 0) + + surface_str = '' + nodes_no = '' + for i in range(1, 21): + if i < 20: + surface_str += str(i)+' ' + nodes_no = str(i)+' '+str(i+1) + Line(i, nodes_no) + else: + surface_str += str(i) + nodes_no = str(i)+' 1' + Line(i, nodes_no) + + Material() + Thickness() + Surface(1, surface_str) + + # Testing Standard (i.e. default) Function + + LoadCase(1, 'Standard') + + LineLoad(1, 1, '1', magnitude=1) + + # Testing Force Type Line Loads + + LoadCase(2, 'TYPE: Force') + + LineLoad.Force(1, 2, '1', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, + load_parameter=[1000]) + + LineLoad.Force(2, 2, '2', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, + load_parameter=[False, 10000, 0.5]) + + LineLoad.Force(3, 2, '3', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, + load_parameter=[True, True, 25000, 3, 0.25, 0.5]) + + LineLoad.Force(4, 2, '4', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, + load_parameter=[True, True, True, 17000, 0.25, 0.5, 0.25]) + + LineLoad.Force(5, 2, '5', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, + load_parameter=[True, True, 5000, 7500, 0.4, 0.5]) + + LineLoad.Force(6, 2, '6', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, + load_parameter=[[0.2, 0.1, 200], [0.5, 0.2, 200]]) + + LineLoad.Force(7, 2, '7', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, + load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) + + LineLoad.Force(8, 2, '8', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, + load_parameter=[750, 1000, 2500]) + + LineLoad.Force(9, 2, '9', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_VARYING, + load_parameter=[[1, 1, 75000], [2, 1, 60000]]) + + # Testing Moment Type Line Loads + + LoadCase(3, 'TYPE: Moment') + + LineLoad.Moment(1, 3, '1', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, + load_parameter=[1000]) + + LineLoad.Moment(2, 3, '2', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, + load_parameter=[False, 10000, 0.5]) + + LineLoad.Moment(3, 3, '3', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, + load_parameter=[True, True, 25000, 3, 0.25, 0.5]) + + LineLoad.Moment(4, 3, '4', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, + load_parameter=[True, True, True, 17000, 0.25, 0.5, 0.25]) + + LineLoad.Moment(5, 3, '5', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, + load_parameter=[True, True, 5000, 7500, 0.4, 0.5]) + + LineLoad.Moment(6, 3, '6', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, + load_parameter=[[0.2, 0.1, 200], [0.5, 0.2, 200]]) + + LineLoad.Moment(7, 3, '7', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, + load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) + + LineLoad.Moment(8, 3, '8', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TAPERED, + load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) + + LineLoad.Moment(9, 3, '9', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, + load_parameter=[750, 1000, 2500]) + + LineLoad.Moment(10, 3, '10', + load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_VARYING, + load_parameter=[[1, 1, 75000], [2, 1, 60000]]) - MemberDefinableStiffness() + # Testing Mass Type Line Loads - Member.DefinableStiffness(1, 1, 2, definable_stiffness=1) + LoadCase(4, 'TYPE: Mass') - Model.clientModel.service.finish_modification() + LineLoad.Mass(1, 4, '1', + individual_mass_components=False, + mass_components=[10]) + LineLoad.Mass(2, 4, '2', + individual_mass_components=True, + mass_components=[1000, 1000, 10000]) + Model.clientModel.service.finish_modification() \ No newline at end of file diff --git a/RFEM/BasicObjects/thickness.py b/RFEM/BasicObjects/thickness.py index 7cde1038..a3340c8e 100644 --- a/RFEM/BasicObjects/thickness.py +++ b/RFEM/BasicObjects/thickness.py @@ -372,7 +372,7 @@ def Variable_Circle( def Layers( no: int = 1, name: str = None, - layers = [[0, 1, 0.2, 0.0, '']], + layers = [[0, 1, 0.2]], comment: str = '', params: dict = None, model = Model): @@ -385,7 +385,6 @@ def Layers( name (str): Thickness Name material_no (int): Tag of Material assigned to Thickness properties (list): Nested List of Layer Properties - properties: [[thickness_type, material, thickness, rotation, comment], ...] comment (str, optional): Comments params (dict, optional): Any WS Parameter relevant to the object and its value in form of a dictionary ''' @@ -415,18 +414,12 @@ def Layers( clientObject.layers_reference_table = model.clientModel.factory.create('ns0:thickness.layers_reference_table') for i,j in enumerate(layers): - tlrt = model.clientModel.factory.create('ns0:thickness_layers_reference_table') - tlrt.no = no - tlrt.layer_no = i+1 - tlrt.layer_type = None - tlrt.thickness_type = layers[i][0] - tlrt.material = layers[i][1] - tlrt.thickness = layers[i][2] - tlrt.angle = layers[i][3] * (pi/180) - tlrt.connection_with_other_topological_elements = False - tlrt.comment = layers[i][4] - tlrt.specific_weight = 0 - tlrt.weight = 0 + tlrt = model.clientModel.factory.create('ns0:thickness_layers_reference_table_row') + tlrt.no = i+1 + tlrt.row.layer_no = i+1 + tlrt.row.thickness_type = layers[i][0] + tlrt.row.material = layers[i][1] + tlrt.row.thickness = layers[i][2] clientObject.layers_reference_table.thickness_layers_reference_table.append(tlrt) diff --git a/RFEM/LoadCasesAndCombinations/loadCombination.py b/RFEM/LoadCasesAndCombinations/loadCombination.py index 08fe107e..a08830c4 100644 --- a/RFEM/LoadCasesAndCombinations/loadCombination.py +++ b/RFEM/LoadCasesAndCombinations/loadCombination.py @@ -64,32 +64,32 @@ def __init__(self, clientObject.items = model.clientModel.factory.create('ns0:load_combination.items') for i,j in enumerate(combination_items): - mlvlp = model.clientModel.factory.create('ns0:load_combination_items') + mlvlp = model.clientModel.factory.create('ns0:load_combination_items_row') mlvlp.no = i+1 - mlvlp.factor = combination_items[i][0] - mlvlp.load_case = combination_items[i][1] - mlvlp.action = combination_items[i][2] - mlvlp.is_leading = combination_items[i][3] - mlvlp.gamma=0 - mlvlp.psi=0 - mlvlp.xi=0 - mlvlp.k_fi=0 - mlvlp.c_esl=0 - mlvlp.k_def=0 - mlvlp.psi_0=0 - mlvlp.psi_1=0 - mlvlp.psi_2=0 - mlvlp.fi=0 - mlvlp.gamma_0=0 - mlvlp.alfa=0 - mlvlp.k_f=0 - mlvlp.phi=0 - mlvlp.rho=0 - mlvlp.omega_0=0 - mlvlp.gamma_l_1=0 - mlvlp.k_creep=0 - mlvlp.shift=0 - mlvlp.amplitude_function_type = "CONSTANT" + mlvlp.row.factor = combination_items[i][0] + mlvlp.row.load_case = combination_items[i][1] + mlvlp.row.action = combination_items[i][2] + mlvlp.row.is_leading = combination_items[i][3] + mlvlp.row.gamma=0 + mlvlp.row.psi=0 + mlvlp.row.xi=0 + mlvlp.row.k_fi=0 + mlvlp.row.c_esl=0 + mlvlp.row.k_def=0 + mlvlp.row.psi_0=0 + mlvlp.row.psi_1=0 + mlvlp.row.psi_2=0 + mlvlp.row.fi=0 + mlvlp.row.gamma_0=0 + mlvlp.row.alfa=0 + mlvlp.row.k_f=0 + mlvlp.row.phi=0 + mlvlp.row.rho=0 + mlvlp.row.omega_0=0 + mlvlp.row.gamma_l_1=0 + mlvlp.row.k_creep=0 + mlvlp.row.shift=0 + mlvlp.row.amplitude_function_type = "CONSTANT" clientObject.items.load_combination_items.append(mlvlp) diff --git a/RFEM/Loads/freeLoad.py b/RFEM/Loads/freeLoad.py index 5fe2c9e4..bb857c8b 100644 --- a/RFEM/Loads/freeLoad.py +++ b/RFEM/Loads/freeLoad.py @@ -278,10 +278,10 @@ def RectangularLoad( clientObject.load_varying_in_z_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_in_z_parameters') varying_in_z = load_location_parameter[4] for i,j in enumerate(varying_in_z): - frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters') + frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters_row') frllvp.no = i+1 - frllvp.distance = varying_in_z[i][0] - frllvp.factor = varying_in_z[i][1] + frllvp.row.distance = varying_in_z[i][0] + frllvp.row.factor = varying_in_z[i][1] clientObject.load_varying_in_z_parameters.free_rectangular_load_load_varying_in_z_parameters.append(frllvp) elif load_distribution.name == 'LOAD_DISTRIBUTION_VARYING_ALONG_PERIMETER': @@ -302,10 +302,10 @@ def RectangularLoad( clientObject.load_varying_along_perimeter_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_along_perimeter_parameters') varying_along_perimeter = load_location_parameter[7] for i,j in enumerate(varying_along_perimeter): - frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters') + frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters_row') frllvapp.no = i+1 - frllvapp.alpha = varying_along_perimeter[i][0] * (pi/180) - frllvapp.factor = varying_along_perimeter[i][1] + frllvapp.row.alpha = varying_along_perimeter[i][0] * (pi/180) + frllvapp.row.factor = varying_along_perimeter[i][1] clientObject.load_varying_along_perimeter_parameters.free_rectangular_load_load_varying_along_perimeter_parameters.append(frllvapp) elif load_distribution.name == 'LOAD_DISTRIBUTION_VARYING_IN_Z_AND_ALONG_PERIMETER': @@ -319,10 +319,10 @@ def RectangularLoad( clientObject.load_varying_in_z_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_in_z_parameters') varying_in_z = load_location_parameter[4] for i,j in enumerate(varying_in_z): - frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters') + frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters_row') frllvp.no = i+1 - frllvp.distance = varying_in_z[i][0] - frllvp.factor = varying_in_z[i][1] + frllvp.row.distance = varying_in_z[i][0] + frllvp.row.factor = varying_in_z[i][1] clientObject.load_varying_in_z_parameters.free_rectangular_load_load_varying_in_z_parameters.append(frllvp) clientObject.axis_definition_p1_x = load_location_parameter[5][0] @@ -336,10 +336,10 @@ def RectangularLoad( clientObject.load_varying_along_perimeter_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_along_perimeter_parameters') varying_along_perimeter = load_location_parameter[8] for i,j in enumerate(varying_along_perimeter): - frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters') + frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters_row') frllvapp.no = i+1 - frllvapp.alpha = varying_along_perimeter[i][0] * (pi/180) - frllvapp.factor = varying_along_perimeter[i][1] + frllvapp.row.alpha = varying_along_perimeter[i][0] * (pi/180) + frllvapp.row.factor = varying_along_perimeter[i][1] clientObject.load_varying_along_perimeter_parameters.free_rectangular_load_load_varying_along_perimeter_parameters.append(frllvapp) elif load_location.name == 'LOAD_LOCATION_RECTANGLE_CENTER_AND_SIDES': @@ -364,10 +364,10 @@ def RectangularLoad( clientObject.load_varying_in_z_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_in_z_parameters') varying_in_z = load_location_parameter[4] for i,j in enumerate(varying_in_z): - frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters') + frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters_row') frllvp.no = i+1 - frllvp.distance = varying_in_z[i][0] - frllvp.factor = varying_in_z[i][1] + frllvp.row.distance = varying_in_z[i][0] + frllvp.row.factor = varying_in_z[i][1] clientObject.load_varying_in_z_parameters.free_rectangular_load_load_varying_in_z_parameters.append(frllvp) elif load_distribution.name == 'LOAD_DISTRIBUTION_VARYING_ALONG_PERIMETER': @@ -388,10 +388,10 @@ def RectangularLoad( clientObject.load_varying_along_perimeter_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_along_perimeter_parameters') varying_along_perimeter = load_location_parameter[7] for i,j in enumerate(varying_along_perimeter): - frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters') + frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters_row') frllvapp.no = i+1 - frllvapp.alpha = varying_along_perimeter[i][0] * (pi/180) - frllvapp.factor = varying_along_perimeter[i][1] + frllvapp.row.alpha = varying_along_perimeter[i][0] * (pi/180) + frllvapp.row.factor = varying_along_perimeter[i][1] clientObject.load_varying_along_perimeter_parameters.free_rectangular_load_load_varying_along_perimeter_parameters.append(frllvapp) elif load_distribution.name == 'LOAD_DISTRIBUTION_VARYING_IN_Z_AND_ALONG_PERIMETER': @@ -405,10 +405,10 @@ def RectangularLoad( clientObject.load_varying_in_z_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_in_z_parameters') varying_in_z = load_location_parameter[4] for i,j in enumerate(varying_in_z): - frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters') + frllvp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_in_z_parameters_row') frllvp.no = i+1 - frllvp.distance = varying_in_z[i][0] - frllvp.factor = varying_in_z[i][1] + frllvp.row.distance = varying_in_z[i][0] + frllvp.row.factor = varying_in_z[i][1] clientObject.load_varying_in_z_parameters.free_rectangular_load_load_varying_in_z_parameters.append(frllvp) clientObject.axis_definition_p1_x = load_location_parameter[5][0] @@ -422,10 +422,10 @@ def RectangularLoad( clientObject.load_varying_along_perimeter_parameters = model.clientModel.factory.create('ns0:free_rectangular_load.load_varying_along_perimeter_parameters') varying_along_perimeter = load_location_parameter[8] for i,j in enumerate(varying_along_perimeter): - frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters') + frllvapp = model.clientModel.factory.create('ns0:free_rectangular_load_load_varying_along_perimeter_parameters_row') frllvapp.no = i+1 - frllvapp.alpha = varying_along_perimeter[i][0] * (pi/180) - frllvapp.factor = varying_along_perimeter[i][1] + frllvapp.row.alpha = varying_along_perimeter[i][0] * (pi/180) + frllvapp.row.factor = varying_along_perimeter[i][1] clientObject.load_varying_along_perimeter_parameters.free_rectangular_load_load_varying_along_perimeter_parameters.append(frllvapp) # Comment @@ -589,10 +589,10 @@ def PolygonLoad( # Load Location clientObject.load_location = model.clientModel.factory.create('ns0:free_polygon_load.load_location') for i,j in enumerate(load_location): - fplld = model.clientModel.factory.create('ns0:free_polygon_load_load_location') + fplld = model.clientModel.factory.create('ns0:free_polygon_load_load_location_row') fplld.no = i+1 - fplld.first_coordinate = load_location[i][0] - fplld.second_coordinate = load_location[i][1] + fplld.row.first_coordinate = load_location[i][0] + fplld.row.second_coordinate = load_location[i][1] clientObject.load_location.free_polygon_load_load_location.append(fplld) # Load Parameter diff --git a/RFEM/Loads/lineLoad.py b/RFEM/Loads/lineLoad.py index 94519798..aaf45c05 100644 --- a/RFEM/Loads/lineLoad.py +++ b/RFEM/Loads/lineLoad.py @@ -227,12 +227,12 @@ def Force( for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_load_varying_load_parameters.append(mlvlp) @@ -293,12 +293,12 @@ def Force( for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_load_varying_load_parameters.append(mlvlp) @@ -480,12 +480,12 @@ def Moment( for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_load_varying_load_parameters.append(mlvlp) @@ -546,12 +546,12 @@ def Moment( for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:line_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_load_varying_load_parameters.append(mlvlp) diff --git a/UnitTests/test_Thickness_Test.py b/UnitTests/test_Thickness_Test.py index 4e4e2b47..13a3f0d0 100644 --- a/UnitTests/test_Thickness_Test.py +++ b/UnitTests/test_Thickness_Test.py @@ -75,8 +75,8 @@ def test_thickness(): Thickness.Layers( no= 7, name= 'Layers', - layers= [[1, 1, 0.123, 0, 'Schicht 1'], - [0, 1, 0.456, 90, 'Schicht 2']], + layers= [[1, 1, 0.123], + [0, 1, 0.456]], comment= 'Comment') # Shape Orthotropy From 250af8ebbbf2ab3453a5f69d5429a42bb34a48e7 Mon Sep 17 00:00:00 2001 From: KaratasD Date: Fri, 13 May 2022 14:59:29 +0200 Subject: [PATCH 2/5] updated Enumeration Structure --- Examples/Cantilever/Demo2.py | 131 +--------- RFEM/Loads/linesetLoad.py | 40 +-- RFEM/Loads/memberLoad.py | 234 +++++++++--------- RFEM/Loads/membersetload.py | 234 +++++++++--------- RFEM/Loads/surfaceLoad.py | 10 +- RFEM/Loads/surfacesetload.py | 10 +- RFEM/TypesForMembers/memberHinge.py | 60 ++--- .../memberResultIntermediatePoints.py | 6 +- .../steelBoundaryConditions.py | 86 +++---- .../steelEffectiveLengths.py | 28 +-- 10 files changed, 358 insertions(+), 481 deletions(-) diff --git a/Examples/Cantilever/Demo2.py b/Examples/Cantilever/Demo2.py index 8c48f10b..681648d5 100644 --- a/Examples/Cantilever/Demo2.py +++ b/Examples/Cantilever/Demo2.py @@ -20,134 +20,11 @@ from RFEM.Loads.lineLoad import LineLoad -if __name__ == '__main__': - Model(True, "demo") - Model.clientModel.service.begin_modification() +Model(False, "Demo1") +Model.clientModel.service.begin_modification() - # Creating a lot of lines for line load testing +Model.clientModel.service.delete_object("E_OBJECT_TYPE_MEMBER", 1, 1) - Node(1, 0, 0, 0), Node(2, 2, 0, 0), Node(3, 4, 0, 0), Node( 4, 6, 0, 0), Node(5, 8, 0, 0), Node(6, 10, 0, 0) - Node(7, 10, 2, 0), Node(8, 10, 4, 0), Node(9, 10, 6, 0), Node(10, 10, 8, 0), Node(11, 10, 10, 0) - Node(12, 8, 10, 0), Node(13, 6, 10, 0), Node(14, 4, 10, 0), Node(15, 2, 10, 0), Node(16, 0, 10, 0) - Node(17, 0, 8, 0), Node(18, 0, 6, 0), Node(19, 0, 4, 0), Node(20, 0, 2, 0) +Model.clientModel.service.finish_modification() - surface_str = '' - nodes_no = '' - for i in range(1, 21): - if i < 20: - surface_str += str(i)+' ' - nodes_no = str(i)+' '+str(i+1) - Line(i, nodes_no) - else: - surface_str += str(i) - nodes_no = str(i)+' 1' - Line(i, nodes_no) - - Material() - Thickness() - Surface(1, surface_str) - - # Testing Standard (i.e. default) Function - - LoadCase(1, 'Standard') - - LineLoad(1, 1, '1', magnitude=1) - - # Testing Force Type Line Loads - - LoadCase(2, 'TYPE: Force') - - LineLoad.Force(1, 2, '1', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, - load_parameter=[1000]) - - LineLoad.Force(2, 2, '2', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, - load_parameter=[False, 10000, 0.5]) - - LineLoad.Force(3, 2, '3', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, - load_parameter=[True, True, 25000, 3, 0.25, 0.5]) - - LineLoad.Force(4, 2, '4', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, - load_parameter=[True, True, True, 17000, 0.25, 0.5, 0.25]) - - LineLoad.Force(5, 2, '5', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, - load_parameter=[True, True, 5000, 7500, 0.4, 0.5]) - - LineLoad.Force(6, 2, '6', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, - load_parameter=[[0.2, 0.1, 200], [0.5, 0.2, 200]]) - - LineLoad.Force(7, 2, '7', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, - load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) - - LineLoad.Force(8, 2, '8', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, - load_parameter=[750, 1000, 2500]) - - LineLoad.Force(9, 2, '9', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_VARYING, - load_parameter=[[1, 1, 75000], [2, 1, 60000]]) - - # Testing Moment Type Line Loads - - LoadCase(3, 'TYPE: Moment') - - LineLoad.Moment(1, 3, '1', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, - load_parameter=[1000]) - - LineLoad.Moment(2, 3, '2', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, - load_parameter=[False, 10000, 0.5]) - - LineLoad.Moment(3, 3, '3', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, - load_parameter=[True, True, 25000, 3, 0.25, 0.5]) - - LineLoad.Moment(4, 3, '4', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, - load_parameter=[True, True, True, 17000, 0.25, 0.5, 0.25]) - - LineLoad.Moment(5, 3, '5', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, - load_parameter=[True, True, 5000, 7500, 0.4, 0.5]) - - LineLoad.Moment(6, 3, '6', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, - load_parameter=[[0.2, 0.1, 200], [0.5, 0.2, 200]]) - - LineLoad.Moment(7, 3, '7', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, - load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) - - LineLoad.Moment(8, 3, '8', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_TAPERED, - load_parameter=[True, True, 2000, 2000, 0.2, 0.5]) - - LineLoad.Moment(9, 3, '9', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, - load_parameter=[750, 1000, 2500]) - - LineLoad.Moment(10, 3, '10', - load_distribution=LineLoadDistribution.LOAD_DISTRIBUTION_VARYING, - load_parameter=[[1, 1, 75000], [2, 1, 60000]]) - - # Testing Mass Type Line Loads - - LoadCase(4, 'TYPE: Mass') - - LineLoad.Mass(1, 4, '1', - individual_mass_components=False, - mass_components=[10]) - - LineLoad.Mass(2, 4, '2', - individual_mass_components=True, - mass_components=[1000, 1000, 10000]) - - Model.clientModel.service.finish_modification() \ No newline at end of file diff --git a/RFEM/Loads/linesetLoad.py b/RFEM/Loads/linesetLoad.py index fb5ed57c..7fb6dbec 100644 --- a/RFEM/Loads/linesetLoad.py +++ b/RFEM/Loads/linesetLoad.py @@ -201,12 +201,12 @@ def Force(self, for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters') + mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_set_load_varying_load_parameters.append(mlvlp) @@ -267,12 +267,12 @@ def Force(self, for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters') + mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_set_load_varying_load_parameters.append(mlvlp) @@ -432,12 +432,12 @@ def Moment(self, for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters') + mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_set_load_varying_load_parameters.append(mlvlp) @@ -498,12 +498,12 @@ def Moment(self, for i,j in enumerate(load_parameter): if len(load_parameter[i]) != 3: raise Exception('WARNING: The load parameter sub-lists need to be of length 3. Kindly check sub-list inputs for completeness and correctness.') - mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters') + mlvlp = Model.clientModel.factory.create('ns0:line_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.line_set_load_varying_load_parameters.append(mlvlp) diff --git a/RFEM/Loads/memberLoad.py b/RFEM/Loads/memberLoad.py index f308838e..77071646 100644 --- a/RFEM/Loads/memberLoad.py +++ b/RFEM/Loads/memberLoad.py @@ -219,16 +219,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -277,16 +277,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -298,16 +298,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -507,16 +507,16 @@ def Moment( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -565,16 +565,16 @@ def Moment( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -795,16 +795,16 @@ def Temperature( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = load_parameter[i][2] - mlvlp.magnitude_delta_t = load_parameter[i][3] - mlvlp.magnitude_t_t = load_parameter[i][2] - mlvlp.magnitude_t_b = load_parameter[i][3] + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = load_parameter[i][2] + mlvlp.row.magnitude_delta_t = load_parameter[i][3] + mlvlp.row.magnitude_t_t = load_parameter[i][2] + mlvlp.row.magnitude_t_b = load_parameter[i][3] clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -955,16 +955,16 @@ def TemperatureChange( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = load_parameter[i][2] - mlvlp.magnitude_delta_t = load_parameter[i][3] - mlvlp.magnitude_t_t = load_parameter[i][2] - mlvlp.magnitude_t_b = load_parameter[i][3] + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = load_parameter[i][2] + mlvlp.row.magnitude_delta_t = load_parameter[i][3] + mlvlp.row.magnitude_t_t = load_parameter[i][2] + mlvlp.row.magnitude_t_b = load_parameter[i][3] clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1104,16 +1104,16 @@ def AxialStrain( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1314,16 +1314,16 @@ def Precamber( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1548,16 +1548,16 @@ def Displacement( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1613,16 +1613,16 @@ def Displacement( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1786,16 +1786,16 @@ def Rotation( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) @@ -1851,16 +1851,16 @@ def Rotation( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_load_varying_load_parameters.append(mlvlp) diff --git a/RFEM/Loads/membersetload.py b/RFEM/Loads/membersetload.py index 1eba3fb9..be5c396e 100644 --- a/RFEM/Loads/membersetload.py +++ b/RFEM/Loads/membersetload.py @@ -239,16 +239,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -305,16 +305,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -326,16 +326,16 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -559,16 +559,16 @@ def Moment( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -629,16 +629,16 @@ def Moment( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -874,16 +874,16 @@ def Temperature( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = load_parameter[i][2] - mlvlp.magnitude_delta_t = load_parameter[i][3] - mlvlp.magnitude_t_t = load_parameter[i][2] - mlvlp.magnitude_t_b = load_parameter[i][3] + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = load_parameter[i][2] + mlvlp.row.magnitude_delta_t = load_parameter[i][3] + mlvlp.row.magnitude_t_t = load_parameter[i][2] + mlvlp.row.magnitude_t_b = load_parameter[i][3] clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1045,16 +1045,16 @@ def TemperatureChange( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = load_parameter[i][2] - mlvlp.magnitude_delta_t = load_parameter[i][3] - mlvlp.magnitude_t_t = load_parameter[i][2] - mlvlp.magnitude_t_b = load_parameter[i][3] + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = load_parameter[i][2] + mlvlp.row.magnitude_delta_t = load_parameter[i][3] + mlvlp.row.magnitude_t_t = load_parameter[i][2] + mlvlp.row.magnitude_t_b = load_parameter[i][3] clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1205,16 +1205,16 @@ def AxialStrain( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1425,16 +1425,16 @@ def Precamber( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1671,16 +1671,16 @@ def Displacement( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1751,16 +1751,16 @@ def Displacement( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -1938,16 +1938,16 @@ def Rotation( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) @@ -2018,16 +2018,16 @@ def Rotation( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:member_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:member_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None - mlvlp.magnitude_t_c = 0.0 - mlvlp.magnitude_delta_t = 0.0 - mlvlp.magnitude_t_t = 0.0 - mlvlp.magnitude_t_b = 0.0 + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None + mlvlp.row.magnitude_t_c = 0.0 + mlvlp.row.magnitude_delta_t = 0.0 + mlvlp.row.magnitude_t_t = 0.0 + mlvlp.row.magnitude_t_b = 0.0 clientObject.varying_load_parameters.member_set_load_varying_load_parameters.append(mlvlp) diff --git a/RFEM/Loads/surfaceLoad.py b/RFEM/Loads/surfaceLoad.py index 1d214f52..bc6267cb 100644 --- a/RFEM/Loads/surfaceLoad.py +++ b/RFEM/Loads/surfaceLoad.py @@ -167,12 +167,12 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:surface_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:surface_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:surface_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.surface_load_varying_load_parameters.append(mlvlp) clientObject.varying_load_parameters_sorted = True diff --git a/RFEM/Loads/surfacesetload.py b/RFEM/Loads/surfacesetload.py index 83929020..fba7673d 100644 --- a/RFEM/Loads/surfacesetload.py +++ b/RFEM/Loads/surfacesetload.py @@ -167,12 +167,12 @@ def Force( clientObject.varying_load_parameters = model.clientModel.factory.create('ns0:surface_set_load.varying_load_parameters') for i,j in enumerate(load_parameter): - mlvlp = model.clientModel.factory.create('ns0:surface_set_load_varying_load_parameters') + mlvlp = model.clientModel.factory.create('ns0:surface_set_load_varying_load_parameters_row') mlvlp.no = i+1 - mlvlp.distance = load_parameter[i][0] - mlvlp.delta_distance = load_parameter[i][1] - mlvlp.magnitude = load_parameter[i][2] - mlvlp.note = None + mlvlp.row.distance = load_parameter[i][0] + mlvlp.row.delta_distance = load_parameter[i][1] + mlvlp.row.magnitude = load_parameter[i][2] + mlvlp.row.note = None clientObject.varying_load_parameters.surface_set_load_varying_load_parameters.append(mlvlp) clientObject.varying_load_parameters_sorted = True diff --git a/RFEM/TypesForMembers/memberHinge.py b/RFEM/TypesForMembers/memberHinge.py index bebd2d85..18b78fbb 100644 --- a/RFEM/TypesForMembers/memberHinge.py +++ b/RFEM/TypesForMembers/memberHinge.py @@ -130,12 +130,12 @@ def __init__(self, clientObject.diagram_along_x_table = Model.clientModel.factory.create('ns0:member_hinge.diagram_along_x_table') for i,j in enumerate(translational_release_n_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_x_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_x_table_row') mlvlp.no = i+1 - mlvlp.displacement = translational_release_n_nonlinearity[1][2][i][0] - mlvlp.force = translational_release_n_nonlinearity[1][2][i][1] - mlvlp.spring = translational_release_n_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = translational_release_n_nonlinearity[1][2][i][0] + mlvlp.row.force = translational_release_n_nonlinearity[1][2][i][1] + mlvlp.row.spring = translational_release_n_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_along_x_table.member_hinge_diagram_along_x_table.append(mlvlp) @@ -202,12 +202,12 @@ def __init__(self, clientObject.diagram_along_y_table = Model.clientModel.factory.create('ns0:member_hinge.diagram_along_y_table') for i,j in enumerate(translational_release_vy_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_y_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_y_table_row') mlvlp.no = i+1 - mlvlp.displacement = translational_release_vy_nonlinearity[1][2][i][0] - mlvlp.force = translational_release_vy_nonlinearity[1][2][i][1] - mlvlp.spring = translational_release_vy_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = translational_release_vy_nonlinearity[1][2][i][0] + mlvlp.row.force = translational_release_vy_nonlinearity[1][2][i][1] + mlvlp.row.spring = translational_release_vy_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_along_y_table.member_hinge_diagram_along_y_table.append(mlvlp) @@ -274,12 +274,12 @@ def __init__(self, clientObject.diagram_along_z_table = Model.clientModel.factory.create('ns0:member_hinge.diagram_along_z_table') for i,j in enumerate(translational_release_vz_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_z_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_along_z_table_row') mlvlp.no = i+1 - mlvlp.displacement = translational_release_vz_nonlinearity[1][2][i][0] - mlvlp.force = translational_release_vz_nonlinearity[1][2][i][1] - mlvlp.spring = translational_release_vz_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = translational_release_vz_nonlinearity[1][2][i][0] + mlvlp.row.force = translational_release_vz_nonlinearity[1][2][i][1] + mlvlp.row.spring = translational_release_vz_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_along_z_table.member_hinge_diagram_along_z_table.append(mlvlp) @@ -346,12 +346,12 @@ def __init__(self, clientObject.diagram_around_x_table = Model.clientModel.factory.create('ns0:member_hinge.diagram_around_x_table') for i,j in enumerate(rotational_release_mt_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_x_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_x_table_row') mlvlp.no = i+1 - mlvlp.displacement = rotational_release_mt_nonlinearity[1][2][i][0] - mlvlp.force = rotational_release_mt_nonlinearity[1][2][i][1] - mlvlp.spring = rotational_release_mt_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = rotational_release_mt_nonlinearity[1][2][i][0] + mlvlp.row.force = rotational_release_mt_nonlinearity[1][2][i][1] + mlvlp.row.spring = rotational_release_mt_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_around_x_table.member_hinge_diagram_around_x_table.append(mlvlp) @@ -407,12 +407,12 @@ def __init__(self, clientObject.diagram_around_y_end = rotational_release_my_nonlinearity[1][1].name for i,j in enumerate(rotational_release_my_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_y_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_y_table_row') mlvlp.no = i+1 - mlvlp.displacement = rotational_release_my_nonlinearity[1][2][i][0] - mlvlp.force = rotational_release_my_nonlinearity[1][2][i][1] - mlvlp.spring = rotational_release_my_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = rotational_release_my_nonlinearity[1][2][i][0] + mlvlp.row.force = rotational_release_my_nonlinearity[1][2][i][1] + mlvlp.row.spring = rotational_release_my_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_around_y_table.member_hinge_diagram_around_y_table.append(mlvlp) @@ -466,12 +466,12 @@ def __init__(self, clientObject.diagram_around_z_end = rotational_release_mz_nonlinearity[1][1].name for i,j in enumerate(rotational_release_mz_nonlinearity[1][2]): - mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_z_table') + mlvlp = Model.clientModel.factory.create('ns0:member_hinge_diagram_around_z_table_row') mlvlp.no = i+1 - mlvlp.displacement = rotational_release_mz_nonlinearity[1][2][i][0] - mlvlp.force = rotational_release_mz_nonlinearity[1][2][i][1] - mlvlp.spring = rotational_release_mz_nonlinearity[1][2][i][2] - mlvlp.note = None + mlvlp.row.displacement = rotational_release_mz_nonlinearity[1][2][i][0] + mlvlp.row.force = rotational_release_mz_nonlinearity[1][2][i][1] + mlvlp.row.spring = rotational_release_mz_nonlinearity[1][2][i][2] + mlvlp.row.note = None clientObject.diagram_around_z_table.member_hinge_diagram_around_z_table.append(mlvlp) diff --git a/RFEM/TypesForMembers/memberResultIntermediatePoints.py b/RFEM/TypesForMembers/memberResultIntermediatePoints.py index e5ae9ba5..6326eabf 100644 --- a/RFEM/TypesForMembers/memberResultIntermediatePoints.py +++ b/RFEM/TypesForMembers/memberResultIntermediatePoints.py @@ -42,10 +42,10 @@ def __init__(self, clientObject.distances = Model.clientModel.factory.create('ns0:member_result_intermediate_point.distances') for i,j in enumerate(distances): - mlvlp = Model.clientModel.factory.create('ns0:member_result_intermediate_point_distances') + mlvlp = Model.clientModel.factory.create('ns0:member_result_intermediate_point_distances_row') mlvlp.no = i+1 - mlvlp.value = distances[i][0] - mlvlp.note = None + mlvlp.row.value = distances[i][0] + mlvlp.row.note = None clientObject.distances.member_result_intermediate_point_distances.append(mlvlp) diff --git a/RFEM/TypesForSteelDesign/steelBoundaryConditions.py b/RFEM/TypesForSteelDesign/steelBoundaryConditions.py index 4a7b12d8..be27fa29 100644 --- a/RFEM/TypesForSteelDesign/steelBoundaryConditions.py +++ b/RFEM/TypesForSteelDesign/steelBoundaryConditions.py @@ -121,33 +121,33 @@ def __init__(self, clientObject.nodal_supports = model.clientModel.factory.create('ns0:steel_boundary_conditions.nodal_supports') for i,j in enumerate(nodal_supports): - mlvlp = model.clientModel.factory.create('ns0:steel_boundary_conditions_nodal_supports') + mlvlp = model.clientModel.factory.create('ns0:steel_boundary_conditions_nodal_supports_row') mlvlp.no = i - mlvlp.node_seq_no = nodal_supports[i][0] - mlvlp.support_type = nodal_supports[i][1].name - mlvlp.support_in_x = nodal_supports[i][2] - mlvlp.support_in_y = nodal_supports[i][3] - mlvlp.support_in_z = nodal_supports[i][4] - mlvlp.restraint_about_x = nodal_supports[i][5] - mlvlp.restraint_about_y = nodal_supports[i][6] - mlvlp.restraint_about_z = nodal_supports[i][7] - mlvlp.restraint_warping = nodal_supports[i][8] - mlvlp.rotation = nodal_supports[i][9] - mlvlp.rotation_about_x = nodal_supports[i][10] - mlvlp.rotation_about_y = nodal_supports[i][11] - mlvlp.rotation_about_z = nodal_supports[i][12] - mlvlp.support_spring_in_x = nodal_supports[i][13] - mlvlp.support_spring_in_y = nodal_supports[i][14] - mlvlp.support_spring_in_z = nodal_supports[i][15] - mlvlp.restraint_spring_about_x = nodal_supports[i][16] - mlvlp.restraint_spring_about_y = nodal_supports[i][17] - mlvlp.restraint_spring_about_z = nodal_supports[i][18] - mlvlp.restraint_spring_warping = nodal_supports[i][19] - mlvlp.eccentricity_type_z_type = nodal_supports[i][20].name - mlvlp.eccentricity_x = nodal_supports[i][21] - mlvlp.eccentricity_y = nodal_supports[i][22] - mlvlp.eccentricity_z = nodal_supports[i][23] - mlvlp.nodes = nodal_supports[i][24] + mlvlp.row.node_seq_no = nodal_supports[i][0] + mlvlp.row.support_type = nodal_supports[i][1].name + mlvlp.row.support_in_x = nodal_supports[i][2] + mlvlp.row.support_in_y = nodal_supports[i][3] + mlvlp.row.support_in_z = nodal_supports[i][4] + mlvlp.row.restraint_about_x = nodal_supports[i][5] + mlvlp.row.restraint_about_y = nodal_supports[i][6] + mlvlp.row.restraint_about_z = nodal_supports[i][7] + mlvlp.row.restraint_warping = nodal_supports[i][8] + mlvlp.row.rotation = nodal_supports[i][9] + mlvlp.row.rotation_about_x = nodal_supports[i][10] + mlvlp.row.rotation_about_y = nodal_supports[i][11] + mlvlp.row.rotation_about_z = nodal_supports[i][12] + mlvlp.row.support_spring_in_x = nodal_supports[i][13] + mlvlp.row.support_spring_in_y = nodal_supports[i][14] + mlvlp.row.support_spring_in_z = nodal_supports[i][15] + mlvlp.row.restraint_spring_about_x = nodal_supports[i][16] + mlvlp.row.restraint_spring_about_y = nodal_supports[i][17] + mlvlp.row.restraint_spring_about_z = nodal_supports[i][18] + mlvlp.row.restraint_spring_warping = nodal_supports[i][19] + mlvlp.row.eccentricity_type_z_type = nodal_supports[i][20].name + mlvlp.row.eccentricity_x = nodal_supports[i][21] + mlvlp.row.eccentricity_y = nodal_supports[i][22] + mlvlp.row.eccentricity_z = nodal_supports[i][23] + mlvlp.row.nodes = nodal_supports[i][24] clientObject.nodal_supports.steel_boundary_conditions_nodal_supports.append(mlvlp) @@ -155,24 +155,24 @@ def __init__(self, clientObject.member_hinges = model.clientModel.factory.create('ns0:steel_boundary_conditions.member_hinges') for i,j in enumerate(member_hinges): - mlvlp = model.clientModel.factory.create('ns0:steel_boundary_conditions_member_hinges') + mlvlp = model.clientModel.factory.create('ns0:steel_boundary_conditions_member_hinges_row') mlvlp.no = i - mlvlp.node_seq_no = member_hinges[i][0] - mlvlp.release_in_x = member_hinges[i][1] - mlvlp.release_in_y = member_hinges[i][2] - mlvlp.release_in_z = member_hinges[i][3] - mlvlp.release_about_x = member_hinges[i][4] - mlvlp.release_about_y = member_hinges[i][5] - mlvlp.release_about_z = member_hinges[i][6] - mlvlp.release_warping = member_hinges[i][7] - mlvlp.release_spring_in_x = member_hinges[i][8] - mlvlp.release_spring_in_y = member_hinges[i][9] - mlvlp.release_spring_in_z = member_hinges[i][10] - mlvlp.release_spring_about_x = member_hinges[i][11] - mlvlp.release_spring_about_y = member_hinges[i][12] - mlvlp.release_spring_about_z = member_hinges[i][13] - mlvlp.release_spring_warping = member_hinges[i][14] - mlvlp.nodes = member_hinges[i][15] + mlvlp.row.node_seq_no = member_hinges[i][0] + mlvlp.row.release_in_x = member_hinges[i][1] + mlvlp.row.release_in_y = member_hinges[i][2] + mlvlp.row.release_in_z = member_hinges[i][3] + mlvlp.row.release_about_x = member_hinges[i][4] + mlvlp.row.release_about_y = member_hinges[i][5] + mlvlp.row.release_about_z = member_hinges[i][6] + mlvlp.row.release_warping = member_hinges[i][7] + mlvlp.row.release_spring_in_x = member_hinges[i][8] + mlvlp.row.release_spring_in_y = member_hinges[i][9] + mlvlp.row.release_spring_in_z = member_hinges[i][10] + mlvlp.row.release_spring_about_x = member_hinges[i][11] + mlvlp.row.release_spring_about_y = member_hinges[i][12] + mlvlp.row.release_spring_about_z = member_hinges[i][13] + mlvlp.row.release_spring_warping = member_hinges[i][14] + mlvlp.row.nodes = member_hinges[i][15] clientObject.member_hinges.steel_boundary_conditions_member_hinges.append(mlvlp) diff --git a/RFEM/TypesForSteelDesign/steelEffectiveLengths.py b/RFEM/TypesForSteelDesign/steelEffectiveLengths.py index 3ab8ab17..c4b2bffb 100644 --- a/RFEM/TypesForSteelDesign/steelEffectiveLengths.py +++ b/RFEM/TypesForSteelDesign/steelEffectiveLengths.py @@ -133,21 +133,21 @@ def __init__(self, clientObject.nodal_supports = model.clientModel.factory.create('ns0:steel_effective_lengths.nodal_supports') for i,j in enumerate(nodal_supports): - mlvlp = model.clientModel.factory.create('ns0:steel_effective_lengths_nodal_supports') + mlvlp = model.clientModel.factory.create('ns0:steel_effective_lengths_nodal_supports_row') mlvlp.no = i - mlvlp.support_type = nodal_supports[i][0].name - mlvlp.support_in_z = nodal_supports[i][1] - mlvlp.support_spring_in_y = nodal_supports[i][2] - mlvlp.eccentricity_type = nodal_supports[i][3].name - mlvlp.eccentricity_ez = nodal_supports[i][4] - mlvlp.restraint_spring_about_x = nodal_supports[i][5] - mlvlp.restraint_spring_about_z = nodal_supports[i][6] - mlvlp.restraint_spring_warping = nodal_supports[i][7] - mlvlp.support_in_y_type = nodal_supports[i][8].name - mlvlp.restraint_about_x_type = nodal_supports[i][9].name - mlvlp.restraint_about_z_type = nodal_supports[i][10].name - mlvlp.restraint_warping_type = nodal_supports[i][11].name - mlvlp.nodes = ConvertToDlString(nodal_supports[i][12]) + mlvlp.row.support_type = nodal_supports[i][0].name + mlvlp.row.support_in_z = nodal_supports[i][1] + mlvlp.row.support_spring_in_y = nodal_supports[i][2] + mlvlp.row.eccentricity_type = nodal_supports[i][3].name + mlvlp.row.eccentricity_ez = nodal_supports[i][4] + mlvlp.row.restraint_spring_about_x = nodal_supports[i][5] + mlvlp.row.restraint_spring_about_z = nodal_supports[i][6] + mlvlp.row.restraint_spring_warping = nodal_supports[i][7] + mlvlp.row.support_in_y_type = nodal_supports[i][8].name + mlvlp.row.restraint_about_x_type = nodal_supports[i][9].name + mlvlp.row.restraint_about_z_type = nodal_supports[i][10].name + mlvlp.row.restraint_warping_type = nodal_supports[i][11].name + mlvlp.row.nodes = ConvertToDlString(nodal_supports[i][12]) clientObject.nodal_supports.steel_effective_lengths_nodal_supports.append(mlvlp) From d8e0f2dec382436b6fa41dfa92db526adad922e8 Mon Sep 17 00:00:00 2001 From: KaratasD Date: Tue, 17 May 2022 15:10:56 +0200 Subject: [PATCH 3/5] updated Unit Tests --- RFEM/Results/designOverview.py | 6 +- RFEM/TypesForLines/lineWeldedJoint.py | 8 +-- .../memberTransverseStiffeners.py | 58 +++++++++---------- UnitTests/test_DesignOverview.py | 17 +++--- UnitTests/test_loadCombination.py | 4 +- UnitTests/test_steelBoundaryConditions.py | 4 +- 6 files changed, 48 insertions(+), 49 deletions(-) diff --git a/RFEM/Results/designOverview.py b/RFEM/Results/designOverview.py index 7cee1942..e68a511a 100644 --- a/RFEM/Results/designOverview.py +++ b/RFEM/Results/designOverview.py @@ -18,10 +18,10 @@ def GetPartialDesignOverview(comply: bool = False): designRatioLessThanOne = [] designRationOverOne = [] for do in designOverview[0]: - if round(do['design_ratio'], 5) <= 1.0: - designRatioLessThanOne.append(do) + if round(do[0]['design_ratio'], 5) <= 1.0: + designRatioLessThanOne.append(do[0]) else: - designRationOverOne.append(do) + designRationOverOne.append(do[0]) if comply: return designRatioLessThanOne diff --git a/RFEM/TypesForLines/lineWeldedJoint.py b/RFEM/TypesForLines/lineWeldedJoint.py index c682ab49..5f8eb63c 100644 --- a/RFEM/TypesForLines/lineWeldedJoint.py +++ b/RFEM/TypesForLines/lineWeldedJoint.py @@ -52,11 +52,11 @@ def __init__(self, for i in iLines: line = model.clientModel.service.get_line(i) line.has_line_welds = True - clientWeld = model.clientModel.factory.create('ns0:line_line_weld_assignment') + clientWeld = model.clientModel.factory.create('ns0:line_line_weld_assignment_row') clientWeld.no = i - clientWeld.weld = no - clientWeld.surface1 = iSurfaces[0] - clientWeld.surface2 = iSurfaces[1] + clientWeld.row.weld = no + clientWeld.row.surface1 = iSurfaces[0] + clientWeld.row.surface2 = iSurfaces[1] if len(iSurfaces) == 3: clientWeld.surface3 = iSurfaces[2] line.line_weld_assignment = model.clientModel.factory.create('ns0:array_of_line_line_weld_assignment') diff --git a/RFEM/TypesForMembers/memberTransverseStiffeners.py b/RFEM/TypesForMembers/memberTransverseStiffeners.py index a57d5f47..66fd6972 100644 --- a/RFEM/TypesForMembers/memberTransverseStiffeners.py +++ b/RFEM/TypesForMembers/memberTransverseStiffeners.py @@ -43,36 +43,36 @@ def __init__(self, clientObject.components = Model.clientModel.factory.create('ns0:member_transverse_stiffener.components') for i,j in enumerate(components): - mlvlp = Model.clientModel.factory.create('ns0:member_transverse_stiffener_components') + mlvlp = Model.clientModel.factory.create('ns0:member_transverse_stiffener_components_row') mlvlp.no = i+1 - mlvlp.stiffener_type = components[i][0].name - mlvlp.position = components[i][1] - mlvlp.position_type = components[i][2].name - mlvlp.multiple = components[i][3] - mlvlp.multiple_number = components[i][4] - mlvlp.multiple_offset_definition_type = components[i][5].name - mlvlp.multiple_offset = components[i][6] - mlvlp.material = components[i][7] - mlvlp.consider_stiffener = components[i][8] - mlvlp.thickness = components[i][9] - mlvlp.width = components[i][10] - mlvlp.height = components[i][11] - mlvlp.non_rigid = components[i][12] - mlvlp.rigid = components[i][13] - mlvlp.width_b_u = components[i][14] - mlvlp.height_h_u = components[i][15] - mlvlp.thickness_t_u = components[i][16] - mlvlp.thickness_s_u = components[i][17] - mlvlp.width_b = components[i][18] - mlvlp.thickness_t = components[i][19] - mlvlp.column_section = components[i][20] - mlvlp.height_h_m = components[i][21] - mlvlp.section = components[i][22] - mlvlp.cantilever_l_k = components[i][23] - mlvlp.full_warping_restraint = components[i][24] - mlvlp.user_defined_restraint = components[i][25] - mlvlp.user_defined_restraint_value = components[i][26] - mlvlp.note = None + mlvlp.row.stiffener_type = components[i][0].name + mlvlp.row.position = components[i][1] + mlvlp.row.position_type = components[i][2].name + mlvlp.row.multiple = components[i][3] + mlvlp.row.multiple_number = components[i][4] + mlvlp.row.multiple_offset_definition_type = components[i][5].name + mlvlp.row.multiple_offset = components[i][6] + mlvlp.row.material = components[i][7] + mlvlp.row.consider_stiffener = components[i][8] + mlvlp.row.thickness = components[i][9] + mlvlp.row.width = components[i][10] + mlvlp.row.height = components[i][11] + mlvlp.row.non_rigid = components[i][12] + mlvlp.row.rigid = components[i][13] + mlvlp.row.width_b_u = components[i][14] + mlvlp.row.height_h_u = components[i][15] + mlvlp.row.thickness_t_u = components[i][16] + mlvlp.row.thickness_s_u = components[i][17] + mlvlp.row.width_b = components[i][18] + mlvlp.row.thickness_t = components[i][19] + mlvlp.row.column_section = components[i][20] + mlvlp.row.height_h_m = components[i][21] + mlvlp.row.section = components[i][22] + mlvlp.row.cantilever_l_k = components[i][23] + mlvlp.row.full_warping_restraint = components[i][24] + mlvlp.row.user_defined_restraint = components[i][25] + mlvlp.row.user_defined_restraint_value = components[i][26] + mlvlp.row.note = None clientObject.components.member_transverse_stiffener_components.append(mlvlp) diff --git a/UnitTests/test_DesignOverview.py b/UnitTests/test_DesignOverview.py index 43ee3174..5b7bd527 100644 --- a/UnitTests/test_DesignOverview.py +++ b/UnitTests/test_DesignOverview.py @@ -26,8 +26,8 @@ def test_designOverview(): Model.clientModel.service.calculate_all(False) designOverview = GetDesignOverview() - assert designOverview[0][0]['design_ratio'] == 2.851 - assert designOverview[0][0]['design_check_type'] == 'DM0210.00' + assert designOverview[0][0][0]['design_ratio'] == 2.851 + assert designOverview[0][0][0]['design_check_type'] == 'DM0210.00' partialDesignOverview = GetPartialDesignOverview(False) assert len(partialDesignOverview) == 18 @@ -37,7 +37,7 @@ def test_designOverview(): a = GetPartsListAllByMaterial() assert len(a[0]) == 5 - assert a[0][0]['volume'] == a[0][1]['volume'] + assert a[0][0].row['volume'] == a[0][1].row['volume'] b = GetPartsListMemberRepresentativesByMaterial() assert b == '' @@ -46,14 +46,13 @@ def test_designOverview(): assert c == '' d = GetPartsListMembersByMaterial() - assert len(d[0]) == 5 - assert d[0][0]['no'] == 1 - assert round(d[0][0]['total_weight']) == 1200 - assert round(d[0][-1]['total_weight']) == 2300 + assert len(d[0][0].row) == 13 + assert d[0][0][0] == 1 + assert round(d[0][0][1]['total_weight']) == 1200 e = GetPartsListSolidsByMaterial() assert e == '' f = GetPartsListSurfacessByMaterial() - assert len(f[0]) == 6 - assert f[0][1]['thickness_name'] == 'Uniform | d : 120.0 mm | 2 - C20/25' + assert len(f[0][0].row) == 13 + assert f[0][0][1]['thickness_name'] == 'Uniform | d : 120.0 mm | 2 - C20/25' diff --git a/UnitTests/test_loadCombination.py b/UnitTests/test_loadCombination.py index ceb2f510..5708f1f6 100644 --- a/UnitTests/test_loadCombination.py +++ b/UnitTests/test_loadCombination.py @@ -31,6 +31,6 @@ def test_loadCombination(): combination = Model.clientModel.service.get_load_combination(1) - assert round(combination.items[0][0][1], 2) == 1.20 - assert not combination.items[0][0][4] + assert round(combination.items[0][0][1].factor, 2) == 1.20 + assert combination.items[0][0].row[1] == 1 diff --git a/UnitTests/test_steelBoundaryConditions.py b/UnitTests/test_steelBoundaryConditions.py index 99fbb887..97524c09 100644 --- a/UnitTests/test_steelBoundaryConditions.py +++ b/UnitTests/test_steelBoundaryConditions.py @@ -60,10 +60,10 @@ def test_steelEffectiveLengths(): bc_1 = Model.clientModel.service.get_steel_boundary_conditions(1) assert bc_1.no == 1 - assert bc_1.nodal_supports[0][0][0] == 0 + assert bc_1.nodal_supports[0][0].row['rotation'] == 0 bc_2 = Model.clientModel.service.get_steel_boundary_conditions(2) - assert bc_2.member_hinges[0][1][1] == "Inter." + assert bc_2.member_hinges[0][1].row['node_seq_no'] == "Inter." Model.clientModel.service.finish_modification() From baf5062017e56ae75e92b384d3cb9e16f17c846b Mon Sep 17 00:00:00 2001 From: KaratasD Date: Wed, 18 May 2022 10:05:24 +0200 Subject: [PATCH 4/5] Update main.py --- Examples/main.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Examples/main.py b/Examples/main.py index 0d6d6f68..ef8ab76a 100644 --- a/Examples/main.py +++ b/Examples/main.py @@ -117,7 +117,8 @@ def main(hall_width_L, hall_height_h_o, hall_height_h_m, number_frames, frame_sp # ------------------------------------------------------------- # Member Hinges - MemberHinge(1, "Local", inf, inf, inf, inf, 0, inf, "Rotational Release My") + MemberHinge(1, "Local", rotational_release_mz=inf) + # ------------------------------------------------------------- # Members From bd4d0e2340dc83c44be0d947f32217cc2bc188d5 Mon Sep 17 00:00:00 2001 From: MichalO Date: Wed, 18 May 2022 10:35:59 +0200 Subject: [PATCH 5/5] example doesn't create sets correctly when the number of frames is changed --- Examples/main.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Examples/main.py b/Examples/main.py index ef8ab76a..f3e5452d 100644 --- a/Examples/main.py +++ b/Examples/main.py @@ -200,12 +200,6 @@ def main(hall_width_L, hall_height_h_o, hall_height_h_m, number_frames, frame_sp # Solids Solid(1, "2 3 4 5 6 7", 2) -# ------------------------------------------------------------- - # Sets - LineSet() - MemberSet() - SurfaceSet() - # ------------------------------------------------------------- print('Load Cases/Loads...')