RS3Scripting 4.42.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. rs3/ApplicationManager.py +77 -0
  2. rs3/ColorPicker.py +123 -0
  3. rs3/CommonEnums.py +16 -0
  4. rs3/Compute.py +105 -0
  5. rs3/ExternalVolume.py +48 -0
  6. rs3/Geometry.py +74 -0
  7. rs3/Model.py +795 -0
  8. rs3/ModelEnums.py +9 -0
  9. rs3/RS3Modeler.py +109 -0
  10. rs3/Restraints.py +91 -0
  11. rs3/Selection.py +123 -0
  12. rs3/__init__.py +18 -0
  13. rs3/_client.py +57 -0
  14. rs3/_proxyObject.py +5 -0
  15. rs3/generatedFiles/BFPCommonMessage_pb2.py +38 -0
  16. rs3/generatedFiles/BFPCommonMessage_pb2.pyi +47 -0
  17. rs3/generatedFiles/BFPCommonMessage_pb2_grpc.py +24 -0
  18. rs3/generatedFiles/BeamDataService_pb2.py +37 -0
  19. rs3/generatedFiles/BeamDataService_pb2.pyi +5 -0
  20. rs3/generatedFiles/BeamDataService_pb2_grpc.py +226 -0
  21. rs3/generatedFiles/BeamService_pb2.py +37 -0
  22. rs3/generatedFiles/BeamService_pb2.pyi +5 -0
  23. rs3/generatedFiles/BeamService_pb2_grpc.py +140 -0
  24. rs3/generatedFiles/BeamStageFactorService_pb2.py +37 -0
  25. rs3/generatedFiles/BeamStageFactorService_pb2.pyi +5 -0
  26. rs3/generatedFiles/BeamStageFactorService_pb2_grpc.py +140 -0
  27. rs3/generatedFiles/BeamsResultsQueryService_pb2.py +50 -0
  28. rs3/generatedFiles/BeamsResultsQueryService_pb2.pyi +48 -0
  29. rs3/generatedFiles/BeamsResultsQueryService_pb2_grpc.py +141 -0
  30. rs3/generatedFiles/BoltDataService_pb2.py +37 -0
  31. rs3/generatedFiles/BoltDataService_pb2.pyi +5 -0
  32. rs3/generatedFiles/BoltDataService_pb2_grpc.py +226 -0
  33. rs3/generatedFiles/BoltService_pb2.py +37 -0
  34. rs3/generatedFiles/BoltService_pb2.pyi +5 -0
  35. rs3/generatedFiles/BoltService_pb2_grpc.py +140 -0
  36. rs3/generatedFiles/BoltsResultsQueryService_pb2.py +51 -0
  37. rs3/generatedFiles/BoltsResultsQueryService_pb2.pyi +75 -0
  38. rs3/generatedFiles/BoltsResultsQueryService_pb2_grpc.py +141 -0
  39. rs3/generatedFiles/ClientService_pb2.py +40 -0
  40. rs3/generatedFiles/ClientService_pb2.pyi +15 -0
  41. rs3/generatedFiles/ClientService_pb2_grpc.py +97 -0
  42. rs3/generatedFiles/CommonGeometryMessages_pb2.py +52 -0
  43. rs3/generatedFiles/CommonGeometryMessages_pb2.pyi +92 -0
  44. rs3/generatedFiles/CommonGeometryMessages_pb2_grpc.py +24 -0
  45. rs3/generatedFiles/CommonMessages_pb2.py +66 -0
  46. rs3/generatedFiles/CommonMessages_pb2.pyi +145 -0
  47. rs3/generatedFiles/CommonMessages_pb2_grpc.py +24 -0
  48. rs3/generatedFiles/CompositeLinerDataService_pb2.py +47 -0
  49. rs3/generatedFiles/CompositeLinerDataService_pb2.pyi +51 -0
  50. rs3/generatedFiles/CompositeLinerDataService_pb2_grpc.py +227 -0
  51. rs3/generatedFiles/CompositeLinerResultsQueryService_pb2.py +63 -0
  52. rs3/generatedFiles/CompositeLinerResultsQueryService_pb2.pyi +139 -0
  53. rs3/generatedFiles/CompositeLinerResultsQueryService_pb2_grpc.py +314 -0
  54. rs3/generatedFiles/CompositeLinerService_pb2.py +37 -0
  55. rs3/generatedFiles/CompositeLinerService_pb2.pyi +5 -0
  56. rs3/generatedFiles/CompositeLinerService_pb2_grpc.py +140 -0
  57. rs3/generatedFiles/ComputeService_pb2.py +48 -0
  58. rs3/generatedFiles/ComputeService_pb2.pyi +56 -0
  59. rs3/generatedFiles/ComputeService_pb2_grpc.py +147 -0
  60. rs3/generatedFiles/ExternalVolumesService_pb2.py +45 -0
  61. rs3/generatedFiles/ExternalVolumesService_pb2.pyi +34 -0
  62. rs3/generatedFiles/ExternalVolumesService_pb2_grpc.py +270 -0
  63. rs3/generatedFiles/FieldStressService_pb2.py +37 -0
  64. rs3/generatedFiles/FieldStressService_pb2.pyi +5 -0
  65. rs3/generatedFiles/FieldStressService_pb2_grpc.py +140 -0
  66. rs3/generatedFiles/FieldStressSourceService_pb2.py +85 -0
  67. rs3/generatedFiles/FieldStressSourceService_pb2.pyi +182 -0
  68. rs3/generatedFiles/FieldStressSourceService_pb2_grpc.py +657 -0
  69. rs3/generatedFiles/GaussPointFailureMessage_pb2.py +37 -0
  70. rs3/generatedFiles/GaussPointFailureMessage_pb2.pyi +14 -0
  71. rs3/generatedFiles/GaussPointFailureMessage_pb2_grpc.py +24 -0
  72. rs3/generatedFiles/HydraulicStageFactorService_pb2.py +45 -0
  73. rs3/generatedFiles/HydraulicStageFactorService_pb2.pyi +36 -0
  74. rs3/generatedFiles/HydraulicStageFactorService_pb2_grpc.py +227 -0
  75. rs3/generatedFiles/JointDataService_pb2.py +45 -0
  76. rs3/generatedFiles/JointDataService_pb2.pyi +30 -0
  77. rs3/generatedFiles/JointDataService_pb2_grpc.py +313 -0
  78. rs3/generatedFiles/JointResultsQueryService_pb2.py +54 -0
  79. rs3/generatedFiles/JointResultsQueryService_pb2.pyi +92 -0
  80. rs3/generatedFiles/JointResultsQueryService_pb2_grpc.py +141 -0
  81. rs3/generatedFiles/JointService_pb2.py +45 -0
  82. rs3/generatedFiles/JointService_pb2.pyi +30 -0
  83. rs3/generatedFiles/JointService_pb2_grpc.py +227 -0
  84. rs3/generatedFiles/JointStageFactorService_pb2.py +37 -0
  85. rs3/generatedFiles/JointStageFactorService_pb2.pyi +5 -0
  86. rs3/generatedFiles/JointStageFactorService_pb2_grpc.py +140 -0
  87. rs3/generatedFiles/LinerDataService_pb2.py +37 -0
  88. rs3/generatedFiles/LinerDataService_pb2.pyi +5 -0
  89. rs3/generatedFiles/LinerDataService_pb2_grpc.py +226 -0
  90. rs3/generatedFiles/LinerService_pb2.py +37 -0
  91. rs3/generatedFiles/LinerService_pb2.pyi +5 -0
  92. rs3/generatedFiles/LinerService_pb2_grpc.py +140 -0
  93. rs3/generatedFiles/LinerStageFactorService_pb2.py +37 -0
  94. rs3/generatedFiles/LinerStageFactorService_pb2.pyi +5 -0
  95. rs3/generatedFiles/LinerStageFactorService_pb2_grpc.py +140 -0
  96. rs3/generatedFiles/MaterialDataService_pb2.py +37 -0
  97. rs3/generatedFiles/MaterialDataService_pb2.pyi +5 -0
  98. rs3/generatedFiles/MaterialDataService_pb2_grpc.py +226 -0
  99. rs3/generatedFiles/MaterialDatumService_pb2.py +45 -0
  100. rs3/generatedFiles/MaterialDatumService_pb2.pyi +38 -0
  101. rs3/generatedFiles/MaterialDatumService_pb2_grpc.py +140 -0
  102. rs3/generatedFiles/MaterialHydraulicDataService_pb2.py +93 -0
  103. rs3/generatedFiles/MaterialHydraulicDataService_pb2.pyi +193 -0
  104. rs3/generatedFiles/MaterialHydraulicDataService_pb2_grpc.py +829 -0
  105. rs3/generatedFiles/MaterialHydraulicModelService_pb2.py +55 -0
  106. rs3/generatedFiles/MaterialHydraulicModelService_pb2.pyi +79 -0
  107. rs3/generatedFiles/MaterialHydraulicModelService_pb2_grpc.py +313 -0
  108. rs3/generatedFiles/MaterialInitialConditionsService_pb2.py +37 -0
  109. rs3/generatedFiles/MaterialInitialConditionsService_pb2.pyi +5 -0
  110. rs3/generatedFiles/MaterialInitialConditionsService_pb2_grpc.py +140 -0
  111. rs3/generatedFiles/MaterialJointService_pb2.py +49 -0
  112. rs3/generatedFiles/MaterialJointService_pb2.pyi +52 -0
  113. rs3/generatedFiles/MaterialJointService_pb2_grpc.py +183 -0
  114. rs3/generatedFiles/MaterialJointSetSlipCriterionService_pb2.py +69 -0
  115. rs3/generatedFiles/MaterialJointSetSlipCriterionService_pb2.pyi +130 -0
  116. rs3/generatedFiles/MaterialJointSetSlipCriterionService_pb2_grpc.py +398 -0
  117. rs3/generatedFiles/MaterialJointStageFactorService_pb2.py +45 -0
  118. rs3/generatedFiles/MaterialJointStageFactorService_pb2.pyi +42 -0
  119. rs3/generatedFiles/MaterialJointStageFactorService_pb2_grpc.py +140 -0
  120. rs3/generatedFiles/MaterialStageFactorsService_pb2.py +37 -0
  121. rs3/generatedFiles/MaterialStageFactorsService_pb2.pyi +5 -0
  122. rs3/generatedFiles/MaterialStageFactorsService_pb2_grpc.py +140 -0
  123. rs3/generatedFiles/MaterialStiffnessFormulaService_pb2.py +47 -0
  124. rs3/generatedFiles/MaterialStiffnessFormulaService_pb2.pyi +54 -0
  125. rs3/generatedFiles/MaterialStiffnessFormulaService_pb2_grpc.py +140 -0
  126. rs3/generatedFiles/MaterialStiffnessService_pb2.py +53 -0
  127. rs3/generatedFiles/MaterialStiffnessService_pb2.pyi +66 -0
  128. rs3/generatedFiles/MaterialStiffnessService_pb2_grpc.py +313 -0
  129. rs3/generatedFiles/MaterialStrengthService_pb2.py +105 -0
  130. rs3/generatedFiles/MaterialStrengthService_pb2.pyi +243 -0
  131. rs3/generatedFiles/MaterialStrengthService_pb2_grpc.py +833 -0
  132. rs3/generatedFiles/MaterialUnsaturatedSoilDataService_pb2.py +47 -0
  133. rs3/generatedFiles/MaterialUnsaturatedSoilDataService_pb2.pyi +43 -0
  134. rs3/generatedFiles/MaterialUnsaturatedSoilDataService_pb2_grpc.py +228 -0
  135. rs3/generatedFiles/MeshSettingsService_pb2.py +41 -0
  136. rs3/generatedFiles/MeshSettingsService_pb2.pyi +16 -0
  137. rs3/generatedFiles/MeshSettingsService_pb2_grpc.py +184 -0
  138. rs3/generatedFiles/ModelFunctionService_pb2.py +119 -0
  139. rs3/generatedFiles/ModelFunctionService_pb2.pyi +331 -0
  140. rs3/generatedFiles/ModelFunctionService_pb2_grpc.py +871 -0
  141. rs3/generatedFiles/ModelService_pb2.py +342 -0
  142. rs3/generatedFiles/ModelService_pb2.pyi +962 -0
  143. rs3/generatedFiles/ModelService_pb2_grpc.py +3322 -0
  144. rs3/generatedFiles/PileDataService_pb2.py +55 -0
  145. rs3/generatedFiles/PileDataService_pb2.pyi +63 -0
  146. rs3/generatedFiles/PileDataService_pb2_grpc.py +399 -0
  147. rs3/generatedFiles/PileForepoleResultsQueryService_pb2.py +51 -0
  148. rs3/generatedFiles/PileForepoleResultsQueryService_pb2.pyi +63 -0
  149. rs3/generatedFiles/PileForepoleResultsQueryService_pb2_grpc.py +141 -0
  150. rs3/generatedFiles/PileStageFactorService_pb2.py +37 -0
  151. rs3/generatedFiles/PileStageFactorService_pb2.pyi +5 -0
  152. rs3/generatedFiles/PileStageFactorService_pb2_grpc.py +140 -0
  153. rs3/generatedFiles/PlainStrandCableBoltService_pb2.py +44 -0
  154. rs3/generatedFiles/PlainStrandCableBoltService_pb2.pyi +30 -0
  155. rs3/generatedFiles/PlainStrandCableBoltService_pb2_grpc.py +140 -0
  156. rs3/generatedFiles/ProjectSettingsDataService_pb2.py +69 -0
  157. rs3/generatedFiles/ProjectSettingsDataService_pb2.pyi +119 -0
  158. rs3/generatedFiles/ProjectSettingsDataService_pb2_grpc.py +786 -0
  159. rs3/generatedFiles/RFCApplicationService_pb2.py +34 -0
  160. rs3/generatedFiles/RFCApplicationService_pb2.pyi +27 -0
  161. rs3/generatedFiles/RFCApplicationService_pb2_grpc.py +145 -0
  162. rs3/generatedFiles/RS3ModelerService_pb2.py +50 -0
  163. rs3/generatedFiles/RS3ModelerService_pb2.pyi +45 -0
  164. rs3/generatedFiles/RS3ModelerService_pb2_grpc.py +183 -0
  165. rs3/generatedFiles/RelativeStageFactorService_pb2.py +40 -0
  166. rs3/generatedFiles/RelativeStageFactorService_pb2.pyi +17 -0
  167. rs3/generatedFiles/RelativeStageFactorService_pb2_grpc.py +97 -0
  168. rs3/generatedFiles/RestraintsService_pb2.py +62 -0
  169. rs3/generatedFiles/RestraintsService_pb2.pyi +84 -0
  170. rs3/generatedFiles/RestraintsService_pb2_grpc.py +312 -0
  171. rs3/generatedFiles/ResultsQueryCommonMessage_pb2.py +56 -0
  172. rs3/generatedFiles/ResultsQueryCommonMessage_pb2.pyi +85 -0
  173. rs3/generatedFiles/ResultsQueryCommonMessage_pb2_grpc.py +24 -0
  174. rs3/generatedFiles/ResultsQueryService_pb2.py +87 -0
  175. rs3/generatedFiles/ResultsQueryService_pb2.pyi +185 -0
  176. rs3/generatedFiles/ResultsQueryService_pb2_grpc.py +745 -0
  177. rs3/generatedFiles/SelectionService_pb2.py +49 -0
  178. rs3/generatedFiles/SelectionService_pb2.pyi +51 -0
  179. rs3/generatedFiles/SelectionService_pb2_grpc.py +269 -0
  180. rs3/generatedFiles/SolidsResultsQueryService_pb2.py +93 -0
  181. rs3/generatedFiles/SolidsResultsQueryService_pb2.pyi +213 -0
  182. rs3/generatedFiles/SolidsResultsQueryService_pb2_grpc.py +195 -0
  183. rs3/generatedFiles/StageFactorService_pb2.py +58 -0
  184. rs3/generatedFiles/StageFactorService_pb2.pyi +79 -0
  185. rs3/generatedFiles/StageFactorService_pb2_grpc.py +226 -0
  186. rs3/generatedFiles/StiffnessStageFactorService_pb2.py +37 -0
  187. rs3/generatedFiles/StiffnessStageFactorService_pb2.pyi +5 -0
  188. rs3/generatedFiles/StiffnessStageFactorService_pb2_grpc.py +140 -0
  189. rs3/generatedFiles/StrengthStageFactorService_pb2.py +37 -0
  190. rs3/generatedFiles/StrengthStageFactorService_pb2.pyi +5 -0
  191. rs3/generatedFiles/StrengthStageFactorService_pb2_grpc.py +140 -0
  192. rs3/generatedFiles/WaterByLocationDataService_pb2.py +61 -0
  193. rs3/generatedFiles/WaterByLocationDataService_pb2.pyi +95 -0
  194. rs3/generatedFiles/WaterByLocationDataService_pb2_grpc.py +312 -0
  195. rs3/generatedFiles/WaterPressureGridDataService_pb2.py +63 -0
  196. rs3/generatedFiles/WaterPressureGridDataService_pb2.pyi +107 -0
  197. rs3/generatedFiles/WaterPressureGridDataService_pb2_grpc.py +312 -0
  198. rs3/generatedFiles/__init__.py +3 -0
  199. rs3/loadings/LoadingEnums.py +6 -0
  200. rs3/loadings/Loadings.py +15 -0
  201. rs3/loadings/__init__.py +0 -0
  202. rs3/loadings/fieldStress/AdvancedConstant.py +115 -0
  203. rs3/loadings/fieldStress/AdvancedGravity.py +176 -0
  204. rs3/loadings/fieldStress/Constant.py +119 -0
  205. rs3/loadings/fieldStress/FieldStress.py +38 -0
  206. rs3/loadings/fieldStress/Gravity.py +206 -0
  207. rs3/loadings/fieldStress/_PropertyAccessor.py +41 -0
  208. rs3/loadings/fieldStress/__init__.py +0 -0
  209. rs3/mesh/Graded.py +59 -0
  210. rs3/mesh/Mesh.py +50 -0
  211. rs3/mesh/MeshEnums.py +16 -0
  212. rs3/mesh/Uniform.py +35 -0
  213. rs3/mesh/_PropertyAccessor.py +10 -0
  214. rs3/mesh/__init__.py +0 -0
  215. rs3/projectSettings/Dynamic.py +110 -0
  216. rs3/projectSettings/Groundwater.py +118 -0
  217. rs3/projectSettings/ProjectSettingEnums.py +108 -0
  218. rs3/projectSettings/ProjectSettings.py +43 -0
  219. rs3/projectSettings/ShearStrengthReduction.py +130 -0
  220. rs3/projectSettings/SolverOptions.py +88 -0
  221. rs3/projectSettings/Stages.py +162 -0
  222. rs3/projectSettings/StressAnalysis.py +183 -0
  223. rs3/projectSettings/Units.py +82 -0
  224. rs3/projectSettings/_PropertyAccessor.py +133 -0
  225. rs3/projectSettings/__init__.py +0 -0
  226. rs3/properties/CustomHydraulicModel.py +129 -0
  227. rs3/properties/DiscreteFunction.py +147 -0
  228. rs3/properties/GeneralizedAnisotropicFunction.py +98 -0
  229. rs3/properties/IPropertyGroupAccessors.py +12 -0
  230. rs3/properties/PropertyEnums.py +387 -0
  231. rs3/properties/ShearNormalFunction.py +94 -0
  232. rs3/properties/SnowdenStrengthFunction.py +115 -0
  233. rs3/properties/_PropertyAccessor.py +111 -0
  234. rs3/properties/__init__.py +0 -0
  235. rs3/properties/beam/Beam.py +86 -0
  236. rs3/properties/beam/BeamCommon.py +175 -0
  237. rs3/properties/beam/Standard.py +97 -0
  238. rs3/properties/beam/Truss.py +23 -0
  239. rs3/properties/beam/_PropertyAccessor.py +9 -0
  240. rs3/properties/beam/__init__.py +0 -0
  241. rs3/properties/bolt/Bolt.py +81 -0
  242. rs3/properties/bolt/EndAnchored.py +77 -0
  243. rs3/properties/bolt/FullyBonded.py +78 -0
  244. rs3/properties/bolt/PlainStrandCable.py +151 -0
  245. rs3/properties/bolt/Swellex.py +106 -0
  246. rs3/properties/bolt/Tieback.py +176 -0
  247. rs3/properties/bolt/_PropertyAccessor.py +7 -0
  248. rs3/properties/bolt/__init__.py +0 -0
  249. rs3/properties/groundwater/WaterByLocation.py +83 -0
  250. rs3/properties/groundwater/WaterGrid.py +120 -0
  251. rs3/properties/groundwater/_PropertyAccessor.py +36 -0
  252. rs3/properties/groundwater/__init__.py +0 -0
  253. rs3/properties/joint/BartonBandis.py +118 -0
  254. rs3/properties/joint/GeosyntheticHyperbolic.py +158 -0
  255. rs3/properties/joint/Joint.py +176 -0
  256. rs3/properties/joint/MaterialDependent.py +107 -0
  257. rs3/properties/joint/MohrCoulomb.py +169 -0
  258. rs3/properties/joint/NoneSlip.py +68 -0
  259. rs3/properties/joint/_PropertyAccessor.py +9 -0
  260. rs3/properties/joint/__init__.py +0 -0
  261. rs3/properties/liner/Geosynthetic.py +85 -0
  262. rs3/properties/liner/Liner.py +83 -0
  263. rs3/properties/liner/ReinforcedConcrete.py +216 -0
  264. rs3/properties/liner/Standard.py +183 -0
  265. rs3/properties/liner/_PropertyAccessor.py +7 -0
  266. rs3/properties/liner/__init__.py +0 -0
  267. rs3/properties/liningComposition/LiningComposition.py +244 -0
  268. rs3/properties/liningComposition/_PropertyAccessor.py +7 -0
  269. rs3/properties/liningComposition/__init__.py +0 -0
  270. rs3/properties/material/Material.py +74 -0
  271. rs3/properties/material/__init__.py +0 -0
  272. rs3/properties/material/constitutiveModel/AnisotropicLinear.py +149 -0
  273. rs3/properties/material/constitutiveModel/AnisotropicLinearPlanarBase.py +72 -0
  274. rs3/properties/material/constitutiveModel/BarcelonaBasic.py +158 -0
  275. rs3/properties/material/constitutiveModel/BartonBandis.py +77 -0
  276. rs3/properties/material/constitutiveModel/BaseConstitutiveModel.py +11 -0
  277. rs3/properties/material/constitutiveModel/BoundingSurfacePlasticity.py +88 -0
  278. rs3/properties/material/constitutiveModel/CamClay.py +144 -0
  279. rs3/properties/material/constitutiveModel/ChSoil.py +111 -0
  280. rs3/properties/material/constitutiveModel/ConstitutiveModel.py +87 -0
  281. rs3/properties/material/constitutiveModel/CySoil.py +137 -0
  282. rs3/properties/material/constitutiveModel/DiscreteFunction.py +39 -0
  283. rs3/properties/material/constitutiveModel/DoubleYield.py +130 -0
  284. rs3/properties/material/constitutiveModel/DruckerPrager.py +136 -0
  285. rs3/properties/material/constitutiveModel/GeneralizedAnisotropic.py +39 -0
  286. rs3/properties/material/constitutiveModel/GeneralizedHoekBrown.py +226 -0
  287. rs3/properties/material/constitutiveModel/HardeningSoil.py +156 -0
  288. rs3/properties/material/constitutiveModel/HardeningSoilWithSmallStrain.py +170 -0
  289. rs3/properties/material/constitutiveModel/HoekBrown.py +125 -0
  290. rs3/properties/material/constitutiveModel/Hyperbolic.py +77 -0
  291. rs3/properties/material/constitutiveModel/JointedGeneralizedHoekBrown.py +184 -0
  292. rs3/properties/material/constitutiveModel/JointedMohrCoulomb.py +173 -0
  293. rs3/properties/material/constitutiveModel/ManzariAndDafalias.py +148 -0
  294. rs3/properties/material/constitutiveModel/ModifiedCamClay.py +11 -0
  295. rs3/properties/material/constitutiveModel/MohrCoulomb.py +147 -0
  296. rs3/properties/material/constitutiveModel/MohrCoulombUnsaturatedZoneCalculations.py +80 -0
  297. rs3/properties/material/constitutiveModel/MohrCoulombWithCap.py +154 -0
  298. rs3/properties/material/constitutiveModel/Norsand.py +146 -0
  299. rs3/properties/material/constitutiveModel/PowerCurve.py +119 -0
  300. rs3/properties/material/constitutiveModel/Shansep.py +214 -0
  301. rs3/properties/material/constitutiveModel/ShearNormalFunction.py +34 -0
  302. rs3/properties/material/constitutiveModel/SnowdenAnisotropicLinear.py +108 -0
  303. rs3/properties/material/constitutiveModel/SoftSoil.py +104 -0
  304. rs3/properties/material/constitutiveModel/SoftSoilCreep.py +111 -0
  305. rs3/properties/material/constitutiveModel/SofteningHardening.py +214 -0
  306. rs3/properties/material/constitutiveModel/SwellingRock.py +202 -0
  307. rs3/properties/material/constitutiveModel/UnsaturatedZoneCalculations.py +138 -0
  308. rs3/properties/material/constitutiveModel/VerticalStressRatio.py +113 -0
  309. rs3/properties/material/constitutiveModel/_PropertyAccessor.py +96 -0
  310. rs3/properties/material/constitutiveModel/__init__.py +0 -0
  311. rs3/properties/material/constitutiveModel/jointOption/BartonBandis.py +109 -0
  312. rs3/properties/material/constitutiveModel/jointOption/MaterialJoint.py +48 -0
  313. rs3/properties/material/constitutiveModel/jointOption/MaterialJointOptions.py +32 -0
  314. rs3/properties/material/constitutiveModel/jointOption/MohrCoulomb.py +142 -0
  315. rs3/properties/material/constitutiveModel/jointOption/PlaneOrientationBase.py +92 -0
  316. rs3/properties/material/constitutiveModel/jointOption/SimpleHyperbolic.py +112 -0
  317. rs3/properties/material/constitutiveModel/jointOption/_PropertyAccessor.py +61 -0
  318. rs3/properties/material/constitutiveModel/jointOption/__init__.py +0 -0
  319. rs3/properties/material/constitutiveModel/stiffness/BaseStiffness.py +11 -0
  320. rs3/properties/material/constitutiveModel/stiffness/DuncanChangHyperbolic.py +128 -0
  321. rs3/properties/material/constitutiveModel/stiffness/GeneralizedHoekBrownEstimation.py +50 -0
  322. rs3/properties/material/constitutiveModel/stiffness/LinearIsotropic.py +106 -0
  323. rs3/properties/material/constitutiveModel/stiffness/NonlinearIsotropic.py +104 -0
  324. rs3/properties/material/constitutiveModel/stiffness/Orthotropic.py +296 -0
  325. rs3/properties/material/constitutiveModel/stiffness/TransverselyIsotropic.py +186 -0
  326. rs3/properties/material/constitutiveModel/stiffness/_PropertyAccessor.py +33 -0
  327. rs3/properties/material/constitutiveModel/stiffness/__init__.py +0 -0
  328. rs3/properties/material/constitutiveModel/stiffness/formula/Formula1.py +96 -0
  329. rs3/properties/material/constitutiveModel/stiffness/formula/Formula2.py +136 -0
  330. rs3/properties/material/constitutiveModel/stiffness/formula/Formula3.py +113 -0
  331. rs3/properties/material/constitutiveModel/stiffness/formula/_PropertyAccessor.py +37 -0
  332. rs3/properties/material/constitutiveModel/stiffness/formula/__init__.py +0 -0
  333. rs3/properties/material/datum/CohesionDatumDependency.py +99 -0
  334. rs3/properties/material/datum/Datum.py +23 -0
  335. rs3/properties/material/datum/FrictionAngleDatumDependency.py +99 -0
  336. rs3/properties/material/datum/YoungsModulusDatumDependency.py +78 -0
  337. rs3/properties/material/datum/_PropertyAccessor.py +26 -0
  338. rs3/properties/material/datum/__init__.py +0 -0
  339. rs3/properties/material/hydraulic/FEAGroundwater/Brooks.py +71 -0
  340. rs3/properties/material/hydraulic/FEAGroundwater/Custom.py +79 -0
  341. rs3/properties/material/hydraulic/FEAGroundwater/FEAGroundwater.py +85 -0
  342. rs3/properties/material/hydraulic/FEAGroundwater/Fredlund.py +82 -0
  343. rs3/properties/material/hydraulic/FEAGroundwater/Gardner.py +72 -0
  344. rs3/properties/material/hydraulic/FEAGroundwater/HydraulicMethodVectors.py +97 -0
  345. rs3/properties/material/hydraulic/FEAGroundwater/HydraulicParametersCommon.py +157 -0
  346. rs3/properties/material/hydraulic/FEAGroundwater/Simple.py +37 -0
  347. rs3/properties/material/hydraulic/FEAGroundwater/VanGenuchten.py +94 -0
  348. rs3/properties/material/hydraulic/FEAGroundwater/_PropertyAccessor.py +16 -0
  349. rs3/properties/material/hydraulic/FEAGroundwater/__init__.py +0 -0
  350. rs3/properties/material/hydraulic/Hydraulic.py +111 -0
  351. rs3/properties/material/hydraulic/PhreaticConditions.py +37 -0
  352. rs3/properties/material/hydraulic/StaticGroundwater.py +100 -0
  353. rs3/properties/material/hydraulic/WaterConditions.py +110 -0
  354. rs3/properties/material/hydraulic/_PropertyAccessor.py +31 -0
  355. rs3/properties/material/hydraulic/__init__.py +0 -0
  356. rs3/properties/material/initialConditions/InitialConditions.py +108 -0
  357. rs3/properties/material/initialConditions/_PropertyAccessor.py +11 -0
  358. rs3/properties/material/initialConditions/__init__.py +0 -0
  359. rs3/properties/material/stageFactors/StageFactors.py +77 -0
  360. rs3/properties/material/stageFactors/_PropertyAccessor.py +7 -0
  361. rs3/properties/material/stageFactors/__init__.py +0 -0
  362. rs3/properties/pile/EndCondition.py +109 -0
  363. rs3/properties/pile/Linear.py +69 -0
  364. rs3/properties/pile/MohrCoulomb.py +123 -0
  365. rs3/properties/pile/MultiLinear.py +70 -0
  366. rs3/properties/pile/Pile.py +108 -0
  367. rs3/properties/pile/PileCommon.py +99 -0
  368. rs3/properties/pile/_PropertyAccessor.py +9 -0
  369. rs3/properties/pile/__init__.py +0 -0
  370. rs3/properties/stageFactors/IStageFactorBase.py +10 -0
  371. rs3/properties/stageFactors/StageFactorBaseInterfaces.py +24 -0
  372. rs3/properties/stageFactors/StageFactorInterfaces.py +70 -0
  373. rs3/properties/stageFactors/_StageFactorInterface.py +48 -0
  374. rs3/properties/stageFactors/_StageFactorPropertyAccessor.py +18 -0
  375. rs3/properties/stageFactors/__init__.py +0 -0
  376. rs3/results/BeamResults.py +181 -0
  377. rs3/results/BoltResults.py +214 -0
  378. rs3/results/CompositeLinerResults.py +374 -0
  379. rs3/results/JointResults.py +160 -0
  380. rs3/results/PileForepoleResults.py +219 -0
  381. rs3/results/ResultEnums.py +146 -0
  382. rs3/results/Results.py +661 -0
  383. rs3/results/ResultsCommon.py +66 -0
  384. rs3/results/SolidElementResults.py +175 -0
  385. rs3/results/SolidNodalResults.py +248 -0
  386. rs3/results/SolidResults.py +206 -0
  387. rs3/results/YieldedElement.py +33 -0
  388. rs3/results/__init__.py +0 -0
  389. rs3scripting-4.42.0.dist-info/METADATA +70 -0
  390. rs3scripting-4.42.0.dist-info/RECORD +393 -0
  391. rs3scripting-4.42.0.dist-info/WHEEL +5 -0
  392. rs3scripting-4.42.0.dist-info/licenses/License.txt +20 -0
  393. rs3scripting-4.42.0.dist-info/top_level.txt +1 -0
