Skip to content

Commit 61a5031

Browse files
authored
Merge pull request #344 from Dlubal-Software/origin/BUG-176725_WS_Thickness_layers_direction
Fixed
2 parents 8460b8d + 7c5e0b1 commit 61a5031

File tree

2 files changed

+18
-6
lines changed

2 files changed

+18
-6
lines changed

RFEM/BasicObjects/thickness.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -397,7 +397,7 @@ def Variable_Circle(
397397
def Layers(
398398
no: int = 1,
399399
name: str = None,
400-
layers = [['E_THICKNESS_TYPE_DIRECTLY', 1, 0.012], ['E_THICKNESS_TYPE_DIRECTLY', 1, 0.01]],
400+
layers = [['E_THICKNESS_TYPE_DIRECTLY', 1, 0.012, pi / 2], ['E_THICKNESS_TYPE_DIRECTLY', 1, 0.01, pi / 2]],
401401
stiffness_reduction: bool = False,
402402
stiffness_modification: list = [[1, None], [1, None], [1, None], [1, None]],
403403
specify_integration: bool = False,
@@ -416,7 +416,7 @@ def Layers(
416416
layers (list of lists): Layers Table as an Array. Angle of the material will be set if material model is orthotropic.
417417
layers = [layer[0], layer[1], layer[2],...]
418418
for layers[i][0] == 'E_THICKNESS_TYPE_DIRECTLY':
419-
layers[i] = ['E_THICKNESS_TYPE_DIRECTLY', material_tag(int), thickness_in_meter(float), comment(optional)]
419+
layers[i] = ['E_THICKNESS_TYPE_DIRECTLY', material_tag(int), thickness_in_meter(float), angle(float), comment(optional)]
420420
for layers[i][0] == previously_defined_thickness_tag:
421421
layers[i] = [previously_defined_thickness_tag(int), comment(optional)]
422422
stiffness_reduction (bool, optional): Enable/disable Stiffness Reduction
@@ -466,8 +466,9 @@ def Layers(
466466
tlrt.row.thickness_type_or_id = 'E_THICKNESS_TYPE_DIRECTLY'
467467
tlrt.row.material = layers[i][1]
468468
tlrt.row.thickness = layers[i][2]
469-
if len(layers[i]) == 4:
470-
tlrt.row.comment = layers[i][3]
469+
tlrt.row.angle = layers[i][3]
470+
if len(layers[i]) == 5:
471+
tlrt.row.comment = layers[i][4]
471472
elif type(layers[i][0]) == int:
472473
tlrt.row.thickness_type_or_id = str(layers[i][0])
473474
if len(layers[i]) == 2:

UnitTests/test_Thickness_Test.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@
66
)
77
sys.path.append(PROJECT_ROOT)
88

9-
from RFEM.enums import ThicknessDirection, ThicknessOrthotropyType
9+
from RFEM.enums import ThicknessDirection, ThicknessOrthotropyType, MaterialType, MaterialModel, MaterialStiffnessModificationType
1010
from RFEM.enums import ThicknessShapeOrthotropySelfWeightDefinitionType, ThicknessStiffnessMatrixSelfWeightDefinitionType
1111
from RFEM.initModel import Model
1212
from RFEM.BasicObjects.material import Material
1313
from RFEM.BasicObjects.thickness import Thickness
1414
from RFEM.BasicObjects.node import Node
15+
from math import pi
1516

1617
if Model.clientModel is None:
1718
Model()
@@ -20,7 +21,16 @@ def test_thickness():
2021

2122
Model.clientModel.service.delete_all()
2223
Model.clientModel.service.begin_modification()
24+
2325
Material(1, 'C30/37')
26+
params = {
27+
"material_type": MaterialType.TYPE_TIMBER.name,
28+
"material_model": MaterialModel.MODEL_ORTHOTROPIC_2D.name,
29+
"stiffness_modification": True,
30+
"stiffness_modification_type": MaterialStiffnessModificationType.STIFFNESS_MODIFICATION_TYPE_DIVISION.name,
31+
"application_context": "TIMBER_DESIGN"
32+
}
33+
Material(no=2, name="C24 BBS XL", params=params)
2434

2535
## THICKNESS TYPE
2636

@@ -75,7 +85,7 @@ def test_thickness():
7585
Thickness.Layers(
7686
no= 7,
7787
name= 'Layers',
78-
layers= [['E_THICKNESS_TYPE_DIRECTLY', 1, 0.123],
88+
layers= [['E_THICKNESS_TYPE_DIRECTLY', 2, 0.123, pi / 2],
7989
[2, 'Defined Thicness']],
8090
comment= 'Comment')
8191

@@ -126,6 +136,7 @@ def test_thickness():
126136

127137
th = Model.clientModel.service.get_thickness(7)
128138
assert th.layers_reference_table['thickness_layers_reference_table'][0].row['thickness'] == 0.123
139+
assert th.layers_reference_table['thickness_layers_reference_table'][0].row['angle'] == pi / 2
129140
assert th.layers_reference_table['thickness_layers_reference_table'][1].row['thickness_type_or_id'] == '2'
130141
assert th.layers_reference_table['thickness_layers_reference_table'][1].row['comment'] == 'Defined Thicness'
131142

0 commit comments

Comments
 (0)