diff --git a/.vscode/settings.json b/.vscode/settings.json index 2a6e48ed..bc77f25e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -8,5 +8,15 @@ "python.testing.unittestEnabled": false, "python.testing.nosetestsEnabled": false, "python.testing.pytestEnabled": true, - "python.testing.pytestArgs": ["--html=UnitTests\\report.html","--self-contained-html","--cov=RFEM",] + "python.testing.pytestArgs": [ + "--html=UnitTests\\report.html", + "--self-contained-html", + "--cov=RFEM", + ], + "markdownlint.config": { + "MD028": false, + "MD025": { + "front_matter_title": "" + } + } } \ No newline at end of file diff --git a/Examples/BaseSettings_test.py b/Examples/BaseSettings_test.py new file mode 100644 index 00000000..dab6becc --- /dev/null +++ b/Examples/BaseSettings_test.py @@ -0,0 +1,38 @@ +import sys +sys.path.append(".") +from RFEM.Loads.surfaceLoad import * +from RFEM.Loads.memberLoad import * +from RFEM.Loads.nodalLoad import * +from RFEM.LoadCasesAndCombinations.loadCase import * +from RFEM.LoadCasesAndCombinations.staticAnalysisSettings import * +from RFEM.TypesForMembers.memberHinge import * +from RFEM.TypesForNodes.nodalSupport import * +from RFEM.BasicObjects.solidSet import * +from RFEM.BasicObjects.surfaceSet import * +from RFEM.BasicObjects.memberSet import * +from RFEM.BasicObjects.lineSet import * +from RFEM.BasicObjects.opening import * +from RFEM.BasicObjects.solid import * +from RFEM.BasicObjects.surface import * +from RFEM.BasicObjects.member import * +from RFEM.BasicObjects.line import * +from RFEM.BasicObjects.node import * +from RFEM.BasicObjects.thickness import * +from RFEM.BasicObjects.section import * +from RFEM.BasicObjects.material import * +from RFEM.initModel import * +from RFEM.dataTypes import * +from RFEM.enums import * +from RFEM.baseSettings import * + +if __name__ == '__main__': + + clientModel.service.begin_modification() + + # Set Base Settings + BaseSettings(12, GlobalAxesOrientationType.E_GLOBAL_AXES_ORIENTATION_ZUP, LocalAxesOrientationType.E_LOCAL_AXES_ORIENTATION_ZUP, [0.001, 0.002, 0.003, 0.004]) + + print('Ready!') + + clientModel.service.finish_modification() + diff --git a/RFEM/baseSettings.py b/RFEM/baseSettings.py new file mode 100644 index 00000000..bf7a2cbc --- /dev/null +++ b/RFEM/baseSettings.py @@ -0,0 +1,60 @@ +from RFEM.initModel import * +from RFEM.enums import * +from enum import Enum + +class BaseSettings(): + def __init__(self, + gravitational_acceleration: int = 10, + global_axes_orientation = GlobalAxesOrientationType.E_GLOBAL_AXES_ORIENTATION_ZDOWN, + local_axes_orientation = LocalAxesOrientationType.E_LOCAL_AXES_ORIENTATION_ZDOWN, + tolerances = [0.0005, 0.0005, 0.0005, 0.0005], + member_representatives: bool = False, + member_set_representatives: bool = False): + """ + Args: + gravitational_acceleration (int): Gravitational Acceleration (m/sn2) + global_axes_orientation (enum): Global Axes Orientation Enumeration + local_axes_orientation (Enum): Local Axes Orientation Enumeration + tolerances (list): Tolerances + member_representatives (bool): Member Representatives + member_set_representatives (bool): Member Set Representatives + + tolerances = [tolerance_for_nodes, tolerance_for_lines, tolerance_for_surfaces_and_planes, tolerance_for_directions] + """ + # Client model | Load Case + clientObject = clientModel.factory.create('ns0:model_settings_and_options_type') + + # Clears object atributes | Sets all atributes to None + clearAtributes(clientObject) + + # Gravitational Acceleration + clientObject.gravitational_acceleration = gravitational_acceleration + + # Global Axes Orientation + clientObject.global_axes_orientation = global_axes_orientation.name + + # Local Axes Orientation + clientObject.local_axes_orientation = local_axes_orientation.name + + # Tolerances + if len(tolerances) == 4: + pass + else: + raise Exception("WARNING:Expected size of the array. Kindly check the list correctness.") + + clientObject.tolerance_for_nodes = tolerances[0] + clientObject.tolerance_for_lines = tolerances[1] + clientObject.tolerance_for_surfaces_and_planes = tolerances[2] + clientObject.tolerance_for_directions = tolerances[3] + + # Member Representatives + clientObject.member_representatives_active = member_representatives + + # Member Set Representatives + clientObject.member_set_representatives_active = member_set_representatives + + # Add Base Data Settings to client model + clientModel.service.set_model_settings_and_options(clientObject) + + + diff --git a/RFEM/enums.py b/RFEM/enums.py index 334c8529..e83cce53 100644 --- a/RFEM/enums.py +++ b/RFEM/enums.py @@ -717,6 +717,18 @@ class export_to_ifc_export_type(Enum): E_EXPORT_IFC4_REFERENCE_VIEW, E_EXPORT_IFC4_STRUCTURAL_ANALYSIS_VIEW = range(2) +class GlobalAxesOrientationType(Enum): + ''' + Model Settings and Options Global Axes Orientation Type + ''' + E_GLOBAL_AXES_ORIENTATION_ZDOWN, E_GLOBAL_AXES_ORIENTATION_ZUP = range(2) + +class LocalAxesOrientationType(Enum): + ''' + Model Settings and Local Axes Orientation Type + ''' + E_LOCAL_AXES_ORIENTATION_YUPX, E_LOCAL_AXES_ORIENTATION_YUPZ, E_LOCAL_AXES_ORIENTATION_ZDOWN, E_LOCAL_AXES_ORIENTATION_ZUP = range(4) + class ModelType(Enum): ''' Model Type | Enum diff --git a/UnitTests/report.html b/UnitTests/report.html index be4fce83..d75779c7 100644 --- a/UnitTests/report.html +++ b/UnitTests/report.html @@ -429,7 +429,7 @@ }
Report generated on 26-Oct-2021 at 14:06:15 by pytest-html v3.1.1
+Report generated on 04-Nov-2021 at 13:51:57 by pytest-html v3.1.1
| Python | 3.9.7 |
77 tests ran in 95.88 seconds.
-(Un)check the boxes to filter the results.
67 passed, 7 skipped, 10 failed, 0 errors, 0 expected failures, 0 unexpected passes +1 tests ran in 2.01 seconds.
+(Un)check the boxes to filter the results.
1 passed, 1 skipped, 0 failed, 0 errors, 0 expected failures, 0 unexpected passes| Links | ||||
|---|---|---|---|---|
| No results found. Try to check the filters | ||||
| Failed | -UnitTests/test_MemberLoad_test.py::test_member_loads | -6.54 | -||
|
- def test_member_loads(): clientModel.service.begin_modification() # Create Material Material(1, 'S235') # Create Thickness Section(1, 'IPE 300') Section(2, 'CHS 100x4') # Create Nodes Node(1, 0.0, 0.0, 0.0) Node(2, 4.0, 0.0, 0.0) Node(3, 0, 5, 0) Node(4, 4, 5, 0) Member(1, MemberType.TYPE_BEAM, '1', '2', 0, 1, 1) Member(2, MemberType.TYPE_BEAM, '3', '4', 0, 2, 2) # Create Nodal Supports NodalSupport(1, '1', NodalSupportType.FIXED) NodalSupport(2, '2', NodalSupportType.FIXED) NodalSupport(3, '3', NodalSupportType.FIXED) NodalSupport(4, '4', NodalSupportType.FIXED) # Create Static Analysis Settings StaticAnalysisSettings(1, '1. Ordnung', StaticAnalysisType.GEOMETRICALLY_LINEAR) # Create Load Case LoadCase(1, 'DEAD', [True, 0.0, 0.0, 1.0]) ## Initial Member Load ## MemberLoad(1, 1, '1', LoadDirectionType.LOAD_DIRECTION_LOCAL_Z, 5000) ## Force Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Force(0, 2, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Force Type Member Load with LOAD_DISTRIBUTION_UNIFORM with Eccentricity ## MemberLoad.Force(0, 3, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000], force_eccentricity=True, params={'eccentricity_y_at_start' : 0.01, 'eccentricity_z_at_start': 0.02}) ## Force Type Member Load with LOAD_DISTRIBUTION_UNIFORM_TOTAL ## MemberLoad.Force(0, 4, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM_TOTAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberLoad.Force(0, 5, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, 5000, 1.2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberLoad.Force(0, 6, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 2, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberLoad.Force(0, 7, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, False, 5000, 1, 2, 3]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x ## MemberLoad.Force(0, 8, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 6000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberLoad.Force(0, 9, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Force Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Force(0, 10, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Force(0, 11, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Force(0, 12, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[4000, 8000, 12000]) ## Force Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Force(0, 13, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Force Type Member Load with LOAD_DISTRIBUTION_VARYING_IN_Z ## MemberLoad.Force(0, 14, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING_IN_Z, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Moment Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Moment(0, 15, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberLoad.Moment(0, 16, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, 5000, 1.2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberLoad.Moment(0, 17, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 2, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberLoad.Moment(0, 18, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, False, 5000, 1, 2, 3]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x ## MemberLoad.Moment(0, 19, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 6000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberLoad.Moment(0, 20, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Moment Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Moment(0, 21, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Moment(0, 22, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Moment(0, 23, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[4000, 8000, 12000]) ## Moment Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Moment(0, 24, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Mass Type Member Load ## MemberLoad.Mass(0, 25, 1, mass_components=[1000]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Temperature(0, 26, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[18, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Temperature(0, 27, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Temperature(0, 28, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Temperature(0, 29, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3, 4, 5, 6]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Temperature(0, 30, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.TemperatureChange(0, 31, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[18, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.TemperatureChange(0, 32, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.TemperatureChange(0, 33, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.TemperatureChange(0, 34, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3, 4, 5, 6]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.TemperatureChange(0, 35, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.AxialStrain(0, 36, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[0.005]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.AxialStrain(0, 37, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[12, 16, False, False, 1, 2]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.AxialStrain(0, 38, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[12, 16, False, False, 1, 2]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.AxialStrain(0, 39, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[1, 2, 3]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.AxialStrain(0, 40, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## AxialDisplacement Type Member Load ## MemberLoad.AxialDisplacement(0, 41, 1, '1', MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, 0.05) ## Precamber Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Precamber(0, 42, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[0.005]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Precamber(0, 43, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Precamber(0, 44, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Precamber(0, 45, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Precamber(0, 46, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) ## InitialPrestress Type Member Load ## MemberLoad.InitialPrestress(0, 47, 1, '1', MemberLoadDirection.LOAD_DIRECTION_LOCAL_X, 50) ## Displacement Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Displacement(0, 48, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberLoad.Displacement(0, 49, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, 1]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberLoad.Displacement(0, 50, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberLoad.Displacement(0, 51, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, False, 1, 2, 3]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2 ## MemberLoad.Displacement(0, 52, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, 0.6, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberLoad.Displacement(0, 53, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [[0.001, 1, 1], [0.002, 2, 1]]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Displacement(0, 54, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Displacement(0, 55, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Displacement(0, 56, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Displacement(0, 57, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberLoad.Rotation(0, 58, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberLoad.Rotation(0, 59, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, 1]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberLoad.Rotation(0, 60, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberLoad.Rotation(0, 61, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, False, 1, 2, 3]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2 ## MemberLoad.Rotation(0, 62, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, 0.6, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberLoad.Rotation(0, 63, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, [[1, 1, 285], [2, 1, 293]]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberLoad.Rotation(0, 64, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberLoad.Rotation(0, 65, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberLoad.Rotation(0, 66, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberLoad.Rotation(0, 67, 1, '1', MemberLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) ## PipeContentFull Type Member Load ## MemberLoad.PipeContentFull(0, 68, 1, '2', MemberLoadDirectionOrientation.LOAD_DIRECTION_FORWARD, 50) > Calculate_all() UnitTests\test_MemberLoad_test.py:273: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\initModel.py:187: in Calculate_all clientModel.service.calculate_all(generateXmlSolverInput) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F0307E520> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...ultcode><faultstring>Plausibility error</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Plausibility error' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_MemberSetLoad_test.py::test_member_set_load | -6.00 | -||
|
- def test_member_set_load(): clientModel.service.begin_modification() # Create Material Material(1, 'S235') # Create Section Section(1, 'IPE 300') # Create Nodes Node(1, 0.0, 0.0, 0.0) Node(2, 2, 0.0, 0.0) Node(3, 4, 0, 0) # Create Member Member(1, MemberType.TYPE_BEAM, '1', '2', 0, 1, 1) Member(2, MemberType.TYPE_BEAM, '2', '3', 0, 1, 1) # Create Member Set MemberSet(1, '1 2', SetType.SET_TYPE_CONTINUOUS) # Create Nodal Supports NodalSupport(1, '1', NodalSupportType.FIXED) NodalSupport(2, '3', NodalSupportType.FIXED) # Create Static Analysis Settings StaticAnalysisSettings(1, '1. Order', StaticAnalysisType.GEOMETRICALLY_LINEAR) # Create Load Case LoadCase(1, 'DEAD', [True, 0.0, 0.0, 1.0]) ## Initial Member Set Load ## MemberSetLoad(1, 1, '1', LoadDirectionType.LOAD_DIRECTION_LOCAL_Z, 5000) ## Force Type Member Set Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Force(0, 2, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Force Type Member Load with LOAD_DISTRIBUTION_UNIFORM with Eccentricity ## MemberSetLoad.Force(0, 3, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000], force_eccentricity=True, params={'eccentricity_y_at_start' : 0.01, 'eccentricity_z_at_start': 0.02}) ## Force Type Member Load with LOAD_DISTRIBUTION_UNIFORM_TOTAL ## MemberSetLoad.Force(0, 4, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM_TOTAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberSetLoad.Force(0, 5, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, 5000, 1.2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberSetLoad.Force(0, 6, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 2, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberSetLoad.Force(0, 7, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, False, 5000, 1, 2, 3]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x ## MemberSetLoad.Force(0, 8, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 6000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberSetLoad.Force(0, 9, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Force Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Force(0, 10, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Force(0, 11, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Force Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Force(0, 12, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[4000, 8000, 12000]) ## Force Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Force(0, 13, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Force Type Member Load with LOAD_DISTRIBUTION_VARYING_IN_Z ## MemberSetLoad.Force(0, 14, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING_IN_Z, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Moment Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Moment(0, 15, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[5000]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberSetLoad.Moment(0, 16, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, 5000, 1.2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberSetLoad.Moment(0, 17, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 2, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberSetLoad.Moment(0, 18, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, False, 5000, 1, 2, 3]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x ## MemberSetLoad.Moment(0, 19, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 5000, 6000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberSetLoad.Moment(0, 20, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Moment Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Moment(0, 21, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Moment(0, 22, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[False, False, 4000, 8000, 1, 2]) ## Moment Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Moment(0, 23, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[4000, 8000, 12000]) ## Moment Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Moment(0, 24, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 4000], [2, 1, 5000]]) ## Mass Type Member Load ## MemberSetLoad.Mass(0, 25, 1, mass_components=[1000]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Temperature(0, 26, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[18, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Temperature(0, 27, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Temperature(0, 28, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Temperature(0, 29, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3, 4, 5, 6]) ## Temperature Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Temperature(0, 30, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.TemperatureChange(0, 31, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[18, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.TemperatureChange(0, 32, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.TemperatureChange(0, 33, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, 18, 20, False, False, 1, 2]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.TemperatureChange(0, 34, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3, 4, 5, 6]) ## TemperatureChange Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.TemperatureChange(0, 35, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.AxialStrain(0, 36, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[0.005]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.AxialStrain(0, 37, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[12, 16, False, False, 1, 2]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.AxialStrain(0, 38, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[12, 16, False, False, 1, 2]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.AxialStrain(0, 39, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[1, 2, 3]) ## AxialStrain Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.AxialStrain(0, 40, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, load_parameter=[[1, 1, 285, 289], [2, 1, 293, 297]]) ## AxialDisplacement Type Member Load ## MemberSetLoad.AxialDisplacement(0, 41, 1, '1', MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, 0.05) ## Precamber Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Precamber(0, 42, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[0.005]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Precamber(0, 43, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Precamber(0, 44, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Precamber(0, 45, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Precamber Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Precamber(0, 46, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) ## InitialPrestress Type Member Load ## MemberSetLoad.InitialPrestress(0, 47, 1, '1', MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_X, 50) ## Displacement Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Displacement(0, 48, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberSetLoad.Displacement(0, 49, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, 1]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberSetLoad.Displacement(0, 50, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberSetLoad.Displacement(0, 51, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, False, 1, 2, 3]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2 ## MemberSetLoad.Displacement(0, 52, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, 0.6, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberSetLoad.Displacement(0, 53, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [[0.001, 1, 1], [0.002, 2, 1]]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Displacement(0, 54, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Displacement(0, 55, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Displacement(0, 56, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Displacement Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Displacement(0, 57, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_UNIFORM ## MemberSetLoad.Rotation(0, 58, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_1 ## MemberSetLoad.Rotation(0, 59, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_1, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, 1]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_N ## MemberSetLoad.Rotation(0, 60, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_N, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2x2 ## MemberSetLoad.Rotation(0, 61, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2x2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, False, False, False, 1, 2, 3]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_2 ## MemberSetLoad.Rotation(0, 62, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_2, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [0.5, 0.6, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_CONCENTRATED_VARYING ## MemberSetLoad.Rotation(0, 63, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_CONCENTRATED_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, [[1, 1, 285], [2, 1, 293]]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_TRAPEZOIDAL ## MemberSetLoad.Rotation(0, 64, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TRAPEZOIDAL, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_TAPERED ## MemberSetLoad.Rotation(0, 65, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_TAPERED, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[12, 16, False, False, 1, 2]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_PARABOLIC ## MemberSetLoad.Rotation(0, 66, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_PARABOLIC, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[1, 2, 3]) ## Rotation Type Member Load with LOAD_DISTRIBUTION_VARYING ## MemberSetLoad.Rotation(0, 67, 1, '1', MemberSetLoadDistribution.LOAD_DISTRIBUTION_VARYING, MemberSetLoadDirection.LOAD_DIRECTION_LOCAL_Z, load_parameter=[[1, 1, 285], [2, 1, 293]]) > Calculate_all() UnitTests\test_MemberSetLoad_test.py:271: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\initModel.py:187: in Calculate_all clientModel.service.calculate_all(generateXmlSolverInput) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F0338B100> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...ultcode><faultstring>Plausibility error</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Plausibility error' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_MembraneWithoutTensionSurface_Test.py::test_membrane_without_tension_surface | -1.48 | -||
|
- def test_membrane_without_tension_surface(): clientModel.service.begin_modification('new') # Testing the standard surface function Node(1, 0, -30, 0), Node(2, 10, -30, 0), Node(3, 10, -20, 0), Node(4, 0, -20, 0) Line(1, '1 2'), Line(2, '2 3'), Line(3, '3 4'), Line(4, '4 1') Material(name='C30/37') Thickness() Surface() # Standard planar Surface Node(5, 0, -15, 0), Node(6, 10, -15, 0), Node(7, 10, -5, 0), Node(8, 0, -5, 0) Line(5, '5 6'), Line(6, '6 7'), Line(7, '7 8'), Line(8, '8 5') Surface.WithoutMemberaneTension(Surface, 2, SurfaceGeometry.GEOMETRY_PLANE, boundary_lines_no= '5 6 7 8') # Standard NURBS Surface ## Define Nodes Node(9, 0.0, 0.0, 0.0) Node(10, 5.0, 0.0, -2.5) Node(11, 10.0, 0.0, 0.0) Node(12, 0.0, 10.0, 0.0) Node(13, 5.0, 10.0, -2.5) Node(14, 10.0, 10.0, 0.0) Node(15, 0.0, 5.0, -2,5) Node(16, 10.0, 5.0, -2.5) ## NURBS-Curve Definition Line.NURBS(Line, 9, '9 10 11', control_points= [[0, 0, 0], [5, 0, -2.5], [10, 0, 0]], weights= [1, 1, 1],params= {'nurbs_order':3}) Line.NURBS(Line, 10, '12 13 14', control_points= [[0, 10, 0], [5, 10, -2.5], [10, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 11, '9 15 12', control_points= [[0, 0, 0], [0, 5, -2.5], [0, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 12, '11 16 14', control_points= [[10, 0, 0], [10, 5, -2.5], [10, 5, -2.5]], weights= [1, 1, 1], params= {'nurbs_order':3}) # Surfaces Definition Surface.WithoutMemberaneTension(Surface, 3, SurfaceGeometry.GEOMETRY_NURBS, [3,3,3,3], '9 10 11 12') # Standard Quadrangle # Define Nodes Node(17, 0, 15, 0) Node(18, 10, 15, 0) Node(19, 0, 20, 0) Node(20, 10, 20, 0) # Boundary Lines Line.Arc(1, 13, [17, 18], [5, 15, -2]) Line.Arc(1, 14, [19, 20], [5, 20, -2]) Line(15, '17 19') Line(16, '18 20') # Quadrangle Defintion > Surface.WithoutMemberaneTension(Surface, 4, SurfaceGeometry.GEOMETRY_QUADRANGLE, [17, 18, 19, 20], '13 14 15 16') UnitTests\test_MembraneWithoutTensionSurface_Test.py:86: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:252: in WithoutMemberaneTension self.__CreateGeometryAndSetToModel(self) RFEM\BasicObjects\surface.py:375: in __CreateGeometryAndSetToModel clientModel.service.set_surface(self.clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F03396C10> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...e enter a point that lies in the plane.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 4 E Attribute: Grid origin E Error: Please enter a point that lies in the plane.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_NodalLoad_test.py::test_nodal_load | -3.15 | -||
|
- def test_nodal_load(): clientModel.service.begin_modification() # Create Material Material(1, 'S235') # Create Section Section(1, 'IPE 300', 1) # Create Nodes Node(1, 0, 0, 0) Node(2, 0, 0, -5) Node(3, 3, 0, 0) Node(4, 3, 0, -5) Node(5, 6, 0, 0) Node(6, 6, 0, -5) Node(7, 9, 0, 0) Node(8, 9, 0, -5) # Create Nodal Supports NodalSupport(1, '1', NodalSupportType.FIXED) NodalSupport(2, '3', NodalSupportType.FIXED) NodalSupport(3, '5', NodalSupportType.FIXED) NodalSupport(4, '7', NodalSupportType.FIXED) # Create Member Member(1, MemberType.TYPE_BEAM, 1, 2, 0, 1, 1) Member(2, MemberType.TYPE_BEAM, 3, 4, 0, 1, 1) Member(3, MemberType.TYPE_BEAM, 5, 6, 0, 1, 1) Member(4, MemberType.TYPE_BEAM, 7, 8, 0, 1, 1) # Create Static Analysis Settings StaticAnalysisSettings(1, 'Linear', StaticAnalysisType.GEOMETRICALLY_LINEAR) # Create Load Case LoadCase(1, 'DEAD', [True, 0.0, 0.0, 1.0]) # Initial Nodal Load NodalLoad(1, 1, '2', LoadDirectionType.LOAD_DIRECTION_LOCAL_X, 5000) # Force Type Nodal Load NodalLoad.Force(0, 2, 1, '2', LoadDirectionType.LOAD_DIRECTION_LOCAL_X, 5000) # Moment Type Nodal Load NodalLoad.Moment(0, 3, 1, '4', LoadDirectionType.LOAD_DIRECTION_LOCAL_X, 5000) # Component Type Nodal Load NodalLoad.Components(0, 4, 1, '6', [5000, 5000, 0, 0, 5000, 0]) #Mass Type Nodal Load NodalLoad.Mass(0, 5, 1, '8', True, [5000, 5000, 0, 0, 5000, 0]) > Calculate_all() UnitTests\test_NodalLoad_test.py:84: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\initModel.py:187: in Calculate_all clientModel.service.calculate_all(generateXmlSolverInput) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F03707340> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...ultcode><faultstring>Plausibility error</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Plausibility error' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_RigidSurface_Test.py::test_rigid_surface | -1.44 | -||
|
- def test_rigid_surface(): clientModel.service.begin_modification('new') # Testing the standard surface function Node(1, 0, -30, 0), Node(2, 10, -30, 0), Node(3, 10, -20, 0), Node(4, 0, -20, 0) Line(1, '1 2'), Line(2, '2 3'), Line(3, '3 4'), Line(4, '4 1') Material(name='C30/37') Thickness() Surface() # Standard planar Surface Node(5, 0, -15, 0), Node(6, 10, -15, 0), Node(7, 10, -5, 0), Node(8, 0, -5, 0) Line(5, '5 6'), Line(6, '6 7'), Line(7, '7 8'), Line(8, '8 5') Surface.Rigid(Surface, 2, SurfaceGeometry.GEOMETRY_PLANE, boundary_lines_no= '5 6 7 8') # Standard NURBS Surface ## Define Nodes Node(9, 0.0, 0.0, 0.0) Node(10, 5.0, 0.0, -2.5) Node(11, 10.0, 0.0, 0.0) Node(12, 0.0, 10.0, 0.0) Node(13, 5.0, 10.0, -2.5) Node(14, 10.0, 10.0, 0.0) Node(15, 0.0, 5.0, -2,5) Node(16, 10.0, 5.0, -2.5) ## NURBS-Curve Definition Line.NURBS(Line, 9, '9 10 11', control_points= [[0, 0, 0], [5, 0, -2.5], [10, 0, 0]], weights= [1, 1, 1],params= {'nurbs_order':3}) Line.NURBS(Line, 10, '12 13 14', control_points= [[0, 10, 0], [5, 10, -2.5], [10, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 11, '9 15 12', control_points= [[0, 0, 0], [0, 5, -2.5], [0, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 12, '11 16 14', control_points= [[10, 0, 0], [10, 5, -2.5], [10, 5, -2.5]], weights= [1, 1, 1], params= {'nurbs_order':3}) # Surfaces Definition Surface.Rigid(Surface, 3, SurfaceGeometry.GEOMETRY_NURBS, [3,3,3,3], '9 10 11 12') # Standard Quadrangle # Define Nodes Node(17, 0, 15, 0) Node(18, 10, 15, 0) Node(19, 0, 20, 0) Node(20, 10, 20, 0) # Boundary Lines Line.Arc(1, 13, [17, 18], [5, 15, -2]) Line.Arc(1, 14, [19, 20], [5, 20, -2]) Line(15, '17 19') Line(16, '18 20') # Quadrangle Defintion > Surface.Rigid(Surface, 4, SurfaceGeometry.GEOMETRY_QUADRANGLE, [17, 18, 19, 20], '13 14 15 16') UnitTests\test_RigidSurface_Test.py:86: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:166: in Rigid self.__CreateGeometryAndSetToModel(self) RFEM\BasicObjects\surface.py:375: in __CreateGeometryAndSetToModel clientModel.service.set_surface(self.clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F0381EE80> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...e enter a point that lies in the plane.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 4 E Attribute: Grid origin E Error: Please enter a point that lies in the plane.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_SolidLoads.py::test_solid_loads | -0.98 | -||
|
- def test_solid_loads(): clientModel.service.begin_modification('new') Material(1, 'S235') # Solid 1 Node(1, 0.0, 0.0, 0.0) Node(2, 10.0, 0.0, 0.0) Node(3, 10.0, 10.0, 0.0) Node(4, 0.0, 10.0, 0.0) Node(5, 0.0, 0.0, -5.0) Node(6, 10.0, 0.0, -5.0) Node(7, 10.0, 10.0, -5.0) Node(8, 0.0, 10.0, -5.0) Line(1, '1 2') Line(2, '2 3') Line(3, '3 4') Line(4, '4 1') Line(5, '5 6') Line(6, '6 7') Line(7, '7 8') Line(8, '8 5') Line(9, '1 5') Line(10, '2 6') Line(11, '3 7') Line(12, '4 8') Thickness(1, 'My Test Thickness', 1, 0.05) Surface(1, '1-4', 1) Surface(2, '5-8', 1) > Surface(3, '1 9 5 10', 1) UnitTests\test_SolidLoads.py:62: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:41: in __init__ clientModel.service.set_surface(clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F037A7760> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...enter an integer value between 2 and 0.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 3 E Attribute: Order in direction u E Error: Please enter an integer value between 2 and 0.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_StandardSurface_Test.py::test_standard_surface | -1.48 | -||
|
- def test_standard_surface(): clientModel.service.begin_modification('new') # Testing the standard surface function Node(1, 0, -30, 0), Node(2, 10, -30, 0), Node(3, 10, -20, 0), Node(4, 0, -20, 0) Line(1, '1 2'), Line(2, '2 3'), Line(3, '3 4'), Line(4, '4 1') Material(name='C30/37') Thickness() Surface() # Standard planar Surface Node(5, 0, -15, 0), Node(6, 10, -15, 0), Node(7, 10, -5, 0), Node(8, 0, -5, 0) Line(5, '5 6'), Line(6, '6 7'), Line(7, '7 8'), Line(8, '8 5') Surface.Standard(Surface, 2, SurfaceGeometry.GEOMETRY_PLANE, boundary_lines_no= '5 6 7 8') # Standard NURBS Surface ## Define Nodes Node(9, 0.0, 0.0, 0.0) Node(10, 5.0, 0.0, -2.5) Node(11, 10.0, 0.0, 0.0) Node(12, 0.0, 10.0, 0.0) Node(13, 5.0, 10.0, -2.5) Node(14, 10.0, 10.0, 0.0) Node(15, 0.0, 5.0, -2,5) Node(16, 10.0, 5.0, -2.5) ## NURBS-Curve Definition Line.NURBS(Line, 9, '9 10 11', control_points= [[0, 0, 0], [5, 0, -2.5], [10, 0, 0]], weights= [1, 1, 1],params= {'nurbs_order':3}) Line.NURBS(Line, 10, '12 13 14', control_points= [[0, 10, 0], [5, 10, -2.5], [10, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 11, '9 15 12', control_points= [[0, 0, 0], [0, 5, -2.5], [0, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 12, '11 16 14', control_points= [[10, 0, 0], [10, 5, -2.5], [10, 5, -2.5]], weights= [1, 1, 1], params= {'nurbs_order':3}) # Surfaces Definition Surface.Standard(Surface, 3, SurfaceGeometry.GEOMETRY_NURBS, [3,3,3,3], '9 10 11 12') # Standard Quadrangle # Define Nodes Node(17, 0, 15, 0) Node(18, 10, 15, 0) Node(19, 0, 20, 0) Node(20, 10, 20, 0) # Boundary Lines Line.Arc(1, 13, [17, 18], [5, 15, -2]) Line.Arc(1, 14, [19, 20], [5, 20, -2]) Line(15, '17 19') Line(16, '18 20') # Quadrangle Defintion > Surface.Standard(Surface, 4, SurfaceGeometry.GEOMETRY_QUADRANGLE, [17, 18, 19, 20], '13 14 15 16') UnitTests\test_StandardSurface_Test.py:86: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:84: in Standard self.__CreateGeometryAndSetToModel(self) RFEM\BasicObjects\surface.py:375: in __CreateGeometryAndSetToModel clientModel.service.set_surface(self.clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F036EDAF0> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...e enter a point that lies in the plane.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 4 E Attribute: Grid origin E Error: Please enter a point that lies in the plane.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_SurfaceLoad_test.py::test_surface_loads | -3.00 | -||
|
- def test_surface_loads(): clientModel.service.begin_modification() # Create Material Material(1, 'S235') # Create Thickness Thickness(1, '1', 1, 0.1) # Create Nodes Node(1, 0.0, 0.0, 0.0) Node(2, 4, 0.0, 0.0) Node(3, 0, 4.0, 0.0) Node(4, 4, 4.0, 0.0) # Create Lines Line(1, '1 2') Line(2, '2 4') Line(3, '4 3') Line(4, '3 1') # Create Surfaces Surface(1, '1 2 3 4', 1) # Create Nodal Supports NodalSupport(1, '1', NodalSupportType.FIXED) NodalSupport(2, '2', NodalSupportType.FIXED) NodalSupport(3, '3', NodalSupportType.FIXED) NodalSupport(4, '4', NodalSupportType.FIXED) # Create Static Analysis Settings StaticAnalysisSettings(1, '1. Ordnung', StaticAnalysisType.GEOMETRICALLY_LINEAR) # Create Load Case LoadCase(1, 'Eigengewicht') ## Default Surface Load ## SurfaceLoad(1, 1, '1', 5000) ## Force Type Surface Load with UNIFORM Load Distribution ## SurfaceLoad.Force(0, 2, 1, '1', SurfaceLoadDirection.LOAD_DIRECTION_GLOBAL_Z_OR_USER_DEFINED_W_TRUE, SurfaceLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, load_parameter=[5000]) ## Force Type Surface Load with LINEAR Load Distribution ## SurfaceLoad.Force(0, 3, 1, '1', SurfaceLoadDirection.LOAD_DIRECTION_GLOBAL_Z_OR_USER_DEFINED_W_TRUE, SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR, load_parameter=[5000, 6000, 7000, 2, 3, 4]) ## Force Type Surface Load with LINEAR_X or LINEAR_Y or LINEAR_Z Load Distribution ## SurfaceLoad.Force(0, 4, 1, '1', SurfaceLoadDirection.LOAD_DIRECTION_GLOBAL_Z_OR_USER_DEFINED_W_TRUE, SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR_IN_X, load_parameter=[5000, 6000, 3, 4]) ## Force Type Surface Load with RADIAL Load Distribution ## #SurfaceLoad.Force(0, 5, 1, '1', SurfaceLoadDirection.LOAD_DIRECTION_GLOBAL_Z_OR_USER_DEFINED_W_TRUE, SurfaceLoadDistribution.LOAD_DISTRIBUTION_RADIAL, #(5000, 6000, 3, 4, SurfaceLoadAxisDefinitionType.AXIS_DEFINITION_TWO_POINTS, [1,2,3], [4,5,6])) ## Temperature Type Surface Load with UNIFORM Load Distribution ## SurfaceLoad.Temperature(0, 6, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, load_parameter=[18, 2]) ## Temperature Type Surface Load with LINEAR Load Distribution ## SurfaceLoad.Temperature(0, 7, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR, load_parameter=[18, 2, 20, 4, 22, 6, 2, 3, 4]) ## Temperature Type Surface Load with LINEAR_X or LINEAR_Y or LINEAR_Z Load Distribution ## SurfaceLoad.Temperature(0, 8, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR_IN_X, load_parameter=[18, 2, 20, 4, 2, 3]) ## Axial Strain Type Surface Load with UNIFORM Load Distribution ## SurfaceLoad.AxialStrain(0, 9, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_UNIFORM, load_parameter=[0.5, 1]) ## Axial Strain Type Surface Load with LINEAR Load Distribution ## SurfaceLoad.AxialStrain(0, 10, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR, load_parameter=[0.005, 0.006, 0.007, 0.008, 0.009, 0.01, 2, 3, 4]) ## Axial Strain Type Surface Load with LINEAR_IN_X Load Distribution ## SurfaceLoad.AxialStrain(0, 11, 1, '1', SurfaceLoadDistribution.LOAD_DISTRIBUTION_LINEAR_IN_X, load_parameter=[0.005, 0.006, 0.007, 0.008, 2, 3]) ## Precamber Type Surface Load ## SurfaceLoad.Precamber(0, 12, 1, '1', 50) ## Rotary Motion Surface Load ## #SurfaceLoad.RotaryMotion(0, 13, 1, '1', load_parameter=[1, 2, SurfaceLoadAxisDefinitionType.AXIS_DEFINITION_TWO_POINTS, [1,2,3], [4,5,6]]) ## Mass Type Surface Load ## #SurfaceLoad.Mass(0, 14, 1, '1', individual_mass_components=True, mass_parameter=[500, 600, 700]) > Calculate_all() UnitTests\test_SurfaceLoad_test.py:111: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\initModel.py:187: in Calculate_all clientModel.service.calculate_all(generateXmlSolverInput) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F037D3A00> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...ultcode><faultstring>Plausibility error</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Plausibility error' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_SurfaceSetLoad_test.py::test_surface_set_load | -1.16 | -||
|
- def test_surface_set_load(): clientModel.service.begin_modification() # Create Material Material(1, 'S235') # Create Thickness Thickness(1, '1', 1, 0.01) # Create Nodes Node(1, 0.0, 0.0, 0.0) Node(2, 0.0, 2.0, 0.0) Node(3, 2.0, 2.0, 0.0) Node(4, 2.0, 0.0, 0.0) Node(5, 0.0, 4.0, 0.0) Node(6, 2.0, 4.0, 0.0) Node(7, 5, 0, 0) Node(8, 7, 0, 0) Node(9, 5, 0, 2) Node(10, 7, 0, 2) Node(11, 5, 0, -2) Node(12, 7, 0, -2) # Create Lines Line(1, '1 2') Line(2, '2 3') Line(3, '3 4') Line(4, '4 1') Line(5, '2 5') Line(6, '5 6') Line(7, '6 3') Line(8, '9 7') Line(9, '7 8') Line(10, '8 10') Line(11, '10 9') Line(12, '8 12') Line(13, '12 11') Line(14, '11 7') # Create Surfaces Surface(1, '1 2 3 4', 1) Surface(2, '2 5 6 7', 1) > Surface(3, '8 9 10 11', 1) UnitTests\test_SurfaceSetLoad_test.py:76: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:41: in __init__ clientModel.service.set_surface(clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F0388BD90> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...enter an integer value between 2 and 0.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 3 E Attribute: Order in direction u E Error: Please enter an integer value between 2 and 0.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Failed | -UnitTests/test_WithoutThicknessSurface_Test.py::test_without_thickness_surface | -1.48 | -||
|
- def test_without_thickness_surface(): clientModel.service.begin_modification('new') # Testing the standard surface function Node(1, 0, -30, 0), Node(2, 10, -30, 0), Node(3, 10, -20, 0), Node(4, 0, -20, 0) Line(1, '1 2'), Line(2, '2 3'), Line(3, '3 4'), Line(4, '4 1') Material(name='C30/37') Thickness() Surface() # Standard planar Surface Node(5, 0, -15, 0), Node(6, 10, -15, 0), Node(7, 10, -5, 0), Node(8, 0, -5, 0) Line(5, '5 6'), Line(6, '6 7'), Line(7, '7 8'), Line(8, '8 5') Surface.WithoutThickness(Surface, 2, boundary_lines_no= '5 6 7 8') # Standard NURBS Surface ## Define Nodes Node(9, 0.0, 0.0, 0.0) Node(10, 5.0, 0.0, -2.5) Node(11, 10.0, 0.0, 0.0) Node(12, 0.0, 10.0, 0.0) Node(13, 5.0, 10.0, -2.5) Node(14, 10.0, 10.0, 0.0) Node(15, 0.0, 5.0, -2,5) Node(16, 10.0, 5.0, -2.5) ## NURBS-Curve Definition Line.NURBS(Line, 9, '9 10 11', control_points= [[0, 0, 0], [5, 0, -2.5], [10, 0, 0]], weights= [1, 1, 1],params= {'nurbs_order':3}) Line.NURBS(Line, 10, '12 13 14', control_points= [[0, 10, 0], [5, 10, -2.5], [10, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 11, '9 15 12', control_points= [[0, 0, 0], [0, 5, -2.5], [0, 10, 0]], weights= [1, 1, 1], params= {'nurbs_order':3}) Line.NURBS(Line, 12, '11 16 14', control_points= [[10, 0, 0], [10, 5, -2.5], [10, 5, -2.5]], weights= [1, 1, 1], params= {'nurbs_order':3}) # Surfaces Definition Surface.WithoutThickness(Surface, 3, SurfaceGeometry.GEOMETRY_NURBS, [3,3,3,3], '9 10 11 12') # Standard Quadrangle # Define Nodes Node(17, 0, 15, 0) Node(18, 10, 15, 0) Node(19, 0, 20, 0) Node(20, 10, 20, 0) # Boundary Lines Line.Arc(1, 13, [17, 18], [5, 15, -2]) Line.Arc(1, 14, [19, 20], [5, 20, -2]) Line(15, '17 19') Line(16, '18 20') # Quadrangle Defintion > Surface.WithoutThickness(Surface, 4, SurfaceGeometry.GEOMETRY_QUADRANGLE, [17, 18, 19, 20], '13 14 15 16') UnitTests\test_WithoutThicknessSurface_Test.py:86: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ RFEM\BasicObjects\surface.py:125: in WithoutThickness self.__CreateGeometryAndSetToModel(self) RFEM\BasicObjects\surface.py:375: in __CreateGeometryAndSetToModel clientModel.service.set_surface(self.clientObject) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:566: in __call__ return client.invoke(args, kwargs) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:708: in invoke result = self.send(soapenv, timeout=timeout) C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:756: in send return self.process_reply(reply.message, None, None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <suds.client._SoapClient object at 0x0000023F0380EF10> reply = b'<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:so...e enter a point that lies in the plane.</faultstring><faultactor/><detail/></soap:Fault></soap:Body></soap:Envelope>\n' status = <HTTPStatus.OK: 200>, description = None def process_reply(self, reply, status, description): """ Process a web service operation SOAP reply. Depending on how the ``retxml`` option is set, may return the SOAP reply XML or process it and return the Python object representing the returned value. @param reply: The SOAP reply envelope. @type reply: I{bytes} @param status: The HTTP status code (None indicates httplib.OK). @type status: int|I{None} @param description: Additional status description. @type description: str @return: The invoked web service operation return value. @rtype: I{builtin}|I{subclass of} L{Object}|I{bytes}|I{None} """ if status is None: status = http.client.OK debug_message = "Reply HTTP status - %d" % (status,) if status in (http.client.ACCEPTED, http.client.NO_CONTENT): log.debug(debug_message) return #TODO: Consider whether and how to allow plugins to handle error, # httplib.ACCEPTED & httplib.NO_CONTENT replies as well as successful # ones. if status == http.client.OK: log.debug("%s\n%s", debug_message, reply) else: log.debug("%s - %s\n%s", debug_message, description, reply) plugins = PluginContainer(self.options.plugins) ctx = plugins.message.received(reply=reply) reply = ctx.reply # SOAP standard states that SOAP errors must be accompanied by HTTP # status code 500 - internal server error: # # From SOAP 1.1 specification: # In case of a SOAP error while processing the request, the SOAP HTTP # server MUST issue an HTTP 500 "Internal Server Error" response and # include a SOAP message in the response containing a SOAP Fault # element (see section 4.4) indicating the SOAP processing error. # # From WS-I Basic profile: # An INSTANCE MUST use a "500 Internal Server Error" HTTP status code # if the response message is a SOAP Fault. replyroot = None if status in (http.client.OK, http.client.INTERNAL_SERVER_ERROR): replyroot = _parse(reply) plugins.message.parsed(reply=replyroot) fault = self.__get_fault(replyroot) if fault: if status != http.client.INTERNAL_SERVER_ERROR: log.warning("Web service reported a SOAP processing fault " "using an unexpected HTTP status code %d. Reporting " "as an internal server error.", status) if self.options.faults: > raise WebFault(fault, replyroot) E suds.WebFault: Server raised fault: 'Object: Surface No. 4 E Attribute: Grid origin E Error: Please enter a point that lies in the plane.' C:\Users\BrozJ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\suds\client.py:817: WebFault -------------------------------Captured log call-------------------------------- WARNING suds.client:client.py:813 Web service reported a SOAP processing fault using an unexpected HTTP status code 200. Reporting as an internal server error. | ||||
| Skipped | -UnitTests/test_MeshGenerationStatistics.py::test_generation_of_mesh_statistics | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_MeshGenerationStatistics.py', 34, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_SpectralSettings_test.py::test_spectral_analysis_settings | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_SpectralSettings_test.py', 36, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_modalAnalysis_test.py::test_modal_analysis_settings | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_modalAnalysis_test.py', 34, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_stabilitysettings.py::test_stability_analysis_settings_init | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_stabilitysettings.py', 9, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_stabilitysettings.py::test_stability_analysis_settings_eigenvalue_method | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_stabilitysettings.py', 32, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_stabilitysettings.py::test_stability_analysis_settings_incrementaly_method_with_eigenvalue | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_stabilitysettings.py', 65, 'Skipped: all tests still WIP') | ||||
| Skipped | -UnitTests/test_stabilitysettings.py::test_stability_analysis_settings_incrementaly_method_without_eigenvalue | -0.00 | -||
|
- ('d:\\Sources\\RfemPythonWsClient\\UnitTests\\test_stabilitysettings.py', 110, 'Skipped: all tests still WIP') | ||||
| Passed | -UnitTests/test_DesignSituations.py::test_design_situation | -0.66 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_Free_Load_Test.py::test_free_load | -2.44 | -||
|
- ------------------------------Captured stdout call------------------------------ Ready! - | ||||
| Passed | -UnitTests/test_GlobalParameters_Test.py::test_global_parameters | -0.24 | -||
|
- ------------------------------Captured stdout call------------------------------ Ready! - | ||||
| Passed | -UnitTests/test_LineLoads_Test.py::test_line_loads | -2.72 | -||
|
- ------------------------------Captured stdout call------------------------------ Ready! - | ||||
| Passed | -UnitTests/test_LoadCases_Test.py::test_load_case | -0.39 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_LoadDistributionSurface_Test.py::test_load_distribution_surface | -0.94 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_MembraneSurface_Test.py::test_membrane_surface | -1.49 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_MeshGenerationStatistics.py::test_generation_mesh_implemented | -0.00 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_SpectralSettings_test.py::test_spectral_analysis_implemented | -0.00 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_Thickness_Test.py::test_thickness | -0.97 | -||
|
- ------------------------------Captured stdout call------------------------------ Ready! - | ||||
| Passed | -UnitTests/test_basic_objects.py::test_line_init | -1.06 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_line_polyline | -0.40 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_line_arc | -0.42 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_line_circle | -0.33 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_lineSet | -0.51 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_material | -0.33 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_node_init | -0.15 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_memberbyline_init | -0.88 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_member_init | -0.79 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_member_beam | -0.78 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_member_set | -0.95 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_opening | -1.34 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_section | -0.54 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_init | -0.52 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_uniform | -0.48 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_3nodes | -0.59 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_2nodes | -0.54 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_4corners | -1.51 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_circle | -0.47 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_basic_objects.py::test_thickness_layers | -0.48 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_nodal_load_init | -0.47 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_nodal_load_force | -0.48 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_nodal_load_moment | -0.48 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_nodal_load_components | -0.48 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_nodal_load_mass | -0.49 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_init | -0.90 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_force | -0.98 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_moment | -0.96 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_mass | -0.99 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_temperature | -0.99 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_temperature_change | -0.97 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_axial_strain | -1.01 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_axial_displacement | -1.00 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_precamber | -0.99 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_initial_prestress | -0.99 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_displacement | -1.01 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_rotation | -0.96 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_pipecontentfull | -0.96 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_pipecontentpartial | -0.99 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_member_load_pipeinternalpressure | -0.96 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_init | -1.68 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_force | -1.66 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_temperature | -1.61 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_axial_strain | -1.65 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_precamber | -1.61 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_surface_load_mass | -1.68 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_line_load_init | -1.69 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_line_load_force | -1.65 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_line_load_moment | -1.69 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_line_load_mass | -1.68 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_free_concentrated_load | -1.79 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_free_line_load | -1.83 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_free_rectangular_load | -1.75 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_free_circular_load | -1.73 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_loads.py::test_free_polygon_load | -1.73 | -||
|
- No log output captured. | ||||
| Passed | -UnitTests/test_modalAnalysis_test.py::test_modal_analysis_implemented | +UnitTests/test_BaseSettings_test.py::test_baseSettings | 0.00 | |
|
- No log output captured. | ||||
| Passed | -UnitTests/test_newFunctionalityTesting.py::test_ImportFrom | +UnitTests/test_BaseSettings_test.py::test_base_settings_implemented | 0.00 | |