File without changes
@@ -0,0 +1,74 @@
1
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
2
+ import rs3.generatedFiles.CommonMessages_pb2 as CommonMessages_pb2
3
+ from rs3._client import Client
4
+ from rs3.properties.PropertyEnums import *
5
+ from rs3._proxyObject import _ProxyObject
6
+ from rs3.properties._PropertyAccessor import PropertyAccessor
7
+ from rs3.properties.material.initialConditions.InitialConditions import InitialConditions
8
+ from rs3.properties.material.constitutiveModel.ConstitutiveModel import ConstitutiveModel
9
+ from rs3.properties.material.hydraulic.Hydraulic import Hydraulic
10
+ from rs3.properties.material.datum.Datum import Datum
11
+ from rs3.properties.material.stageFactors.StageFactors import StageFactors
12
+ from rs3.ColorPicker import ColorPicker
13
+
14
+ class MaterialProperty(_ProxyObject):
15
+ """
16
+ Define material properties.
17
+
18
+ Attributes:
19
+ Standard (Standard): Reference object for modifying property.
20
+ Geosynthetic (Geosynthetic): Reference object for modifying property.
21
+ ReinforcedConcrete (ReinforcedConcrete): Reference object for modifying property.
22
+
23
+ Examples:
24
+ - :ref:`material_initial_conditions_example`.
25
+ - :ref:`material_constitutive_models_example`.
26
+ - :ref:`material_hydraulic_example`.
27
+ - :ref:`material_datum_example`.
28
+ - :ref:`material_stage_factors_example`.
29
+ """
30
+ def __init__(self, client : Client, materialID : str):
31
+ super().__init__(client, materialID)
32
+ self._materialDataService = MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel)
33
+ self._propertyAccessor = PropertyAccessor(client, materialID, self._materialDataService)
34
+ self.InitialConditions = InitialConditions(client, materialID)
35
+ self.ConstitutiveModel = ConstitutiveModel(client, materialID)
36
+ self.Hydraulic = Hydraulic(client, materialID)
37
+ self.Datum = Datum(client, materialID)
38
+ self.StageFactors = StageFactors(client, materialID)
39
+
40
+ def getMaterialName(self) -> str:
41
+ return self._propertyAccessor.getStringValue("Name")
42
+ def setMaterialName(self, name):
43
+ self._propertyAccessor.setStringValue("Name", name)
44
+ def setMaterialColor(self, *args):
45
+ """
46
+ Sets the RGBA color for the object.
47
+
48
+ Raises:
49
+ ValueError: If inputs are invalid or out of range.
50
+
51
+ Notes:
52
+ Accepted formats:
53
+ - setColor(red, green, blue)
54
+ - setColor(red, green, blue, alpha)
55
+ - setColor("#RRGGBB")
56
+ - setColor("#RRGGBBAA")
57
+ - setColor(ColorType.Rose)
58
+ - setColor(0xE1E4FF) # Integer COLORREF
59
+
60
+ """
61
+ color_bytes = ColorPicker._setColorValidation(*args)
62
+ request = CommonMessages_pb2.SetColorRequest(objectId=self._objectId, value=color_bytes)
63
+ self._client.callFunction(self._materialDataService.SetColorProperty, request)
64
+ def getMaterialColor(self) -> tuple[int, int, int, int]:
65
+ """
66
+ Retrieves the RGBA color of the object.
67
+
68
+ Returns:
69
+ tuple[int, int, int, int]: A tuple of four integers representing the red, green, blue, and alpha components of the object's color, each in the range [0, 255].
70
+ """
71
+ request = CommonMessages_pb2.GetColorRequest(objectId=self._objectId)
72
+ response : CommonMessages_pb2.GetColorResponse = self._client.callFunction(self._materialDataService.GetColorProperty, request)
73
+ red, green, blue, alpha = response.value
74
+ return red, green, blue, alpha
File without changes
@@ -0,0 +1,149 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor
4
+ from rs3._proxyObject import _ProxyObject
5
+ from rs3.properties.IPropertyGroupAccessors import IPropertyGroupAccessors
6
+ class AnisotropicLinearBase(_ProxyObject, IPropertyGroupAccessors):
7
+ def __init__(self, client: Client, id: str):
8
+ super().__init__(client, id)
9
+ self._propertyAccessor = PropertyAccessor(client, id)
10
+ def getUseTensileStrength(self) -> bool:
11
+ return self._propertyAccessor.getBoolValue("UseTensile")
12
+ def setUseTensileStrength(self, value: bool):
13
+ self._propertyAccessor.setBoolValue("UseTensile", value)
14
+ def getCohesion1(self) -> float:
15
+ return self._propertyAccessor.getDoubleProperty("Cohesion1")
16
+ def setCohesion1(self, value: float):
17
+ self._propertyAccessor.setDoubleProperty("Cohesion1", value)
18
+ def getCohesion2(self) -> float:
19
+ return self._propertyAccessor.getDoubleProperty("Cohesion2")
20
+ def setCohesion2(self, value: float):
21
+ self._propertyAccessor.setDoubleProperty("Cohesion2", value)
22
+ def getFrictionAngle1(self) -> float:
23
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle1")
24
+ def setFrictionAngle1(self, value: float):
25
+ self._propertyAccessor.setDoubleProperty("FrictionAngle1", value)
26
+ def getFrictionAngle2(self) -> float:
27
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle2")
28
+ def setFrictionAngle2(self, value: float):
29
+ self._propertyAccessor.setDoubleProperty("FrictionAngle2", value)
30
+ def getResidualCohesion1(self) -> float:
31
+ return self._propertyAccessor.getDoubleProperty("Cohesion1Residual")
32
+ def setResidualCohesion1(self, value: float):
33
+ self._propertyAccessor.setDoubleProperty("Cohesion1Residual", value)
34
+ def getResidualCohesion2(self) -> float:
35
+ return self._propertyAccessor.getDoubleProperty("Cohesion2Residual")
36
+ def setResidualCohesion2(self, value: float):
37
+ self._propertyAccessor.setDoubleProperty("Cohesion2Residual", value)
38
+ def getResidualFrictionAngle1(self) -> float:
39
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle1Residual")
40
+ def setResidualFrictionAngle1(self, value: float):
41
+ self._propertyAccessor.setDoubleProperty("FrictionAngle1Residual", value)
42
+ def getResidualFrictionAngle2(self) -> float:
43
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle2Residual")
44
+ def setResidualFrictionAngle2(self, value: float):
45
+ self._propertyAccessor.setDoubleProperty("FrictionAngle2Residual", value)
46
+ def getDilationAngle1(self) -> float:
47
+ return self._propertyAccessor.getDoubleProperty("DilationAngle1")
48
+ def setDilationAngle1(self, value: float):
49
+ self._propertyAccessor.setDoubleProperty("DilationAngle1", value)
50
+ def getDilationAngle2(self) -> float:
51
+ return self._propertyAccessor.getDoubleProperty("DilationAngle2")
52
+ def setDilationAngle2(self, value: float):
53
+ self._propertyAccessor.setDoubleProperty("DilationAngle2", value)
54
+ def getResidualTensileStrength(self) -> float:
55
+ return self._propertyAccessor.getDoubleProperty("TensileStrengthResidual")
56
+ def setResidualTensileStrength(self, value: float):
57
+ self._propertyAccessor.setDoubleProperty("TensileStrengthResidual", value)
58
+ def getA1Parameter(self) -> float:
59
+ return self._propertyAccessor.getDoubleProperty("A1Parameter")
60
+ def setA1Parameter(self, value: float):
61
+ self._propertyAccessor.setDoubleProperty("A1Parameter", value)
62
+ def getB1Parameter(self) -> float:
63
+ return self._propertyAccessor.getDoubleProperty("B1Parameter")
64
+ def setB1Parameter(self, value: float):
65
+ self._propertyAccessor.setDoubleProperty("B1Parameter", value)
66
+ def getTensileStrength(self) -> float:
67
+ return self._propertyAccessor.getDoubleProperty("PeakTensileStrength")
68
+ def setTensileStrength(self, value: float):
69
+ self._propertyAccessor.setDoubleProperty("PeakTensileStrength", value)
70
+ def getProperties(self):
71
+ return {
72
+ "UseTensileStrength": self.getUseTensileStrength(),
73
+ "Cohesion1": self.getCohesion1(),
74
+ "Cohesion2": self.getCohesion2(),
75
+ "FrictionAngle1": self.getFrictionAngle1(),
76
+ "FrictionAngle2": self.getFrictionAngle2(),
77
+ "ResidualCohesion1": self.getResidualCohesion1(),
78
+ "ResidualCohesion2": self.getResidualCohesion2(),
79
+ "ResidualFrictionAngle1": self.getResidualFrictionAngle1(),
80
+ "ResidualFrictionAngle2": self.getResidualFrictionAngle2(),
81
+ "DilationAngle1": self.getDilationAngle1(),
82
+ "DilationAngle2": self.getDilationAngle2(),
83
+ "ResidualTensileStrength": self.getResidualTensileStrength(),
84
+ "A1Parameter": self.getA1Parameter(),
85
+ "B1Parameter": self.getB1Parameter(),
86
+ "TensileStrength": self.getTensileStrength(),
87
+ }
88
+ def setProperties(self, UseTensileStrength: bool = None, Cohesion1: float = None, Cohesion2: float = None, FrictionAngle1: float = None, FrictionAngle2: float = None, ResidualCohesion1: float = None, ResidualCohesion2: float = None, ResidualFrictionAngle1: float = None, ResidualFrictionAngle2: float = None, DilationAngle1: float = None, DilationAngle2: float = None, ResidualTensileStrength: float = None, A1Parameter: float = None, B1Parameter: float = None, TensileStrength: float = None):
89
+ if UseTensileStrength is not None:
90
+ self.setUseTensileStrength(UseTensileStrength)
91
+ if Cohesion1 is not None:
92
+ self.setCohesion1(Cohesion1)
93
+ if Cohesion2 is not None:
94
+ self.setCohesion2(Cohesion2)
95
+ if FrictionAngle1 is not None:
96
+ self.setFrictionAngle1(FrictionAngle1)
97
+ if FrictionAngle2 is not None:
98
+ self.setFrictionAngle2(FrictionAngle2)
99
+ if ResidualCohesion1 is not None:
100
+ self.setResidualCohesion1(ResidualCohesion1)
101
+ if ResidualCohesion2 is not None:
102
+ self.setResidualCohesion2(ResidualCohesion2)
103
+ if ResidualFrictionAngle1 is not None:
104
+ self.setResidualFrictionAngle1(ResidualFrictionAngle1)
105
+ if ResidualFrictionAngle2 is not None:
106
+ self.setResidualFrictionAngle2(ResidualFrictionAngle2)
107
+ if DilationAngle1 is not None:
108
+ self.setDilationAngle1(DilationAngle1)
109
+ if DilationAngle2 is not None:
110
+ self.setDilationAngle2(DilationAngle2)
111
+ if ResidualTensileStrength is not None:
112
+ self.setResidualTensileStrength(ResidualTensileStrength)
113
+ if A1Parameter is not None:
114
+ self.setA1Parameter(A1Parameter)
115
+ if B1Parameter is not None:
116
+ self.setB1Parameter(B1Parameter)
117
+ if TensileStrength is not None:
118
+ self.setTensileStrength(TensileStrength)
119
+
120
+ ################ Code below this line will not be overridden ################
121
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
122
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
123
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
124
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
125
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
126
+ from rs3.properties.material.constitutiveModel.AnisotropicLinearPlanarBase import AnisotropicLinearPlanarBase
127
+ from rs3.properties.material.constitutiveModel.BaseConstitutiveModel import BaseConstitutiveModel
128
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
129
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
130
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
131
+ from rs3.properties.PropertyEnums import *
132
+ class AnisotropicLinear(AnisotropicLinearBase, AnisotropicLinearPlanarBase, BaseConstitutiveModel):
133
+ def __init__(self, client: Client, id: str):
134
+ super().__init__(client, id)
135
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, id, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
136
+ self.LinearIsotropicStiffness = LinearIsotropic(client, id)
137
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, id)
138
+ self.OrthotropicStiffness = Orthotropic(client, id)
139
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, id)
140
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, id)
141
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
142
+
143
+ def getAnisotropyDefinition(self) -> AnisotropyDefinitionType:
144
+ return self._propertyAccessor.getEnumValue("AnisotropyDefinition", AnisotropyDefinitionType)
145
+ def setAnisotropyDefinition(self, AnisotropyDefinition: AnisotropyDefinitionType):
146
+ return self._propertyAccessor.setEnumValue("AnisotropyDefinition", AnisotropyDefinition.value)
147
+
148
+
149
+
@@ -0,0 +1,72 @@
1
+ from rs3._proxyObject import _ProxyObject
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import MaterialStrengthAnisotropicLinearPlanarAccessor
4
+ import rs3.generatedFiles.MaterialStrengthService_pb2_grpc as MaterialStrengthService_pb2_grpc
5
+ import rs3.generatedFiles.MaterialStrengthService_pb2 as MaterialStrengthService_pb2
6
+ from rs3.properties.PropertyEnums import *
7
+
8
+ class AnisotropicLinearPlanarBase(_ProxyObject):
9
+ def __init__(self, client: Client, id: str):
10
+ super().__init__(client, id)
11
+ self._stub = MaterialStrengthService_pb2_grpc.MaterialStrengthServiceStub(client.channel)
12
+ self._anisotropicLinearPropertyAccessor = MaterialStrengthAnisotropicLinearPlanarAccessor(client, id)
13
+
14
+ def getPlanarDirectionDefinedBy(self) -> PlanarDirectionType:
15
+ return self._anisotropicLinearPropertyAccessor.getEnumValue("DirectionType", PlanarDirectionType)
16
+ def setPlanarDirectionDefinedBy(self, planarDirectionType: PlanarDirectionType):
17
+ return self._anisotropicLinearPropertyAccessor.setEnumValue("DirectionType", planarDirectionType.value)
18
+
19
+ def getNormalVector(self) -> tuple[float, float, float]:
20
+ """
21
+ Get the normal vector.
22
+
23
+ Returns
24
+ -------
25
+ tuple[float, float, float]
26
+ The normal direction defined as a 3D vector (nx, ny, nz),
27
+ representing the X, Y, and Z components in the global
28
+ coordinate system.
29
+ """
30
+ return self._anisotropicLinearPropertyAccessor.getVector3DValue("NormalDirection")
31
+ def setNormalVector(self, value : tuple[float, float, float]):
32
+ """
33
+ Set the normal vector.
34
+
35
+ Parameters
36
+ ----------
37
+ value : tuple[float, float, float]
38
+ A 3D vector (nx, ny, nz) representing the normal direction
39
+ in the global coordinate system.
40
+ """
41
+ self._anisotropicLinearPropertyAccessor.setVector3DValue("NormalDirection", value)
42
+
43
+ def getDip(self) -> float:
44
+ return self._anisotropicLinearPropertyAccessor.getDoubleProperty("Dip")
45
+ def setDip(self, value: float):
46
+ self._anisotropicLinearPropertyAccessor.setDoubleProperty("Dip", value)
47
+
48
+ def getDipDirection(self) -> float:
49
+ return self._anisotropicLinearPropertyAccessor.getDoubleProperty("DipDirection")
50
+ def setDipDirection(self, value: float):
51
+ self._anisotropicLinearPropertyAccessor.setDoubleProperty("DipDirection", value)
52
+
53
+ def getSurface(self) -> str:
54
+ """
55
+ Get defined anisotropic surface for this material.
56
+
57
+ Note:
58
+ At least one anisotropic surface needs to be defined to get anisotropy by surface.
59
+ """
60
+ request = MaterialStrengthService_pb2.GetAnisotropicSurfacePropertyRequest(objectId=self._objectId)
61
+ response : MaterialStrengthService_pb2.GetAnisotropicSurfacePropertyResponse = self._client.callFunction(self._stub.GetAnisotropicSurfaceProperty, request)
62
+ return response.surfaceName
63
+ def setSurface(self, value: str):
64
+ """
65
+ Set anisotropic surface for this material.
66
+
67
+ At least one anisotropic surface needs to be defined to define anisotropy by surface.
68
+ See Materials > Add Anisotropic Surface or Add Anisotropic Surface by Location for setting
69
+ anisotropic surfaces.
70
+ """
71
+ request = MaterialStrengthService_pb2.SetAnisotropicSurfacePropertyRequest(objectId=self._objectId, surfaceName=value)
72
+ self._client.callFunction(self._stub.SetAnisotropicSurfaceProperty, request)
@@ -0,0 +1,158 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import StiffnessPropertyAccessor, StrengthPropertyAccessor
4
+ from rs3._proxyObject import _ProxyObject
5
+ from rs3.properties.IPropertyGroupAccessors import IPropertyGroupAccessors
6
+ class BarcelonaBasicBase(_ProxyObject, IPropertyGroupAccessors):
7
+ def __init__(self, client: Client, id: str):
8
+ super().__init__(client, id)
9
+ self._stiffnessPropertyAccessor = StiffnessPropertyAccessor(client, id)
10
+ self._strengthPropertyAccessor = StrengthPropertyAccessor(client, id)
11
+ def getShearModulus(self) -> float:
12
+ return self._stiffnessPropertyAccessor.getDoubleProperty("ShearModulus")
13
+ def setShearModulus(self, value: float):
14
+ self._stiffnessPropertyAccessor.setDoubleProperty("ShearModulus", value)
15
+ def getPoissonsRatio(self) -> float:
16
+ return self._stiffnessPropertyAccessor.getDoubleProperty("PoissonsRatio")
17
+ def setPoissonsRatio(self, value: float):
18
+ self._stiffnessPropertyAccessor.setDoubleProperty("PoissonsRatio", value)
19
+ def getSlopeOfCriticalStateLines(self) -> float:
20
+ return self._strengthPropertyAccessor.getDoubleProperty("SlopeCritStateLines")
21
+ def setSlopeOfCriticalStateLines(self, value: float):
22
+ self._strengthPropertyAccessor.setDoubleProperty("SlopeCritStateLines", value)
23
+ def getIncludeTheEffectOfLodesAngle(self) -> bool:
24
+ return self._strengthPropertyAccessor.getBoolValue("IncludeLodesAngle")
25
+ def setIncludeTheEffectOfLodesAngle(self, value: bool):
26
+ self._strengthPropertyAccessor.setBoolValue("IncludeLodesAngle", value)
27
+ def getLambda(self) -> float:
28
+ return self._strengthPropertyAccessor.getDoubleProperty("Lambda")
29
+ def setLambda(self, value: float):
30
+ self._strengthPropertyAccessor.setDoubleProperty("Lambda", value)
31
+ def getKappa(self) -> float:
32
+ return self._strengthPropertyAccessor.getDoubleProperty("Kappa")
33
+ def setKappa(self, value: float):
34
+ self._strengthPropertyAccessor.setDoubleProperty("Kappa", value)
35
+ def getSpecificVolumeAtUnitPressure(self) -> float:
36
+ return self._strengthPropertyAccessor.getDoubleProperty("SpecificVolAtUnitPressure")
37
+ def setSpecificVolumeAtUnitPressure(self, value: float):
38
+ self._strengthPropertyAccessor.setDoubleProperty("SpecificVolAtUnitPressure", value)
39
+ def getOverConsolidationRatio(self) -> float:
40
+ return self._strengthPropertyAccessor.getDoubleProperty("OverConsolidationratio")
41
+ def setOverConsolidationRatio(self, value: float):
42
+ self._strengthPropertyAccessor.setDoubleProperty("OverConsolidationratio", value)
43
+ def getPreconsolidationPressure(self) -> float:
44
+ return self._strengthPropertyAccessor.getDoubleProperty("PreConsolidationPressure")
45
+ def setPreconsolidationPressure(self, value: float):
46
+ self._strengthPropertyAccessor.setDoubleProperty("PreConsolidationPressure", value)
47
+ def getAlfaFactor(self) -> float:
48
+ return self._strengthPropertyAccessor.getDoubleProperty("AlfaFactor")
49
+ def setAlfaFactor(self, value: float):
50
+ self._strengthPropertyAccessor.setDoubleProperty("AlfaFactor", value)
51
+ def getMinimumBulkModulus(self) -> float:
52
+ return self._strengthPropertyAccessor.getDoubleProperty("MinBulkModulus")
53
+ def setMinimumBulkModulus(self, value: float):
54
+ self._strengthPropertyAccessor.setDoubleProperty("MinBulkModulus", value)
55
+ def getKTensionSuction(self) -> float:
56
+ return self._strengthPropertyAccessor.getDoubleProperty("KTensionSuction")
57
+ def setKTensionSuction(self, value: float):
58
+ self._strengthPropertyAccessor.setDoubleProperty("KTensionSuction", value)
59
+ def getKappaSuction(self) -> float:
60
+ return self._strengthPropertyAccessor.getDoubleProperty("KappaSuction")
61
+ def setKappaSuction(self, value: float):
62
+ self._strengthPropertyAccessor.setDoubleProperty("KappaSuction", value)
63
+ def getRParameter(self) -> float:
64
+ return self._strengthPropertyAccessor.getDoubleProperty("RParameter")
65
+ def setRParameter(self, value: float):
66
+ self._strengthPropertyAccessor.setDoubleProperty("RParameter", value)
67
+ def getBetaParameter(self) -> float:
68
+ return self._strengthPropertyAccessor.getDoubleProperty("BetaParameter")
69
+ def setBetaParameter(self, value: float):
70
+ self._strengthPropertyAccessor.setDoubleProperty("BetaParameter", value)
71
+ def getReferenceMeanStress(self) -> float:
72
+ return self._strengthPropertyAccessor.getDoubleProperty("RefMeanStress")
73
+ def setReferenceMeanStress(self, value: float):
74
+ self._strengthPropertyAccessor.setDoubleProperty("RefMeanStress", value)
75
+ def getAtmosphericPressure(self) -> float:
76
+ return self._strengthPropertyAccessor.getDoubleProperty("AtmosphericPressure")
77
+ def setAtmosphericPressure(self, value: float):
78
+ self._strengthPropertyAccessor.setDoubleProperty("AtmosphericPressure", value)
79
+ def getAutoCalculateAlphaFactor(self) -> bool:
80
+ return self._strengthPropertyAccessor.getBoolValue("AutoCalcAlfaFactor")
81
+ def setAutoCalculateAlphaFactor(self, value: bool):
82
+ self._strengthPropertyAccessor.setBoolValue("AutoCalcAlfaFactor", value)
83
+ def getProperties(self):
84
+ return {
85
+ "ShearModulus": self.getShearModulus(),
86
+ "PoissonsRatio": self.getPoissonsRatio(),
87
+ "SlopeOfCriticalStateLines": self.getSlopeOfCriticalStateLines(),
88
+ "IncludeTheEffectOfLodesAngle": self.getIncludeTheEffectOfLodesAngle(),
89
+ "Lambda": self.getLambda(),
90
+ "Kappa": self.getKappa(),
91
+ "SpecificVolumeAtUnitPressure": self.getSpecificVolumeAtUnitPressure(),
92
+ "OverConsolidationRatio": self.getOverConsolidationRatio(),
93
+ "PreconsolidationPressure": self.getPreconsolidationPressure(),
94
+ "AlfaFactor": self.getAlfaFactor(),
95
+ "MinimumBulkModulus": self.getMinimumBulkModulus(),
96
+ "KTensionSuction": self.getKTensionSuction(),
97
+ "KappaSuction": self.getKappaSuction(),
98
+ "RParameter": self.getRParameter(),
99
+ "BetaParameter": self.getBetaParameter(),
100
+ "ReferenceMeanStress": self.getReferenceMeanStress(),
101
+ "AtmosphericPressure": self.getAtmosphericPressure(),
102
+ "AutoCalculateAlphaFactor": self.getAutoCalculateAlphaFactor(),
103
+ }
104
+ def setProperties(self, ShearModulus: float = None, PoissonsRatio: float = None, SlopeOfCriticalStateLines: float = None, IncludeTheEffectOfLodesAngle: bool = None, Lambda: float = None, Kappa: float = None, SpecificVolumeAtUnitPressure: float = None, OverConsolidationRatio: float = None, PreconsolidationPressure: float = None, AlfaFactor: float = None, MinimumBulkModulus: float = None, KTensionSuction: float = None, KappaSuction: float = None, RParameter: float = None, BetaParameter: float = None, ReferenceMeanStress: float = None, AtmosphericPressure: float = None, AutoCalculateAlphaFactor: bool = None):
105
+ if ShearModulus is not None:
106
+ self.setShearModulus(ShearModulus)
107
+ if PoissonsRatio is not None:
108
+ self.setPoissonsRatio(PoissonsRatio)
109
+ if SlopeOfCriticalStateLines is not None:
110
+ self.setSlopeOfCriticalStateLines(SlopeOfCriticalStateLines)
111
+ if IncludeTheEffectOfLodesAngle is not None:
112
+ self.setIncludeTheEffectOfLodesAngle(IncludeTheEffectOfLodesAngle)
113
+ if Lambda is not None:
114
+ self.setLambda(Lambda)
115
+ if Kappa is not None:
116
+ self.setKappa(Kappa)
117
+ if SpecificVolumeAtUnitPressure is not None:
118
+ self.setSpecificVolumeAtUnitPressure(SpecificVolumeAtUnitPressure)
119
+ if OverConsolidationRatio is not None:
120
+ self.setOverConsolidationRatio(OverConsolidationRatio)
121
+ if PreconsolidationPressure is not None:
122
+ self.setPreconsolidationPressure(PreconsolidationPressure)
123
+ if AlfaFactor is not None:
124
+ self.setAlfaFactor(AlfaFactor)
125
+ if MinimumBulkModulus is not None:
126
+ self.setMinimumBulkModulus(MinimumBulkModulus)
127
+ if KTensionSuction is not None:
128
+ self.setKTensionSuction(KTensionSuction)
129
+ if KappaSuction is not None:
130
+ self.setKappaSuction(KappaSuction)
131
+ if RParameter is not None:
132
+ self.setRParameter(RParameter)
133
+ if BetaParameter is not None:
134
+ self.setBetaParameter(BetaParameter)
135
+ if ReferenceMeanStress is not None:
136
+ self.setReferenceMeanStress(ReferenceMeanStress)
137
+ if AtmosphericPressure is not None:
138
+ self.setAtmosphericPressure(AtmosphericPressure)
139
+ if AutoCalculateAlphaFactor is not None:
140
+ self.setAutoCalculateAlphaFactor(AutoCalculateAlphaFactor)
141
+
142
+ ################ Code below this line will not be overridden ################
143
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
144
+ from rs3.properties.PropertyEnums import *
145
+ class BarcelonaBasic(BarcelonaBasicBase):
146
+ def __init__(self, client: Client, id: str):
147
+ super().__init__(client, id)
148
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
149
+
150
+ def getElasticParameters(self) -> ElasticParametersType:
151
+ return self._stiffnessPropertyAccessor.getEnumValue("ElasticParameters", ElasticParametersType)
152
+ def setElasticParameters(self, ElasticParameters: ElasticParametersType):
153
+ self._stiffnessPropertyAccessor.setEnumValue("ElasticParameters", ElasticParameters.value)
154
+
155
+ def getInitialStateOfConsolidation(self) -> InitialStateOfConsolidationType:
156
+ return self._strengthPropertyAccessor.getEnumValue("InitialStateOfConsolidation", InitialStateOfConsolidationType)
157
+ def setInitialStateOfConsolidation(self, InitialStateOfConsolidation: InitialStateOfConsolidationType):
158
+ return self._strengthPropertyAccessor.setEnumValue("InitialStateOfConsolidation", InitialStateOfConsolidation.value)
@@ -0,0 +1,77 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor
4
+ from rs3._proxyObject import _ProxyObject
5
+ from rs3.properties.IPropertyGroupAccessors import IPropertyGroupAccessors
6
+ class BartonBandisBase(_ProxyObject, IPropertyGroupAccessors):
7
+ def __init__(self, client: Client, id: str):
8
+ super().__init__(client, id)
9
+ self._propertyAccessor = PropertyAccessor(client, id)
10
+ def getPhiR(self) -> float:
11
+ return self._propertyAccessor.getDoubleProperty("PhiR")
12
+ def setPhiR(self, value: float):
13
+ self._propertyAccessor.setDoubleProperty("PhiR", value)
14
+ def getJRC(self) -> float:
15
+ return self._propertyAccessor.getDoubleProperty("JRC")
16
+ def setJRC(self, value: float):
17
+ self._propertyAccessor.setDoubleProperty("JRC", value)
18
+ def getJCS(self) -> float:
19
+ return self._propertyAccessor.getDoubleProperty("JCS")
20
+ def setJCS(self, value: float):
21
+ self._propertyAccessor.setDoubleProperty("JCS", value)
22
+ def getDilationAngle(self) -> float:
23
+ return self._propertyAccessor.getDoubleProperty("DilationAngle")
24
+ def setDilationAngle(self, value: float):
25
+ self._propertyAccessor.setDoubleProperty("DilationAngle", value)
26
+ def getResidualStrength(self) -> bool:
27
+ return self._propertyAccessor.getBoolValue("ResidualStrength")
28
+ def setResidualStrength(self, value: bool):
29
+ self._propertyAccessor.setBoolValue("ResidualStrength", value)
30
+ def getApplySSRShearStrengthReduction(self) -> bool:
31
+ return self._propertyAccessor.getBoolValue("UseSSR")
32
+ def setApplySSRShearStrengthReduction(self, value: bool):
33
+ self._propertyAccessor.setBoolValue("UseSSR", value)
34
+ def getProperties(self):
35
+ return {
36
+ "PhiR": self.getPhiR(),
37
+ "JRC": self.getJRC(),
38
+ "JCS": self.getJCS(),
39
+ "DilationAngle": self.getDilationAngle(),
40
+ "ResidualStrength": self.getResidualStrength(),
41
+ "ApplySSRShearStrengthReduction": self.getApplySSRShearStrengthReduction(),
42
+ }
43
+ def setProperties(self, PhiR: float = None, JRC: float = None, JCS: float = None, DilationAngle: float = None, ResidualStrength: bool = None, ApplySSRShearStrengthReduction: bool = None):
44
+ if PhiR is not None:
45
+ self.setPhiR(PhiR)
46
+ if JRC is not None:
47
+ self.setJRC(JRC)
48
+ if JCS is not None:
49
+ self.setJCS(JCS)
50
+ if DilationAngle is not None:
51
+ self.setDilationAngle(DilationAngle)
52
+ if ResidualStrength is not None:
53
+ self.setResidualStrength(ResidualStrength)
54
+ if ApplySSRShearStrengthReduction is not None:
55
+ self.setApplySSRShearStrengthReduction(ApplySSRShearStrengthReduction)
56
+
57
+ ################ Code below this line will not be overridden ################
58
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
59
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
60
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
61
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
62
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
63
+ from rs3.properties.material.constitutiveModel.BaseConstitutiveModel import BaseConstitutiveModel
64
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
65
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
66
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
67
+ from rs3.properties.PropertyEnums import *
68
+ class BartonBandis(BartonBandisBase, BaseConstitutiveModel):
69
+ def __init__(self, client: Client, id: str):
70
+ super().__init__(client, id)
71
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, id, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
72
+ self.LinearIsotropicStiffness = LinearIsotropic(client, id)
73
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, id)
74
+ self.OrthotropicStiffness = Orthotropic(client, id)
75
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, id)
76
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, id)
77
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
@@ -0,0 +1,11 @@
1
+ from rs3.properties.PropertyEnums import *
2
+ class BaseConstitutiveModel():
3
+ def getElasticType(self) -> MaterialElasticityTypes:
4
+ return self._stiffnessPropertyAccessor.getEnumValue("StiffnessType", MaterialElasticityTypes)
5
+ def setElasticType(self, StiffnessType : MaterialElasticityTypes):
6
+ self._stiffnessPropertyAccessor.setEnumValue("StiffnessType", StiffnessType.value)
7
+
8
+ def getMaterialType(self) -> MaterialType:
9
+ return MaterialType(self._propertyAccessor.getBoolValue("IsPlastic"))
10
+ def setMaterialType(self, materialType: MaterialType):
11
+ return self._propertyAccessor.setBoolValue("IsPlastic", materialType.value)
@@ -0,0 +1,88 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor
4
+ from rs3._proxyObject import _ProxyObject
5
+ from rs3.properties.IPropertyGroupAccessors import IPropertyGroupAccessors
6
+ class BoundingSurfacePlasticityBase(_ProxyObject, IPropertyGroupAccessors):
7
+ def __init__(self, client: Client, id: str):
8
+ super().__init__(client, id)
9
+ self._propertyAccessor = PropertyAccessor(client, id)
10
+ def getCriticalFrictionAngleZeroDilation(self) -> float:
11
+ return self._propertyAccessor.getDoubleProperty("CriticalFrictionAngle")
12
+ def setCriticalFrictionAngleZeroDilation(self, value: float):
13
+ self._propertyAccessor.setDoubleProperty("CriticalFrictionAngle", value)
14
+ def getHardeningProperty(self) -> float:
15
+ return self._propertyAccessor.getDoubleProperty("HardeningProperty")
16
+ def setHardeningProperty(self, value: float):
17
+ self._propertyAccessor.setDoubleProperty("HardeningProperty", value)
18
+ def getUnloadingToLoadingPlasticModulusRatio(self) -> float:
19
+ return self._propertyAccessor.getDoubleProperty("UnloadLoadPlasticModRatio")
20
+ def setUnloadingToLoadingPlasticModulusRatio(self, value: float):
21
+ self._propertyAccessor.setDoubleProperty("UnloadLoadPlasticModRatio", value)
22
+ def getPowerTerm(self) -> float:
23
+ return self._propertyAccessor.getDoubleProperty("PowerTerm")
24
+ def setPowerTerm(self, value: float):
25
+ self._propertyAccessor.setDoubleProperty("PowerTerm", value)
26
+ def getTensileStrength(self) -> float:
27
+ return self._propertyAccessor.getDoubleProperty("TensileStrength")
28
+ def setTensileStrength(self, value: float):
29
+ self._propertyAccessor.setDoubleProperty("TensileStrength", value)
30
+ def getFrictionAngle(self) -> float:
31
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle")
32
+ def setFrictionAngle(self, value: float):
33
+ self._propertyAccessor.setDoubleProperty("FrictionAngle", value)
34
+ def getCohesion(self) -> float:
35
+ return self._propertyAccessor.getDoubleProperty("Cohesion")
36
+ def setCohesion(self, value: float):
37
+ self._propertyAccessor.setDoubleProperty("Cohesion", value)
38
+ def getProperties(self):
39
+ return {
40
+ "CriticalFrictionAngleZeroDilation": self.getCriticalFrictionAngleZeroDilation(),
41
+ "HardeningProperty": self.getHardeningProperty(),
42
+ "UnloadingToLoadingPlasticModulusRatio": self.getUnloadingToLoadingPlasticModulusRatio(),
43
+ "PowerTerm": self.getPowerTerm(),
44
+ "TensileStrength": self.getTensileStrength(),
45
+ "FrictionAngle": self.getFrictionAngle(),
46
+ "Cohesion": self.getCohesion(),
47
+ }
48
+ def setProperties(self, CriticalFrictionAngleZeroDilation: float = None, HardeningProperty: float = None, UnloadingToLoadingPlasticModulusRatio: float = None, PowerTerm: float = None, TensileStrength: float = None, FrictionAngle: float = None, Cohesion: float = None):
49
+ if CriticalFrictionAngleZeroDilation is not None:
50
+ self.setCriticalFrictionAngleZeroDilation(CriticalFrictionAngleZeroDilation)
51
+ if HardeningProperty is not None:
52
+ self.setHardeningProperty(HardeningProperty)
53
+ if UnloadingToLoadingPlasticModulusRatio is not None:
54
+ self.setUnloadingToLoadingPlasticModulusRatio(UnloadingToLoadingPlasticModulusRatio)
55
+ if PowerTerm is not None:
56
+ self.setPowerTerm(PowerTerm)
57
+ if TensileStrength is not None:
58
+ self.setTensileStrength(TensileStrength)
59
+ if FrictionAngle is not None:
60
+ self.setFrictionAngle(FrictionAngle)
61
+ if Cohesion is not None:
62
+ self.setCohesion(Cohesion)
63
+
64
+ ################ Code below this line will not be overridden ################
65
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
66
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
67
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
68
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
69
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
70
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
71
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
72
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
73
+ from rs3.properties.PropertyEnums import *
74
+ class BoundingSurfacePlasticity(BoundingSurfacePlasticityBase):
75
+ def __init__(self, client: Client, id: str):
76
+ super().__init__(client, id)
77
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, id, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
78
+ self.LinearIsotropicStiffness = LinearIsotropic(client, id)
79
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, id)
80
+ self.OrthotropicStiffness = Orthotropic(client, id)
81
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, id)
82
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, id)
83
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
84
+
85
+ def getElasticType(self) -> MaterialElasticityTypes:
86
+ return self._stiffnessPropertyAccessor.getEnumValue("StiffnessType", MaterialElasticityTypes)
87
+ def setElasticType(self, StiffnessType : MaterialElasticityTypes):
88
+ self._stiffnessPropertyAccessor.setEnumValue("StiffnessType", StiffnessType.value)