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,296 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor, UnloadingPropertyAccessor
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.StiffnessStageFactorService_pb2_grpc as StiffnessStageFactorService_pb2_grpc
8
+ class OrthotropicBase(_ProxyObject, IPropertyGroupAccessors):
9
+ def __init__(self, client: Client, id: str):
10
+ super().__init__(client, id)
11
+ self._propertyAccessor = PropertyAccessor(client, id)
12
+ self._unloadingPropertyAccessor = UnloadingPropertyAccessor(client, id)
13
+ def getShearModulusG12(self) -> float:
14
+ return self._propertyAccessor.getDoubleProperty("G12")
15
+ def setShearModulusG12(self, value: float):
16
+ self._propertyAccessor.setDoubleProperty("G12", value)
17
+ def getShearModulusG13(self) -> float:
18
+ return self._propertyAccessor.getDoubleProperty("G13")
19
+ def setShearModulusG13(self, value: float):
20
+ self._propertyAccessor.setDoubleProperty("G13", value)
21
+ def getShearModulusG23(self) -> float:
22
+ return self._propertyAccessor.getDoubleProperty("G23")
23
+ def setShearModulusG23(self, value: float):
24
+ self._propertyAccessor.setDoubleProperty("G23", value)
25
+ def getYoungsModulusE1(self) -> float:
26
+ return self._propertyAccessor.getDoubleProperty("E1")
27
+ def setYoungsModulusE1(self, value: float):
28
+ self._propertyAccessor.setDoubleProperty("E1", value)
29
+ def getYoungsModulusE2(self) -> float:
30
+ return self._propertyAccessor.getDoubleProperty("E2")
31
+ def setYoungsModulusE2(self, value: float):
32
+ self._propertyAccessor.setDoubleProperty("E2", value)
33
+ def getYoungsModulusE3(self) -> float:
34
+ return self._propertyAccessor.getDoubleProperty("E3")
35
+ def setYoungsModulusE3(self, value: float):
36
+ self._propertyAccessor.setDoubleProperty("E3", value)
37
+ def getPoissonsRatioV12(self) -> float:
38
+ return self._propertyAccessor.getDoubleProperty("V12")
39
+ def setPoissonsRatioV12(self, value: float):
40
+ self._propertyAccessor.setDoubleProperty("V12", value)
41
+ def getPoissonsRatioV13(self) -> float:
42
+ return self._propertyAccessor.getDoubleProperty("V13")
43
+ def setPoissonsRatioV13(self, value: float):
44
+ self._propertyAccessor.setDoubleProperty("V13", value)
45
+ def getPoissonsRatioV23(self) -> float:
46
+ return self._propertyAccessor.getDoubleProperty("V23")
47
+ def setPoissonsRatioV23(self, value: float):
48
+ self._propertyAccessor.setDoubleProperty("V23", value)
49
+ def getUnloadingShearModulusG12(self) -> float:
50
+ return self._unloadingPropertyAccessor.getDoubleProperty("G12")
51
+ def setUnloadingShearModulusG12(self, value: float):
52
+ self._unloadingPropertyAccessor.setDoubleProperty("G12", value)
53
+ def getUnloadingShearModulusG13(self) -> float:
54
+ return self._unloadingPropertyAccessor.getDoubleProperty("G13")
55
+ def setUnloadingShearModulusG13(self, value: float):
56
+ self._unloadingPropertyAccessor.setDoubleProperty("G13", value)
57
+ def getUnloadingShearModulusG23(self) -> float:
58
+ return self._unloadingPropertyAccessor.getDoubleProperty("G23")
59
+ def setUnloadingShearModulusG23(self, value: float):
60
+ self._unloadingPropertyAccessor.setDoubleProperty("G23", value)
61
+ def getUnloadingYoungsModulusE1(self) -> float:
62
+ return self._unloadingPropertyAccessor.getDoubleProperty("E1")
63
+ def setUnloadingYoungsModulusE1(self, value: float):
64
+ self._unloadingPropertyAccessor.setDoubleProperty("E1", value)
65
+ def getUnloadingYoungsModulusE2(self) -> float:
66
+ return self._unloadingPropertyAccessor.getDoubleProperty("E2")
67
+ def setUnloadingYoungsModulusE2(self, value: float):
68
+ self._unloadingPropertyAccessor.setDoubleProperty("E2", value)
69
+ def getUnloadingYoungsModulusE3(self) -> float:
70
+ return self._unloadingPropertyAccessor.getDoubleProperty("E3")
71
+ def setUnloadingYoungsModulusE3(self, value: float):
72
+ self._unloadingPropertyAccessor.setDoubleProperty("E3", value)
73
+ def getUnloadingPoissonsRatioV12(self) -> float:
74
+ return self._unloadingPropertyAccessor.getDoubleProperty("V12")
75
+ def setUnloadingPoissonsRatioV12(self, value: float):
76
+ self._unloadingPropertyAccessor.setDoubleProperty("V12", value)
77
+ def getUnloadingPoissonsRatioV13(self) -> float:
78
+ return self._unloadingPropertyAccessor.getDoubleProperty("V13")
79
+ def setUnloadingPoissonsRatioV13(self, value: float):
80
+ self._unloadingPropertyAccessor.setDoubleProperty("V13", value)
81
+ def getUnloadingPoissonsRatioV23(self) -> float:
82
+ return self._unloadingPropertyAccessor.getDoubleProperty("V23")
83
+ def setUnloadingPoissonsRatioV23(self, value: float):
84
+ self._unloadingPropertyAccessor.setDoubleProperty("V23", value)
85
+ def getProperties(self):
86
+ return {
87
+ "ShearModulusG12": self.getShearModulusG12(),
88
+ "ShearModulusG13": self.getShearModulusG13(),
89
+ "ShearModulusG23": self.getShearModulusG23(),
90
+ "YoungsModulusE1": self.getYoungsModulusE1(),
91
+ "YoungsModulusE2": self.getYoungsModulusE2(),
92
+ "YoungsModulusE3": self.getYoungsModulusE3(),
93
+ "PoissonsRatioV12": self.getPoissonsRatioV12(),
94
+ "PoissonsRatioV13": self.getPoissonsRatioV13(),
95
+ "PoissonsRatioV23": self.getPoissonsRatioV23(),
96
+ "UnloadingShearModulusG12": self.getUnloadingShearModulusG12(),
97
+ "UnloadingShearModulusG13": self.getUnloadingShearModulusG13(),
98
+ "UnloadingShearModulusG23": self.getUnloadingShearModulusG23(),
99
+ "UnloadingYoungsModulusE1": self.getUnloadingYoungsModulusE1(),
100
+ "UnloadingYoungsModulusE2": self.getUnloadingYoungsModulusE2(),
101
+ "UnloadingYoungsModulusE3": self.getUnloadingYoungsModulusE3(),
102
+ "UnloadingPoissonsRatioV12": self.getUnloadingPoissonsRatioV12(),
103
+ "UnloadingPoissonsRatioV13": self.getUnloadingPoissonsRatioV13(),
104
+ "UnloadingPoissonsRatioV23": self.getUnloadingPoissonsRatioV23(),
105
+ }
106
+ def setProperties(self, ShearModulusG12: float = None, ShearModulusG13: float = None, ShearModulusG23: float = None, YoungsModulusE1: float = None, YoungsModulusE2: float = None, YoungsModulusE3: float = None, PoissonsRatioV12: float = None, PoissonsRatioV13: float = None, PoissonsRatioV23: float = None, UnloadingShearModulusG12: float = None, UnloadingShearModulusG13: float = None, UnloadingShearModulusG23: float = None, UnloadingYoungsModulusE1: float = None, UnloadingYoungsModulusE2: float = None, UnloadingYoungsModulusE3: float = None, UnloadingPoissonsRatioV12: float = None, UnloadingPoissonsRatioV13: float = None, UnloadingPoissonsRatioV23: float = None):
107
+ if ShearModulusG12 is not None:
108
+ self.setShearModulusG12(ShearModulusG12)
109
+ if ShearModulusG13 is not None:
110
+ self.setShearModulusG13(ShearModulusG13)
111
+ if ShearModulusG23 is not None:
112
+ self.setShearModulusG23(ShearModulusG23)
113
+ if YoungsModulusE1 is not None:
114
+ self.setYoungsModulusE1(YoungsModulusE1)
115
+ if YoungsModulusE2 is not None:
116
+ self.setYoungsModulusE2(YoungsModulusE2)
117
+ if YoungsModulusE3 is not None:
118
+ self.setYoungsModulusE3(YoungsModulusE3)
119
+ if PoissonsRatioV12 is not None:
120
+ self.setPoissonsRatioV12(PoissonsRatioV12)
121
+ if PoissonsRatioV13 is not None:
122
+ self.setPoissonsRatioV13(PoissonsRatioV13)
123
+ if PoissonsRatioV23 is not None:
124
+ self.setPoissonsRatioV23(PoissonsRatioV23)
125
+ if UnloadingShearModulusG12 is not None:
126
+ self.setUnloadingShearModulusG12(UnloadingShearModulusG12)
127
+ if UnloadingShearModulusG13 is not None:
128
+ self.setUnloadingShearModulusG13(UnloadingShearModulusG13)
129
+ if UnloadingShearModulusG23 is not None:
130
+ self.setUnloadingShearModulusG23(UnloadingShearModulusG23)
131
+ if UnloadingYoungsModulusE1 is not None:
132
+ self.setUnloadingYoungsModulusE1(UnloadingYoungsModulusE1)
133
+ if UnloadingYoungsModulusE2 is not None:
134
+ self.setUnloadingYoungsModulusE2(UnloadingYoungsModulusE2)
135
+ if UnloadingYoungsModulusE3 is not None:
136
+ self.setUnloadingYoungsModulusE3(UnloadingYoungsModulusE3)
137
+ if UnloadingPoissonsRatioV12 is not None:
138
+ self.setUnloadingPoissonsRatioV12(UnloadingPoissonsRatioV12)
139
+ if UnloadingPoissonsRatioV13 is not None:
140
+ self.setUnloadingPoissonsRatioV13(UnloadingPoissonsRatioV13)
141
+ if UnloadingPoissonsRatioV23 is not None:
142
+ self.setUnloadingPoissonsRatioV23(UnloadingPoissonsRatioV23)
143
+ class OrthotropicStageFactorBase(IStageFactorBase):
144
+ def __init__(self, id : str, stageFactorID : str, client : Client):
145
+ super().__init__(id, stageFactorID, client, StiffnessStageFactorService_pb2_grpc.StiffnessStageFactorServiceStub(client.channel))
146
+ def getYoungsModulusE1Factor(self) -> float:
147
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_E1")
148
+ def getYoungsModulusE2Factor(self) -> float:
149
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_E2")
150
+ def getYoungsModulusEZFactor(self) -> float:
151
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_Ez")
152
+ def getShearModulusG12Factor(self) -> float:
153
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_ShearModulus12")
154
+ def getShearModulusG13Factor(self) -> float:
155
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_ShearModulus13")
156
+ def getShearModulusG23Factor(self) -> float:
157
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_ShearModulus23")
158
+ def getPoissonsRatioV12Factor(self) -> float:
159
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_v12")
160
+ def getPoissonsRatioV1ZFactor(self) -> float:
161
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_v1z")
162
+ def getPoissonsRatioV2ZFactor(self) -> float:
163
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Orthotropic_v2z")
164
+ class OrthotropicDefinedStageFactorBase(OrthotropicStageFactorBase):
165
+ def setYoungsModulusE1Factor(self, value: float):
166
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_E1", value)
167
+ def setYoungsModulusE2Factor(self, value: float):
168
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_E2", value)
169
+ def setYoungsModulusEZFactor(self, value: float):
170
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_Ez", value)
171
+ def setShearModulusG12Factor(self, value: float):
172
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_ShearModulus12", value)
173
+ def setShearModulusG13Factor(self, value: float):
174
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_ShearModulus13", value)
175
+ def setShearModulusG23Factor(self, value: float):
176
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_ShearModulus23", value)
177
+ def setPoissonsRatioV12Factor(self, value: float):
178
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_v12", value)
179
+ def setPoissonsRatioV1ZFactor(self, value: float):
180
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_v1z", value)
181
+ def setPoissonsRatioV2ZFactor(self, value: float):
182
+ self._stageFactorPropertyAccessor.setDoubleProperty("Orthotropic_v2z", value)
183
+
184
+ ################ Code below this line will not be overridden ################
185
+ from rs3.properties.PropertyEnums import *
186
+ from rs3.properties.material.constitutiveModel.stiffness.GeneralizedHoekBrownEstimation import GeneralizedHoekBrownEstimation
187
+ from rs3.properties.material.constitutiveModel.stiffness.BaseStiffness import BaseStiffness
188
+ from ._PropertyAccessor import LoadingPropertyAccessor, UnloadingPropertyAccessor
189
+ from rs3.properties.stageFactors.StageFactorBaseInterfaces import AbsoluteStageFactorInterface
190
+
191
+ class OrthotropicStageFactor(OrthotropicStageFactorBase):
192
+ def __init__(self, id: str, stageFactorId: str, client: Client):
193
+ super().__init__(id, stageFactorId, client)
194
+
195
+ class OrthotropicDefinedStageFactor(OrthotropicDefinedStageFactorBase):
196
+ pass
197
+
198
+ class Orthotropic(OrthotropicBase, BaseStiffness):
199
+ def __init__(self, client: Client, id: str):
200
+ super().__init__(client, id)
201
+ self._basePropertyAccessor = PropertyAccessor(client, id)
202
+ self._propertyAccessor = LoadingPropertyAccessor(client, id)
203
+ self.GeneralizedHoekBrownEstimation = GeneralizedHoekBrownEstimation(client, id)
204
+ self.StageFactorInterface = AbsoluteStageFactorInterface[OrthotropicDefinedStageFactor, OrthotropicStageFactor](id, client, OrthotropicDefinedStageFactor, OrthotropicStageFactor)
205
+
206
+ def getDirection1(self) -> tuple[float, float, float]:
207
+ """
208
+ Get the orientation corresponding to E1 needs to be specified by a XYZ vector component.
209
+
210
+ Returns
211
+ -------
212
+ tuple[float, float, float]
213
+ A 3D direction vector represented as (dx, dy, dz),
214
+ corresponding to the X, Y, and Z components.
215
+ """
216
+ return self._propertyAccessor.getVector3DValue("E1Direction")
217
+ def setDirection1(self, Direction1 : tuple[float, float, float]):
218
+ """
219
+ Set the orientation corresponding to E1 needs to be specified by a XYZ vector component.
220
+
221
+ Parameters
222
+ ----------
223
+ Direction1 : tuple[float, float, float]
224
+ A 3D direction vector defined as (dx, dy, dz),
225
+ representing the X, Y, and Z components in global coordinates.
226
+ """
227
+ self._propertyAccessor.setVector3DValue("E1Direction", Direction1)
228
+
229
+ def getDirection2(self) -> tuple[float, float, float]:
230
+ """
231
+ Get the orientation corresponding to E2 needs to be specified by a XYZ vector component.
232
+
233
+ Returns
234
+ -------
235
+ tuple[float, float, float]
236
+ A 3D direction vector represented as (dx, dy, dz),
237
+ corresponding to the X, Y, and Z components.
238
+ """
239
+ return self._propertyAccessor.getVector3DValue("E2Direction")
240
+ def setDirection2(self, Direction2 : tuple[float, float, float]):
241
+ """
242
+ Set the orientation corresponding to E2 needs to be specified by a XYZ vector component.
243
+
244
+ Parameters
245
+ ----------
246
+ Direction2 : tuple[float, float, float]
247
+ A 3D direction vector defined as (dx, dy, dz),
248
+ representing the X, Y, and Z components in global coordinates.
249
+ """
250
+ self._propertyAccessor.setVector3DValue("E2Direction", Direction2)
251
+
252
+ def getUnloadingDirection1(self) -> tuple[float, float, float]:
253
+ """
254
+ Get the orientation corresponding to unloading E1 needs to be specified by a XYZ vector component.
255
+
256
+ Returns
257
+ -------
258
+ tuple[float, float, float]
259
+ A 3D direction vector represented as (dx, dy, dz),
260
+ corresponding to the X, Y, and Z components.
261
+ """
262
+ return self._unloadingPropertyAccessor.getVector3DValue("E1Direction")
263
+ def setUnloadingDirection1(self, Direction1 : tuple[float, float, float]):
264
+ """
265
+ Set the orientation corresponding to unloading E1 needs to be specified by a XYZ vector component.
266
+
267
+ Parameters
268
+ ----------
269
+ Direction1 : tuple[float, float, float]
270
+ A 3D direction vector defined as (dx, dy, dz),
271
+ representing the X, Y, and Z components.
272
+ """
273
+ self._unloadingPropertyAccessor.setVector3DValue("E1Direction", Direction1)
274
+
275
+ def getUnloadingDirection2(self) -> tuple[float, float, float]:
276
+ """
277
+ Get the orientation corresponding to unloading E2 needs to be specified by a XYZ vector component.
278
+
279
+ Returns
280
+ -------
281
+ tuple[float, float, float]
282
+ A 3D direction vector represented as (dx, dy, dz),
283
+ corresponding to the X, Y, and Z components.
284
+ """
285
+ return self._unloadingPropertyAccessor.getVector3DValue("E2Direction")
286
+ def setUnloadingDirection2(self, Direction2 : tuple[float, float, float]):
287
+ """
288
+ Set the orientation corresponding to unloading E2 needs to be specified by a XYZ vector component.
289
+
290
+ Parameters
291
+ ----------
292
+ Direction1 : tuple[float, float, float]
293
+ A 3D direction vector defined as (dx, dy, dz),
294
+ representing the X, Y, and Z components.
295
+ """
296
+ self._unloadingPropertyAccessor.setVector3DValue("E2Direction", Direction2)
@@ -0,0 +1,186 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor, UnloadingPropertyAccessor
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.StiffnessStageFactorService_pb2_grpc as StiffnessStageFactorService_pb2_grpc
8
+ class TransverselyIsotropicBase(_ProxyObject, IPropertyGroupAccessors):
9
+ def __init__(self, client: Client, id: str):
10
+ super().__init__(client, id)
11
+ self._propertyAccessor = PropertyAccessor(client, id)
12
+ self._unloadingPropertyAccessor = UnloadingPropertyAccessor(client, id)
13
+ def getShearModulus(self) -> float:
14
+ return self._propertyAccessor.getDoubleProperty("ShearModulus")
15
+ def setShearModulus(self, value: float):
16
+ self._propertyAccessor.setDoubleProperty("ShearModulus", value)
17
+ def getYoungsModulusE1AndE3(self) -> float:
18
+ return self._propertyAccessor.getDoubleProperty("E1E3")
19
+ def setYoungsModulusE1AndE3(self, value: float):
20
+ self._propertyAccessor.setDoubleProperty("E1E3", value)
21
+ def getYoungsModulusE2(self) -> float:
22
+ return self._propertyAccessor.getDoubleProperty("E2")
23
+ def setYoungsModulusE2(self, value: float):
24
+ self._propertyAccessor.setDoubleProperty("E2", value)
25
+ def getPoissonsRatioV12(self) -> float:
26
+ return self._propertyAccessor.getDoubleProperty("V12")
27
+ def setPoissonsRatioV12(self, value: float):
28
+ self._propertyAccessor.setDoubleProperty("V12", value)
29
+ def getPoissonsRatioVAndV13(self) -> float:
30
+ return self._propertyAccessor.getDoubleProperty("V13")
31
+ def setPoissonsRatioVAndV13(self, value: float):
32
+ self._propertyAccessor.setDoubleProperty("V13", value)
33
+ def getUnloadingShearModulus(self) -> float:
34
+ return self._unloadingPropertyAccessor.getDoubleProperty("ShearModulus")
35
+ def setUnloadingShearModulus(self, value: float):
36
+ self._unloadingPropertyAccessor.setDoubleProperty("ShearModulus", value)
37
+ def getUnloadingYoungsModulusE1AndE3(self) -> float:
38
+ return self._unloadingPropertyAccessor.getDoubleProperty("E1E3")
39
+ def setUnloadingYoungsModulusE1AndE3(self, value: float):
40
+ self._unloadingPropertyAccessor.setDoubleProperty("E1E3", value)
41
+ def getUnloadingYoungsModulusE2(self) -> float:
42
+ return self._unloadingPropertyAccessor.getDoubleProperty("E2")
43
+ def setUnloadingYoungsModulusE2(self, value: float):
44
+ self._unloadingPropertyAccessor.setDoubleProperty("E2", value)
45
+ def getUnloadingPoissonsRatioV12(self) -> float:
46
+ return self._unloadingPropertyAccessor.getDoubleProperty("V12")
47
+ def setUnloadingPoissonsRatioV12(self, value: float):
48
+ self._unloadingPropertyAccessor.setDoubleProperty("V12", value)
49
+ def getUnloadingPoissonsRatioVAndV13(self) -> float:
50
+ return self._unloadingPropertyAccessor.getDoubleProperty("V13")
51
+ def setUnloadingPoissonsRatioVAndV13(self, value: float):
52
+ self._unloadingPropertyAccessor.setDoubleProperty("V13", value)
53
+ def getProperties(self):
54
+ return {
55
+ "ShearModulus": self.getShearModulus(),
56
+ "YoungsModulusE1AndE3": self.getYoungsModulusE1AndE3(),
57
+ "YoungsModulusE2": self.getYoungsModulusE2(),
58
+ "PoissonsRatioV12": self.getPoissonsRatioV12(),
59
+ "PoissonsRatioVAndV13": self.getPoissonsRatioVAndV13(),
60
+ "UnloadingShearModulus": self.getUnloadingShearModulus(),
61
+ "UnloadingYoungsModulusE1AndE3": self.getUnloadingYoungsModulusE1AndE3(),
62
+ "UnloadingYoungsModulusE2": self.getUnloadingYoungsModulusE2(),
63
+ "UnloadingPoissonsRatioV12": self.getUnloadingPoissonsRatioV12(),
64
+ "UnloadingPoissonsRatioVAndV13": self.getUnloadingPoissonsRatioVAndV13(),
65
+ }
66
+ def setProperties(self, ShearModulus: float = None, YoungsModulusE1AndE3: float = None, YoungsModulusE2: float = None, PoissonsRatioV12: float = None, PoissonsRatioVAndV13: float = None, UnloadingShearModulus: float = None, UnloadingYoungsModulusE1AndE3: float = None, UnloadingYoungsModulusE2: float = None, UnloadingPoissonsRatioV12: float = None, UnloadingPoissonsRatioVAndV13: float = None):
67
+ if ShearModulus is not None:
68
+ self.setShearModulus(ShearModulus)
69
+ if YoungsModulusE1AndE3 is not None:
70
+ self.setYoungsModulusE1AndE3(YoungsModulusE1AndE3)
71
+ if YoungsModulusE2 is not None:
72
+ self.setYoungsModulusE2(YoungsModulusE2)
73
+ if PoissonsRatioV12 is not None:
74
+ self.setPoissonsRatioV12(PoissonsRatioV12)
75
+ if PoissonsRatioVAndV13 is not None:
76
+ self.setPoissonsRatioVAndV13(PoissonsRatioVAndV13)
77
+ if UnloadingShearModulus is not None:
78
+ self.setUnloadingShearModulus(UnloadingShearModulus)
79
+ if UnloadingYoungsModulusE1AndE3 is not None:
80
+ self.setUnloadingYoungsModulusE1AndE3(UnloadingYoungsModulusE1AndE3)
81
+ if UnloadingYoungsModulusE2 is not None:
82
+ self.setUnloadingYoungsModulusE2(UnloadingYoungsModulusE2)
83
+ if UnloadingPoissonsRatioV12 is not None:
84
+ self.setUnloadingPoissonsRatioV12(UnloadingPoissonsRatioV12)
85
+ if UnloadingPoissonsRatioVAndV13 is not None:
86
+ self.setUnloadingPoissonsRatioVAndV13(UnloadingPoissonsRatioVAndV13)
87
+ class TransverselyIsotropicStageFactorBase(IStageFactorBase):
88
+ def __init__(self, id : str, stageFactorID : str, client : Client):
89
+ super().__init__(id, stageFactorID, client, StiffnessStageFactorService_pb2_grpc.StiffnessStageFactorServiceStub(client.channel))
90
+ def getYoungsModulusE1AndEzFactor(self) -> float:
91
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Transverse_E1Ez")
92
+ def getYoungsModulusE2Factor(self) -> float:
93
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Transverse_E2")
94
+ def getShearModulusFactor(self) -> float:
95
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Transverse_ShearModulus")
96
+ def getPoissonsRatioV12Factor(self) -> float:
97
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Transverse_v12")
98
+ def getPoissonsRatioVAndV1zFactor(self) -> float:
99
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Transverse_v1z")
100
+ class TransverselyIsotropicDefinedStageFactorBase(TransverselyIsotropicStageFactorBase):
101
+ def setYoungsModulusE1AndEzFactor(self, value: float):
102
+ self._stageFactorPropertyAccessor.setDoubleProperty("Transverse_E1Ez", value)
103
+ def setYoungsModulusE2Factor(self, value: float):
104
+ self._stageFactorPropertyAccessor.setDoubleProperty("Transverse_E2", value)
105
+ def setShearModulusFactor(self, value: float):
106
+ self._stageFactorPropertyAccessor.setDoubleProperty("Transverse_ShearModulus", value)
107
+ def setPoissonsRatioV12Factor(self, value: float):
108
+ self._stageFactorPropertyAccessor.setDoubleProperty("Transverse_v12", value)
109
+ def setPoissonsRatioVAndV1zFactor(self, value: float):
110
+ self._stageFactorPropertyAccessor.setDoubleProperty("Transverse_v1z", value)
111
+
112
+ ################ Code below this line will not be overridden ################
113
+ from rs3.properties.PropertyEnums import *
114
+ from rs3.properties.material.constitutiveModel.stiffness.GeneralizedHoekBrownEstimation import GeneralizedHoekBrownEstimation
115
+ from rs3.properties.material.constitutiveModel.stiffness.BaseStiffness import BaseStiffness
116
+ from ._PropertyAccessor import LoadingPropertyAccessor, UnloadingPropertyAccessor
117
+ from rs3.properties.stageFactors.StageFactorBaseInterfaces import AbsoluteStageFactorInterface
118
+
119
+ class TransverselyIsotropicStageFactor(TransverselyIsotropicStageFactorBase):
120
+ def __init__(self, id: str, stageFactorId: str, client: Client):
121
+ super().__init__(id, stageFactorId, client)
122
+
123
+ class TransverselyIsotropicDefinedStageFactor(TransverselyIsotropicDefinedStageFactorBase):
124
+ pass
125
+
126
+ class TransverselyIsotropic(TransverselyIsotropicBase, BaseStiffness):
127
+ def __init__(self, client: Client, id: str):
128
+ super().__init__(client, id)
129
+ self._basePropertyAccessor = PropertyAccessor(client, id)
130
+ self._propertyAccessor = LoadingPropertyAccessor(client, id)
131
+ self.GeneralizedHoekBrownEstimation = GeneralizedHoekBrownEstimation(client, id)
132
+ self.StageFactorInterface = AbsoluteStageFactorInterface[TransverselyIsotropicDefinedStageFactor, TransverselyIsotropicStageFactor](id, client, TransverselyIsotropicDefinedStageFactor, TransverselyIsotropicStageFactor)
133
+
134
+ def getNormalToPlaneOfIsotropy(self) -> tuple[float, float, float]:
135
+ """
136
+ Get the orientation of E2. The orientation is specified by XYZ vector components
137
+ where XYZ corresponds to the principal axes of your model. The orientation of E2
138
+ is normal to the isotropic plane 1-3.
139
+
140
+ Returns
141
+ -------
142
+ tuple[float, float, float]
143
+ A 3D direction vector represented as (dx, dy, dz),
144
+ corresponding to the X, Y, and Z components.
145
+ """
146
+ return self._propertyAccessor.getVector3DValue("E2Direction")
147
+ def setNormalToPlaneOfIsotropy(self, normalToPlaneOfIsotropy : tuple[float, float, float]):
148
+ """
149
+ Set the orientation of E2. The orientation is specified by XYZ vector components
150
+ where XYZ corresponds to the principal axes of your model. The orientation of E2
151
+ is normal to the isotropic plane 1-3.
152
+
153
+ Returns
154
+ -------
155
+ tuple[float, float, float]
156
+ A 3D direction vector represented as (dx, dy, dz),
157
+ corresponding to the X, Y, and Z components.
158
+ """
159
+ self._propertyAccessor.setVector3DValue("E2Direction", normalToPlaneOfIsotropy)
160
+
161
+ def getUnloadingNormalToPlaneOfIsotropy(self) -> tuple[float, float, float]:
162
+ """
163
+ Get the orientation of unloading E2. The orientation is specified by XYZ vector components
164
+ where XYZ corresponds to the principal axes of your model. The orientation of unloading E2
165
+ is normal to the isotropic plane 1-3.
166
+
167
+ Returns
168
+ -------
169
+ tuple[float, float, float]
170
+ A 3D direction vector represented as (dx, dy, dz),
171
+ corresponding to the X, Y, and Z components.
172
+ """
173
+ return self._unloadingPropertyAccessor.getVector3DValue("E2Direction")
174
+ def setUnloadingNormalToPlaneOfIsotropy(self, normalToPlaneOfIsotropy : tuple[float, float, float]):
175
+ """
176
+ Set the orientation of unloading E2. The orientation is specified by XYZ vector components
177
+ where XYZ corresponds to the principal axes of your model. The orientation of unloading E2
178
+ is normal to the isotropic plane 1-3.
179
+
180
+ Returns
181
+ -------
182
+ tuple[float, float, float]
183
+ A 3D direction vector represented as (dx, dy, dz),
184
+ corresponding to the X, Y, and Z components.
185
+ """
186
+ self._unloadingPropertyAccessor.setVector3DValue("E2Direction", normalToPlaneOfIsotropy)
@@ -0,0 +1,33 @@
1
+ from rs3.properties._PropertyAccessor import PropertyAccessor as BasePropertyAccessor
2
+ import rs3.generatedFiles.MaterialStiffnessService_pb2_grpc as MaterialStiffnessService_pb2_grpc
3
+ import rs3.generatedFiles.MaterialStiffnessService_pb2 as MaterialStiffnessService_pb2
4
+ import rs3.generatedFiles.CommonMessages_pb2 as CommonMessages_pb2
5
+ from rs3._client import Client
6
+ class PropertyAccessor(BasePropertyAccessor):
7
+ def __init__(self, client : Client, objectId : str):
8
+ self._stub = MaterialStiffnessService_pb2_grpc.MaterialStiffnessServiceStub(client.channel)
9
+ super().__init__(client, objectId, self._stub)
10
+
11
+ class LoadingPropertyAccessor(PropertyAccessor):
12
+ def __init__(self, client : Client, objectId : str):
13
+ super().__init__(client, objectId)
14
+ self.isLoading = True
15
+ def _getProperty(self, propertyName: str) -> CommonMessages_pb2.PropertyValue:
16
+ request = MaterialStiffnessService_pb2.GetMaterialStiffnessPropertyRequest(propertyId=self.objectId, isLoading=self.isLoading, propertyName=propertyName)
17
+ response : MaterialStiffnessService_pb2.GetMaterialStiffnessPropertyResponse = self._client.callFunction(self._stub.GetMaterialStiffnessProperty, request)
18
+ return response.value
19
+ def _setProperty(self, propertyName: str, value: CommonMessages_pb2.PropertyValue):
20
+ request = MaterialStiffnessService_pb2.SetMaterialStiffnessPropertyRequest(propertyId=self.objectId, isLoading=self.isLoading, propertyName=propertyName, value=value)
21
+ self._client.callFunction(self._stub.SetMaterialStiffnessProperty, request)
22
+
23
+ class UnloadingPropertyAccessor(PropertyAccessor):
24
+ def __init__(self, client : Client, objectId : str):
25
+ super().__init__(client, objectId)
26
+ self.isLoading = False
27
+ def _getProperty(self, propertyName: str) -> CommonMessages_pb2.PropertyValue:
28
+ request = MaterialStiffnessService_pb2.GetMaterialStiffnessPropertyRequest(propertyId=self.objectId, isLoading=self.isLoading, propertyName=propertyName)
29
+ response : MaterialStiffnessService_pb2.GetMaterialStiffnessPropertyResponse = self._client.callFunction(self._stub.GetMaterialStiffnessProperty, request)
30
+ return response.value
31
+ def _setProperty(self, propertyName: str, value: CommonMessages_pb2.PropertyValue):
32
+ request = MaterialStiffnessService_pb2.SetMaterialStiffnessPropertyRequest(propertyId=self.objectId, isLoading=self.isLoading, propertyName=propertyName, value=value)
33
+ self._client.callFunction(self._stub.SetMaterialStiffnessProperty, request)
@@ -0,0 +1,96 @@
1
+ # Generated by RPCBinder in RFC_Common.
2
+ from rs3._client import Client
3
+ from ._PropertyAccessor import PropertyAccessor, LoadingMaterialStiffnessFormulaPropertyAccessor, UnloadingMaterialStiffnessFormulaPropertyAccessor
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.StiffnessStageFactorService_pb2_grpc as StiffnessStageFactorService_pb2_grpc
8
+ class Formula1Base(_ProxyObject, IPropertyGroupAccessors):
9
+ def __init__(self, client: Client, id: str):
10
+ super().__init__(client, id)
11
+ self._propertyAccessor = PropertyAccessor(client, id)
12
+ self._unloadingPropertyAccessor = PropertyAccessor(client, id)
13
+ def getInitialE(self) -> float:
14
+ return self._propertyAccessor.getDoubleProperty("InitialE")
15
+ def setInitialE(self, value: float):
16
+ self._propertyAccessor.setDoubleProperty("InitialE", value)
17
+ def getPref(self) -> float:
18
+ return self._propertyAccessor.getDoubleProperty("Pref")
19
+ def setPref(self, value: float):
20
+ self._propertyAccessor.setDoubleProperty("Pref", value)
21
+ def getAlpha(self) -> float:
22
+ return self._propertyAccessor.getDoubleProperty("Alpha")
23
+ def setAlpha(self, value: float):
24
+ self._propertyAccessor.setDoubleProperty("Alpha", value)
25
+ def getUnloadingInitialE(self) -> float:
26
+ return self._unloadingPropertyAccessor.getDoubleProperty("InitialE")
27
+ def setUnloadingInitialE(self, value: float):
28
+ self._unloadingPropertyAccessor.setDoubleProperty("InitialE", value)
29
+ def getUnloadingPref(self) -> float:
30
+ return self._unloadingPropertyAccessor.getDoubleProperty("Pref")
31
+ def setUnloadingPref(self, value: float):
32
+ self._unloadingPropertyAccessor.setDoubleProperty("Pref", value)
33
+ def getUnloadingAlpha(self) -> float:
34
+ return self._unloadingPropertyAccessor.getDoubleProperty("Alpha")
35
+ def setUnloadingAlpha(self, value: float):
36
+ self._unloadingPropertyAccessor.setDoubleProperty("Alpha", value)
37
+ def getProperties(self):
38
+ return {
39
+ "InitialE": self.getInitialE(),
40
+ "Pref": self.getPref(),
41
+ "Alpha": self.getAlpha(),
42
+ "UnloadingInitialE": self.getUnloadingInitialE(),
43
+ "UnloadingPref": self.getUnloadingPref(),
44
+ "UnloadingAlpha": self.getUnloadingAlpha(),
45
+ }
46
+ def setProperties(self, InitialE: float = None, Pref: float = None, Alpha: float = None, UnloadingInitialE: float = None, UnloadingPref: float = None, UnloadingAlpha: float = None):
47
+ if InitialE is not None:
48
+ self.setInitialE(InitialE)
49
+ if Pref is not None:
50
+ self.setPref(Pref)
51
+ if Alpha is not None:
52
+ self.setAlpha(Alpha)
53
+ if UnloadingInitialE is not None:
54
+ self.setUnloadingInitialE(UnloadingInitialE)
55
+ if UnloadingPref is not None:
56
+ self.setUnloadingPref(UnloadingPref)
57
+ if UnloadingAlpha is not None:
58
+ self.setUnloadingAlpha(UnloadingAlpha)
59
+ class Formula1StageFactorBase(IStageFactorBase):
60
+ def __init__(self, id : str, stageFactorID : str, client : Client):
61
+ super().__init__(id, stageFactorID, client, StiffnessStageFactorService_pb2_grpc.StiffnessStageFactorServiceStub(client.channel))
62
+ def getAlphaFactor(self) -> float:
63
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Formula1_Alpha")
64
+ def getInitialEFactor(self) -> float:
65
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Formula1_InitialE")
66
+ def getPrefFactor(self) -> float:
67
+ return self._stageFactorPropertyAccessor.getDoubleProperty("Formula1_Pref")
68
+ class Formula1DefinedStageFactorBase(Formula1StageFactorBase):
69
+ def setAlphaFactor(self, value: float):
70
+ self._stageFactorPropertyAccessor.setDoubleProperty("Formula1_Alpha", value)
71
+ def setInitialEFactor(self, value: float):
72
+ self._stageFactorPropertyAccessor.setDoubleProperty("Formula1_InitialE", value)
73
+ def setPrefFactor(self, value: float):
74
+ self._stageFactorPropertyAccessor.setDoubleProperty("Formula1_Pref", value)
75
+
76
+ ################ Code below this line will not be overridden ################
77
+ from ._PropertyAccessor import LoadingMaterialStiffnessFormulaPropertyAccessor, UnloadingMaterialStiffnessFormulaPropertyAccessor
78
+ from rs3.properties.material.constitutiveModel.stiffness.GeneralizedHoekBrownEstimation import GeneralizedHoekBrownEstimation
79
+ import rs3.generatedFiles.MaterialStiffnessFormulaService_pb2 as MaterialStiffnessFormulaService_pb2
80
+ from rs3.properties.stageFactors.StageFactorBaseInterfaces import AbsoluteStageFactorInterface
81
+
82
+ class Formula1StageFactor(Formula1StageFactorBase):
83
+ def __init__(self, id: str, stageFactorId: str, client: Client):
84
+ super().__init__(id, stageFactorId, client)
85
+
86
+ class Formula1DefinedStageFactor(Formula1DefinedStageFactorBase):
87
+ pass
88
+
89
+ class Formula1(Formula1Base):
90
+ def __init__(self, client: Client, id: str):
91
+ super().__init__(client, id)
92
+ self._propertyAccessor = LoadingMaterialStiffnessFormulaPropertyAccessor(client, id, MaterialStiffnessFormulaService_pb2.IsotropicFormulaType.FORMULA_1)
93
+ self._unloadingPropertyAccessor = UnloadingMaterialStiffnessFormulaPropertyAccessor(client, id, MaterialStiffnessFormulaService_pb2.IsotropicFormulaType.FORMULA_1)
94
+ self.GeneralizedHoekBrownEstimation = GeneralizedHoekBrownEstimation(client, id)
95
+ self.StageFactorInterface = AbsoluteStageFactorInterface[Formula1DefinedStageFactor, Formula1StageFactor](id, client, Formula1DefinedStageFactor, Formula1StageFactor)
96
+