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
@@ -0,0 +1,34 @@
1
+ from rs3._client import Client
2
+ from rs3.properties.PropertyEnums import *
3
+ from rs3._proxyObject import _ProxyObject
4
+ from ._PropertyAccessor import MaterialStrengthFunctionPropertyAccessor
5
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
6
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
7
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
8
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
9
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
10
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
11
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
12
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
13
+
14
+ class ShearNormalFunction(_ProxyObject):
15
+ def __init__(self, client : Client, materialID : str):
16
+ super().__init__(client, materialID)
17
+ self._propertyAccessor = MaterialStrengthFunctionPropertyAccessor(client, materialID)
18
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, materialID, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
19
+ self.LinearIsotropicStiffness = LinearIsotropic(client, materialID)
20
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, materialID)
21
+ self.OrthotropicStiffness = Orthotropic(client, materialID)
22
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, materialID)
23
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, materialID)
24
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, materialID)
25
+
26
+ def getElasticType(self) -> MaterialElasticityTypes:
27
+ return self._stiffnessPropertyAccessor.getEnumValue("StiffnessType", MaterialElasticityTypes)
28
+ def setElasticType(self, StiffnessType : MaterialElasticityTypes):
29
+ self._stiffnessPropertyAccessor.setEnumValue("StiffnessType", StiffnessType.value)
30
+
31
+ def getShearNormalFunctionName(self) -> str:
32
+ return self._propertyAccessor.getSelectedFunctionProperty(ConstitutiveModelTypes.SHEAR_NORMAL_FUNCTION, "SelectedFunctionID")
33
+ def setShearNormalFunctionByName(self, name: str):
34
+ self._propertyAccessor.setSelectedFunctionProperty(ConstitutiveModelTypes.SHEAR_NORMAL_FUNCTION, "SelectedFunctionID", name)
@@ -0,0 +1,108 @@
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 SnowdenAnisotropicLinearBase(_ProxyObject, IPropertyGroupAccessors):
7
+ def __init__(self, client: Client, id: str):
8
+ super().__init__(client, id)
9
+ self._propertyAccessor = PropertyAccessor(client, id)
10
+ def getA1Parameter(self) -> float:
11
+ return self._propertyAccessor.getDoubleProperty("A1Parameter")
12
+ def setA1Parameter(self, value: float):
13
+ self._propertyAccessor.setDoubleProperty("A1Parameter", value)
14
+ def getA2Parameter(self) -> float:
15
+ return self._propertyAccessor.getDoubleProperty("A2Parameter")
16
+ def setA2Parameter(self, value: float):
17
+ self._propertyAccessor.setDoubleProperty("A2Parameter", value)
18
+ def getB1Parameter(self) -> float:
19
+ return self._propertyAccessor.getDoubleProperty("B1Parameter")
20
+ def setB1Parameter(self, value: float):
21
+ self._propertyAccessor.setDoubleProperty("B1Parameter", value)
22
+ def getB2Parameter(self) -> float:
23
+ return self._propertyAccessor.getDoubleProperty("B2Parameter")
24
+ def setB2Parameter(self, value: float):
25
+ self._propertyAccessor.setDoubleProperty("B2Parameter", value)
26
+ def getApplySSRShearStrengthReduction(self) -> bool:
27
+ return self._propertyAccessor.getBoolValue("UseSSR")
28
+ def setApplySSRShearStrengthReduction(self, value: bool):
29
+ self._propertyAccessor.setBoolValue("UseSSR", value)
30
+ def getProperties(self):
31
+ return {
32
+ "A1Parameter": self.getA1Parameter(),
33
+ "A2Parameter": self.getA2Parameter(),
34
+ "B1Parameter": self.getB1Parameter(),
35
+ "B2Parameter": self.getB2Parameter(),
36
+ "ApplySSRShearStrengthReduction": self.getApplySSRShearStrengthReduction(),
37
+ }
38
+ def setProperties(self, A1Parameter: float = None, A2Parameter: float = None, B1Parameter: float = None, B2Parameter: float = None, ApplySSRShearStrengthReduction: bool = None):
39
+ if A1Parameter is not None:
40
+ self.setA1Parameter(A1Parameter)
41
+ if A2Parameter is not None:
42
+ self.setA2Parameter(A2Parameter)
43
+ if B1Parameter is not None:
44
+ self.setB1Parameter(B1Parameter)
45
+ if B2Parameter is not None:
46
+ self.setB2Parameter(B2Parameter)
47
+ if ApplySSRShearStrengthReduction is not None:
48
+ self.setApplySSRShearStrengthReduction(ApplySSRShearStrengthReduction)
49
+
50
+ ################ Code below this line will not be overridden ################
51
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
52
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
53
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
54
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
55
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
56
+ from rs3.properties.material.constitutiveModel.BaseConstitutiveModel import BaseConstitutiveModel
57
+ from rs3.properties.material.constitutiveModel.AnisotropicLinearPlanarBase import AnisotropicLinearPlanarBase
58
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
59
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
60
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
61
+ from rs3.properties.SnowdenStrengthFunction import SnowdenStrengthFunction
62
+ from rs3.properties.PropertyEnums import *
63
+ class SnowdenAnisotropicLinear(SnowdenAnisotropicLinearBase, AnisotropicLinearPlanarBase, BaseConstitutiveModel):
64
+ def __init__(self, client: Client, id: str):
65
+ super().__init__(client, id)
66
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, id, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
67
+ self.LinearIsotropicStiffness = LinearIsotropic(client, id)
68
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, id)
69
+ self.OrthotropicStiffness = Orthotropic(client, id)
70
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, id)
71
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, id)
72
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
73
+
74
+ def getAnisotropyDefinition(self) -> AnisotropyDefinitionType:
75
+ return self._propertyAccessor.getEnumValue("AnisotropyDefinition", AnisotropyDefinitionType)
76
+ def setAnisotropyDefinition(self, AnisotropyDefinition: AnisotropyDefinitionType):
77
+ return self._propertyAccessor.setEnumValue("AnisotropyDefinition", AnisotropyDefinition.value)
78
+
79
+ def getBeddingStrengthFunction(self) -> SnowdenStrengthFunction:
80
+ """
81
+ Get the bedding strength functionn object which contains function type, dilation ratio, peak tensile strength and data points.
82
+
83
+ Returns:
84
+ A SnowdenStrengthFunction object.
85
+
86
+ Example:
87
+ >>> material = model.getAllMaterialProperties()[0]
88
+ >>> beddingStrengthFunction = material.ConstitutiveModel.SnowdenAnisotropicLinear.getBeddingStrengthFunction()
89
+ >>> beddingStrengthFunction.setFunctionType(SnowdenStrengthFunctionType.SHEAR_NORMAL)
90
+
91
+ """
92
+ return SnowdenStrengthFunction(self._client, self._objectId, True)
93
+
94
+ def getRockMassStrengthFunction(self) -> SnowdenStrengthFunction:
95
+ """
96
+ Get the rock mass functionn object which contains function type, dilation ratio, peak tensile strength and data points.
97
+
98
+ Returns:
99
+ A SnowdenStrengthFunction object.
100
+
101
+ Example:
102
+ >>> material = model.getAllMaterialProperties()[0]
103
+ >>> rockMassStrengthFunction = material.ConstitutiveModel.SnowdenAnisotropicLinear.getRockMassStrengthFunction()
104
+ >>> rockMassStrengthFunction.setFunctionType(SnowdenStrengthFunctionType.COHESION_FRICTION)
105
+
106
+ """
107
+ return SnowdenStrengthFunction(self._client, self._objectId, False)
108
+
@@ -0,0 +1,104 @@
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 SoftSoilBase(_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 getPoissonsRatio(self) -> float:
12
+ return self._stiffnessPropertyAccessor.getDoubleProperty("PoissonsRatio")
13
+ def setPoissonsRatio(self, value: float):
14
+ self._stiffnessPropertyAccessor.setDoubleProperty("PoissonsRatio", value)
15
+ def getPLimit(self) -> float:
16
+ return self._stiffnessPropertyAccessor.getDoubleProperty("PLimit")
17
+ def setPLimit(self, value: float):
18
+ self._stiffnessPropertyAccessor.setDoubleProperty("PLimit", value)
19
+ def getLambda(self) -> float:
20
+ return self._strengthPropertyAccessor.getDoubleProperty("Lambda")
21
+ def setLambda(self, value: float):
22
+ self._strengthPropertyAccessor.setDoubleProperty("Lambda", value)
23
+ def getKappa(self) -> float:
24
+ return self._strengthPropertyAccessor.getDoubleProperty("Kappa")
25
+ def setKappa(self, value: float):
26
+ self._strengthPropertyAccessor.setDoubleProperty("Kappa", value)
27
+ def getK0NormalConsolidation(self) -> float:
28
+ return self._strengthPropertyAccessor.getDoubleProperty("K0NormalConsolidation")
29
+ def setK0NormalConsolidation(self, value: float):
30
+ self._strengthPropertyAccessor.setDoubleProperty("K0NormalConsolidation", value)
31
+ def getOCRStress(self) -> float:
32
+ return self._strengthPropertyAccessor.getDoubleProperty("OcrStress")
33
+ def setOCRStress(self, value: float):
34
+ self._strengthPropertyAccessor.setDoubleProperty("OcrStress", value)
35
+ def getInitialMeanStress(self) -> float:
36
+ return self._strengthPropertyAccessor.getDoubleProperty("InitialMeanStress")
37
+ def setInitialMeanStress(self, value: float):
38
+ self._strengthPropertyAccessor.setDoubleProperty("InitialMeanStress", value)
39
+ def getDilationAngle(self) -> float:
40
+ return self._strengthPropertyAccessor.getDoubleProperty("DilationAngle")
41
+ def setDilationAngle(self, value: float):
42
+ self._strengthPropertyAccessor.setDoubleProperty("DilationAngle", value)
43
+ def getFrictionAngle(self) -> float:
44
+ return self._strengthPropertyAccessor.getDoubleProperty("FrictionAngle")
45
+ def setFrictionAngle(self, value: float):
46
+ self._strengthPropertyAccessor.setDoubleProperty("FrictionAngle", value)
47
+ def getCohesion(self) -> float:
48
+ return self._strengthPropertyAccessor.getDoubleProperty("Cohesion")
49
+ def setCohesion(self, value: float):
50
+ self._strengthPropertyAccessor.setDoubleProperty("Cohesion", value)
51
+ def getTensileStrength(self) -> float:
52
+ return self._strengthPropertyAccessor.getDoubleProperty("TensileStrength")
53
+ def setTensileStrength(self, value: float):
54
+ self._strengthPropertyAccessor.setDoubleProperty("TensileStrength", value)
55
+ def getProperties(self):
56
+ return {
57
+ "PoissonsRatio": self.getPoissonsRatio(),
58
+ "PLimit": self.getPLimit(),
59
+ "Lambda": self.getLambda(),
60
+ "Kappa": self.getKappa(),
61
+ "K0NormalConsolidation": self.getK0NormalConsolidation(),
62
+ "OCRStress": self.getOCRStress(),
63
+ "InitialMeanStress": self.getInitialMeanStress(),
64
+ "DilationAngle": self.getDilationAngle(),
65
+ "FrictionAngle": self.getFrictionAngle(),
66
+ "Cohesion": self.getCohesion(),
67
+ "TensileStrength": self.getTensileStrength(),
68
+ }
69
+ def setProperties(self, PoissonsRatio: float = None, PLimit: float = None, Lambda: float = None, Kappa: float = None, K0NormalConsolidation: float = None, OCRStress: float = None, InitialMeanStress: float = None, DilationAngle: float = None, FrictionAngle: float = None, Cohesion: float = None, TensileStrength: float = None):
70
+ if PoissonsRatio is not None:
71
+ self.setPoissonsRatio(PoissonsRatio)
72
+ if PLimit is not None:
73
+ self.setPLimit(PLimit)
74
+ if Lambda is not None:
75
+ self.setLambda(Lambda)
76
+ if Kappa is not None:
77
+ self.setKappa(Kappa)
78
+ if K0NormalConsolidation is not None:
79
+ self.setK0NormalConsolidation(K0NormalConsolidation)
80
+ if OCRStress is not None:
81
+ self.setOCRStress(OCRStress)
82
+ if InitialMeanStress is not None:
83
+ self.setInitialMeanStress(InitialMeanStress)
84
+ if DilationAngle is not None:
85
+ self.setDilationAngle(DilationAngle)
86
+ if FrictionAngle is not None:
87
+ self.setFrictionAngle(FrictionAngle)
88
+ if Cohesion is not None:
89
+ self.setCohesion(Cohesion)
90
+ if TensileStrength is not None:
91
+ self.setTensileStrength(TensileStrength)
92
+
93
+ ################ Code below this line will not be overridden ################
94
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
95
+ from rs3.properties.PropertyEnums import *
96
+ class SoftSoil(SoftSoilBase):
97
+ def __init__(self, client: Client, id: str):
98
+ super().__init__(client, id)
99
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
100
+
101
+ def getInitialConsolidationCondition(self) -> InitialConsolidationConditionType:
102
+ return self._strengthPropertyAccessor.getEnumValue("InitialConsolidationCondition", InitialConsolidationConditionType)
103
+ def setInitialConsolidationCondition(self, InitialConsolidationCondition: InitialConsolidationConditionType):
104
+ return self._strengthPropertyAccessor.setEnumValue("InitialConsolidationCondition", InitialConsolidationCondition.value)
@@ -0,0 +1,111 @@
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 SoftSoilCreepBase(_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 getPoissonsRatio(self) -> float:
12
+ return self._stiffnessPropertyAccessor.getDoubleProperty("PoissonsRatio")
13
+ def setPoissonsRatio(self, value: float):
14
+ self._stiffnessPropertyAccessor.setDoubleProperty("PoissonsRatio", value)
15
+ def getPLimit(self) -> float:
16
+ return self._stiffnessPropertyAccessor.getDoubleProperty("PLimit")
17
+ def setPLimit(self, value: float):
18
+ self._stiffnessPropertyAccessor.setDoubleProperty("PLimit", value)
19
+ def getMu(self) -> float:
20
+ return self._strengthPropertyAccessor.getDoubleProperty("Mu")
21
+ def setMu(self, value: float):
22
+ self._strengthPropertyAccessor.setDoubleProperty("Mu", value)
23
+ def getLambda(self) -> float:
24
+ return self._strengthPropertyAccessor.getDoubleProperty("Lambda")
25
+ def setLambda(self, value: float):
26
+ self._strengthPropertyAccessor.setDoubleProperty("Lambda", value)
27
+ def getKappa(self) -> float:
28
+ return self._strengthPropertyAccessor.getDoubleProperty("Kappa")
29
+ def setKappa(self, value: float):
30
+ self._strengthPropertyAccessor.setDoubleProperty("Kappa", value)
31
+ def getK0NormalConsolidation(self) -> float:
32
+ return self._strengthPropertyAccessor.getDoubleProperty("K0NormalConsolidation")
33
+ def setK0NormalConsolidation(self, value: float):
34
+ self._strengthPropertyAccessor.setDoubleProperty("K0NormalConsolidation", value)
35
+ def getOCRStress(self) -> float:
36
+ return self._strengthPropertyAccessor.getDoubleProperty("OcrStress")
37
+ def setOCRStress(self, value: float):
38
+ self._strengthPropertyAccessor.setDoubleProperty("OcrStress", value)
39
+ def getInitialMeanStress(self) -> float:
40
+ return self._strengthPropertyAccessor.getDoubleProperty("InitialMeanStress")
41
+ def setInitialMeanStress(self, value: float):
42
+ self._strengthPropertyAccessor.setDoubleProperty("InitialMeanStress", value)
43
+ def getDilationAngle(self) -> float:
44
+ return self._strengthPropertyAccessor.getDoubleProperty("DilationAngle")
45
+ def setDilationAngle(self, value: float):
46
+ self._strengthPropertyAccessor.setDoubleProperty("DilationAngle", value)
47
+ def getFrictionAngle(self) -> float:
48
+ return self._strengthPropertyAccessor.getDoubleProperty("FrictionAngle")
49
+ def setFrictionAngle(self, value: float):
50
+ self._strengthPropertyAccessor.setDoubleProperty("FrictionAngle", value)
51
+ def getCohesion(self) -> float:
52
+ return self._strengthPropertyAccessor.getDoubleProperty("Cohesion")
53
+ def setCohesion(self, value: float):
54
+ self._strengthPropertyAccessor.setDoubleProperty("Cohesion", value)
55
+ def getTensileStrength(self) -> float:
56
+ return self._strengthPropertyAccessor.getDoubleProperty("TensileStrength")
57
+ def setTensileStrength(self, value: float):
58
+ self._strengthPropertyAccessor.setDoubleProperty("TensileStrength", value)
59
+ def getProperties(self):
60
+ return {
61
+ "PoissonsRatio": self.getPoissonsRatio(),
62
+ "PLimit": self.getPLimit(),
63
+ "Mu": self.getMu(),
64
+ "Lambda": self.getLambda(),
65
+ "Kappa": self.getKappa(),
66
+ "K0NormalConsolidation": self.getK0NormalConsolidation(),
67
+ "OCRStress": self.getOCRStress(),
68
+ "InitialMeanStress": self.getInitialMeanStress(),
69
+ "DilationAngle": self.getDilationAngle(),
70
+ "FrictionAngle": self.getFrictionAngle(),
71
+ "Cohesion": self.getCohesion(),
72
+ "TensileStrength": self.getTensileStrength(),
73
+ }
74
+ def setProperties(self, PoissonsRatio: float = None, PLimit: float = None, Mu: float = None, Lambda: float = None, Kappa: float = None, K0NormalConsolidation: float = None, OCRStress: float = None, InitialMeanStress: float = None, DilationAngle: float = None, FrictionAngle: float = None, Cohesion: float = None, TensileStrength: float = None):
75
+ if PoissonsRatio is not None:
76
+ self.setPoissonsRatio(PoissonsRatio)
77
+ if PLimit is not None:
78
+ self.setPLimit(PLimit)
79
+ if Mu is not None:
80
+ self.setMu(Mu)
81
+ if Lambda is not None:
82
+ self.setLambda(Lambda)
83
+ if Kappa is not None:
84
+ self.setKappa(Kappa)
85
+ if K0NormalConsolidation is not None:
86
+ self.setK0NormalConsolidation(K0NormalConsolidation)
87
+ if OCRStress is not None:
88
+ self.setOCRStress(OCRStress)
89
+ if InitialMeanStress is not None:
90
+ self.setInitialMeanStress(InitialMeanStress)
91
+ if DilationAngle is not None:
92
+ self.setDilationAngle(DilationAngle)
93
+ if FrictionAngle is not None:
94
+ self.setFrictionAngle(FrictionAngle)
95
+ if Cohesion is not None:
96
+ self.setCohesion(Cohesion)
97
+ if TensileStrength is not None:
98
+ self.setTensileStrength(TensileStrength)
99
+
100
+ ################ Code below this line will not be overridden ################
101
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
102
+ from rs3.properties.PropertyEnums import *
103
+ class SoftSoilCreep(SoftSoilCreepBase):
104
+ def __init__(self, client: Client, id: str):
105
+ super().__init__(client, id)
106
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
107
+
108
+ def getInitialConsolidationCondition(self) -> InitialConsolidationConditionType:
109
+ return self._strengthPropertyAccessor.getEnumValue("InitialConsolidationCondition", InitialConsolidationConditionType)
110
+ def setInitialConsolidationCondition(self, InitialConsolidationCondition: InitialConsolidationConditionType):
111
+ return self._strengthPropertyAccessor.setEnumValue("InitialConsolidationCondition", InitialConsolidationCondition.value)
@@ -0,0 +1,214 @@
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
+ from rs3.properties.stageFactors.IStageFactorBase import IStageFactorBase
7
+ import rs3.generatedFiles.StrengthStageFactorService_pb2_grpc as StrengthStageFactorService_pb2_grpc
8
+ class SofteningHardeningBase(_ProxyObject, IPropertyGroupAccessors):
9
+ def __init__(self, client: Client, id: str):
10
+ super().__init__(client, id)
11
+ self._propertyAccessor = PropertyAccessor(client, id)
12
+ def getInitialMeanStress(self) -> float:
13
+ return self._propertyAccessor.getDoubleProperty("InitialMeanStress")
14
+ def setInitialMeanStress(self, value: float):
15
+ self._propertyAccessor.setDoubleProperty("InitialMeanStress", value)
16
+ def getLambdaKappa(self) -> float:
17
+ return self._propertyAccessor.getDoubleProperty("LambdaKappa")
18
+ def setLambdaKappa(self, value: float):
19
+ self._propertyAccessor.setDoubleProperty("LambdaKappa", value)
20
+ def getDilationAngle(self) -> float:
21
+ return self._propertyAccessor.getDoubleProperty("DilationAngle")
22
+ def setDilationAngle(self, value: float):
23
+ self._propertyAccessor.setDoubleProperty("DilationAngle", value)
24
+ def getHardeningProperty(self) -> float:
25
+ return self._propertyAccessor.getDoubleProperty("HardeningProperty")
26
+ def setHardeningProperty(self, value: float):
27
+ self._propertyAccessor.setDoubleProperty("HardeningProperty", value)
28
+ def getFrictionAngle(self) -> float:
29
+ return self._propertyAccessor.getDoubleProperty("FrictionAngle")
30
+ def setFrictionAngle(self, value: float):
31
+ self._propertyAccessor.setDoubleProperty("FrictionAngle", value)
32
+ def getCohesion(self) -> float:
33
+ return self._propertyAccessor.getDoubleProperty("Cohesion")
34
+ def setCohesion(self, value: float):
35
+ self._propertyAccessor.setDoubleProperty("Cohesion", value)
36
+ def getTensileStrength(self) -> float:
37
+ return self._propertyAccessor.getDoubleProperty("TensileStrength")
38
+ def setTensileStrength(self, value: float):
39
+ self._propertyAccessor.setDoubleProperty("TensileStrength", value)
40
+ def getProperties(self):
41
+ return {
42
+ "InitialMeanStress": self.getInitialMeanStress(),
43
+ "LambdaKappa": self.getLambdaKappa(),
44
+ "DilationAngle": self.getDilationAngle(),
45
+ "HardeningProperty": self.getHardeningProperty(),
46
+ "FrictionAngle": self.getFrictionAngle(),
47
+ "Cohesion": self.getCohesion(),
48
+ "TensileStrength": self.getTensileStrength(),
49
+ }
50
+ def setProperties(self, InitialMeanStress: float = None, LambdaKappa: float = None, DilationAngle: float = None, HardeningProperty: float = None, FrictionAngle: float = None, Cohesion: float = None, TensileStrength: float = None):
51
+ if InitialMeanStress is not None:
52
+ self.setInitialMeanStress(InitialMeanStress)
53
+ if LambdaKappa is not None:
54
+ self.setLambdaKappa(LambdaKappa)
55
+ if DilationAngle is not None:
56
+ self.setDilationAngle(DilationAngle)
57
+ if HardeningProperty is not None:
58
+ self.setHardeningProperty(HardeningProperty)
59
+ if FrictionAngle is not None:
60
+ self.setFrictionAngle(FrictionAngle)
61
+ if Cohesion is not None:
62
+ self.setCohesion(Cohesion)
63
+ if TensileStrength is not None:
64
+ self.setTensileStrength(TensileStrength)
65
+ class SofteningHardeningStageFactorBase(IStageFactorBase):
66
+ def __init__(self, id : str, stageFactorID : str, client : Client):
67
+ super().__init__(id, stageFactorID, client, StrengthStageFactorService_pb2_grpc.StrengthStageFactorServiceStub(client.channel))
68
+ def getCohesionFactor(self) -> float:
69
+ return self._stageFactorPropertyAccessor.getDoubleProperty("SofteningHardeningModel_Cohesion")
70
+ def getDilationAngleFactor(self) -> float:
71
+ return self._stageFactorPropertyAccessor.getDoubleProperty("SofteningHardeningModel_DilationAngle")
72
+ def getFrictionAngleFactor(self) -> float:
73
+ return self._stageFactorPropertyAccessor.getDoubleProperty("SofteningHardeningModel_FrictionAngle")
74
+ def getHardeningPropertyFactor(self) -> float:
75
+ return self._stageFactorPropertyAccessor.getDoubleProperty("SofteningHardeningModel_HardeningProperty")
76
+ def getTensileStrengthFactor(self) -> float:
77
+ return self._stageFactorPropertyAccessor.getDoubleProperty("SofteningHardeningModel_TensileStrength")
78
+ class SofteningHardeningDefinedStageFactorBase(SofteningHardeningStageFactorBase):
79
+ def setCohesionFactor(self, value: float):
80
+ self._stageFactorPropertyAccessor.setDoubleProperty("SofteningHardeningModel_Cohesion", value)
81
+ def setDilationAngleFactor(self, value: float):
82
+ self._stageFactorPropertyAccessor.setDoubleProperty("SofteningHardeningModel_DilationAngle", value)
83
+ def setFrictionAngleFactor(self, value: float):
84
+ self._stageFactorPropertyAccessor.setDoubleProperty("SofteningHardeningModel_FrictionAngle", value)
85
+ def setHardeningPropertyFactor(self, value: float):
86
+ self._stageFactorPropertyAccessor.setDoubleProperty("SofteningHardeningModel_HardeningProperty", value)
87
+ def setTensileStrengthFactor(self, value: float):
88
+ self._stageFactorPropertyAccessor.setDoubleProperty("SofteningHardeningModel_TensileStrength", value)
89
+
90
+ ################ Code below this line will not be overridden ################
91
+ from rs3.properties.material.constitutiveModel.stiffness.LinearIsotropic import LinearIsotropic
92
+ from rs3.properties.material.constitutiveModel.stiffness.TransverselyIsotropic import TransverselyIsotropic
93
+ from rs3.properties.material.constitutiveModel.stiffness.Orthotropic import Orthotropic
94
+ from rs3.properties.material.constitutiveModel.stiffness.DuncanChangHyperbolic import DuncanChangHyperbolic
95
+ from rs3.properties.material.constitutiveModel.stiffness.NonlinearIsotropic import NonlinearIsotropic
96
+ from rs3.properties.material.constitutiveModel.UnsaturatedZoneCalculations import UnsaturatedZoneCalculations
97
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
98
+ import rs3.generatedFiles.MaterialDataService_pb2_grpc as MaterialDataService_pb2_grpc
99
+ import rs3.generatedFiles.MaterialStrengthService_pb2_grpc as MaterialStrengthService_pb2_grpc
100
+ import rs3.generatedFiles.MaterialStrengthService_pb2 as MaterialStrengthService_pb2
101
+ from rs3.properties.PropertyEnums import *
102
+ from rs3.properties.stageFactors.StageFactorBaseInterfaces import AbsoluteStageFactorInterface
103
+
104
+ class SofteningHardeningStageFactor(SofteningHardeningStageFactorBase):
105
+ def __init__(self, id: str, stageFactorId: str, client: Client):
106
+ super().__init__(id, stageFactorId, client)
107
+
108
+ class SofteningHardeningDefinedStageFactor(SofteningHardeningDefinedStageFactorBase):
109
+ pass
110
+
111
+ class SofteningHardening(SofteningHardeningBase):
112
+ def __init__(self, client: Client, id: str):
113
+ super().__init__(client, id)
114
+ self._stub = MaterialStrengthService_pb2_grpc.MaterialStrengthServiceStub(client.channel)
115
+ self._stiffnessPropertyAccessor = BasePropertyAccessor(client, id, MaterialDataService_pb2_grpc.MaterialDataServiceStub(self._client.channel))
116
+ self.LinearIsotropicStiffness = LinearIsotropic(client, id)
117
+ self.TransverselyIsotropicStiffness = TransverselyIsotropic(client, id)
118
+ self.OrthotropicStiffness = Orthotropic(client, id)
119
+ self.DuncanChangHyperbolicStiffness = DuncanChangHyperbolic(client, id)
120
+ self.NonlinearIsotropicStiffness = NonlinearIsotropic(client, id)
121
+ self.UnsaturatedZoneCalculations = UnsaturatedZoneCalculations(client, id)
122
+ self.StageFactorInterface = AbsoluteStageFactorInterface[SofteningHardeningDefinedStageFactor, SofteningHardeningStageFactor](id, client, SofteningHardeningDefinedStageFactor, SofteningHardeningStageFactor)
123
+
124
+ def getElasticType(self) -> MaterialElasticityTypes:
125
+ return self._stiffnessPropertyAccessor.getEnumValue("StiffnessType", MaterialElasticityTypes)
126
+ def setElasticType(self, StiffnessType : MaterialElasticityTypes):
127
+ self._stiffnessPropertyAccessor.setEnumValue("StiffnessType", StiffnessType.value)
128
+ def getConeHardeningType(self) -> ConeHardeningTypes:
129
+ return ConeHardeningTypes(self._propertyAccessor.getBoolValue("ConeIsHardening"))
130
+ def setConeHardeningType(self, value: ConeHardeningTypes):
131
+ self._propertyAccessor.setBoolValue("ConeIsHardening", value.value)
132
+ def getConeDilationType(self) -> DilationTypes:
133
+ return DilationTypes(self._propertyAccessor.getBoolValue("ConeIsCompactDilation"))
134
+ def setConeDilationType(self, value: DilationTypes):
135
+ self._propertyAccessor.setBoolValue("ConeIsCompactDilation", value.value)
136
+ def getCapType(self) -> CapType:
137
+ return self._propertyAccessor.getEnumValue("Cap", CapType)
138
+ def setCapType(self, CapType: CapType):
139
+ return self._propertyAccessor.setEnumValue("Cap", CapType.value)
140
+ def getCapHardeningType(self) -> CapHardeningTypes:
141
+ return CapHardeningTypes(self._propertyAccessor.getBoolValue("CapIsExponential"))
142
+ def setCapHardeningType(self, value: CapHardeningTypes):
143
+ self._propertyAccessor.setBoolValue("CapIsExponential", value.value)
144
+ def getSHConeHardening(self) -> tuple[list[tuple[float, float], list[tuple[float, float]]]]:
145
+ """
146
+ Retrieve two cone hardening functions for the current material.
147
+
148
+ 1. **Deviatoric plastic strain vs. friction angle**
149
+ 2. **Deviatoric plastic strain vs. cohesion**
150
+
151
+ Returns:
152
+ tuple[list[tuple[float, float]], list[tuple[float, float]]]:
153
+ A tuple containing:
154
+ - First element: List of (deviatoricPlasticStrain, frictionAngle) tuples.
155
+ - Second element: List of (deviatoricPlasticStrain, cohesion) tuples.
156
+ """
157
+ request = MaterialStrengthService_pb2.GetConeHardeningFunctionRequest(objectId=self._objectId)
158
+ response : MaterialStrengthService_pb2.GetConeHardeningFunctionResponse = self._client.callFunction(self._stub.GetConeHardeningFunction, request)
159
+ return (list((p.plasticStrain, p.frictionAngle) for p in response.frictionAngleFunction), list((p.plasticStrain, p.cohesion) for p in response.cohesionFunction))
160
+ def setSHConeHardening(self, plasticStrainVsFrictionAngle: list[tuple[float, float]], plasticStrainVsCohesion: list[tuple[float, float]]):
161
+ """
162
+ Set two cone hardening functions for the current material.
163
+
164
+ 1. **Deviatoric plastic strain vs. friction angle**
165
+ 2. **Deviatoric plastic strain vs. cohesion**
166
+
167
+ Args:
168
+ plasticStrainVsFrictionAngle (list[tuple[float, float]]):
169
+ List of (deviatoricPlasticStrain, frictionAngle) tuples.
170
+ plasticStrainVsCohesion (list[tuple[float, float]]):
171
+ List of (deviatoricPlasticStrain, cohesion) tuples.
172
+
173
+ Raises:
174
+ grpc.RpcError: If the underlying gRPC request fails.
175
+ """
176
+ plasticStrainVsFrictionAngleList = []
177
+ for plasticStrain, frictionAngle in plasticStrainVsFrictionAngle:
178
+ plasticStrainVsFrictionAnglePoint = MaterialStrengthService_pb2.PlasticStrainVsFrictionAnglePoint(plasticStrain=plasticStrain, frictionAngle=frictionAngle)
179
+ plasticStrainVsFrictionAngleList.append(plasticStrainVsFrictionAnglePoint)
180
+ plasticStrainVsCohesionList = []
181
+ for plasticStrain, cohesion in plasticStrainVsCohesion:
182
+ plasticStrainVsCohesionPoint = MaterialStrengthService_pb2.PlasticStrainVsCohesionPoint(plasticStrain=plasticStrain, cohesion=cohesion)
183
+ plasticStrainVsCohesionList.append(plasticStrainVsCohesionPoint)
184
+ request = MaterialStrengthService_pb2.SetConeHardeningFunctionRequest(objectId=self._objectId, frictionAngleFunction=plasticStrainVsFrictionAngleList, cohesionFunction=plasticStrainVsCohesionList)
185
+ self._client.callFunction(self._stub.SetConeHardeningFunction, request)
186
+ def getSHCapMeanStress(self) -> list[tuple[float, float]]:
187
+ """
188
+ Retrieve the mean stress function points for the current material.
189
+
190
+ Returns:
191
+ list[tuple[float, float]]:
192
+ A list of tuples, where each tuple contains:
193
+ - volumetricPlasticStrain (str): The volumetric plastic strain values.
194
+ - meanStress (float): The corresponding mean stress values.
195
+ """
196
+ request = MaterialStrengthService_pb2.GetMeanStressFunctionPropertyRequest(objectId=self._objectId)
197
+ response : MaterialStrengthService_pb2.GetMeanStressFunctionPropertyResponse = self._client.callFunction(self._stub.GetCapHardeningFunction, request)
198
+ return list((p.volumetricPlasticStrain, p.meanStress) for p in response.point)
199
+ def setSHCapMeanStress(self, value: list[tuple[float, float]]):
200
+ """
201
+ Set the mean stress function points for the current material.
202
+
203
+ Args:
204
+ value (list[tuple[float, float]]):
205
+ A list of tuples, where each tuple contains:
206
+ - volumetricPlasticStrain (str): The volumetric plastic strain values.
207
+ - meanStress (float): The corresponding mean stress values.
208
+ """
209
+ meanStressList = []
210
+ for volumetricPlasticStrain, meanStress in value:
211
+ meanStressPoint = MaterialStrengthService_pb2.MeanStressDataPoint(volumetricPlasticStrain=volumetricPlasticStrain, meanStress=meanStress)
212
+ meanStressList.append(meanStressPoint)
213
+ request = MaterialStrengthService_pb2.SetMeanStressFunctionPropertyRequest(objectId=self._objectId, point=meanStressList)
214
+ self._client.callFunction(self._stub.SetCapHardeningFunction, request)