{ "cells": [ { "cell_type": "markdown", "id": "aececd27", "metadata": { "papermill": { "duration": 0.004805, "end_time": "2026-03-19T15:24:29.385712", "exception": false, "start_time": "2026-03-19T15:24:29.380907", "status": "completed" }, "tags": [] }, "source": [ "(Support Pile Results Example)=\n", "# Pile Result Script Examples" ] }, { "cell_type": "markdown", "id": "8f03602b", "metadata": { "papermill": { "duration": 0.001071, "end_time": "2026-03-19T15:24:29.388160", "exception": false, "start_time": "2026-03-19T15:24:29.387089", "status": "completed" }, "tags": [] }, "source": [ "Download the [SupportResults.fez](https://github.com/Rocscience/rs2-scripting/blob/main/docs/example_code/example_models/SupportResults.fez) for this example." ] }, { "cell_type": "code", "execution_count": 1, "id": "efd68734", "metadata": { "execution": { "iopub.execute_input": "2026-03-19T15:24:29.392517Z", "iopub.status.busy": "2026-03-19T15:24:29.392235Z", "iopub.status.idle": "2026-03-19T15:24:35.075931Z", "shell.execute_reply": "2026-03-19T15:24:35.074741Z" }, "papermill": { "duration": 5.688513, "end_time": "2026-03-19T15:24:35.077798", "exception": false, "start_time": "2026-03-19T15:24:29.389285", "status": "completed" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stage 1 Pile Results\n", "\n", "\tPile Unique ID = Pile0\n", "\tJoint Result for Pile with ID Pile0:\n", "\n", "\t\tJoint Unique ID = Pile0\n", "\t\tJoint Element Results:\n", "\n", "\t\tStart X-Coord = 9.00086957359009, Start Y-Coord = 11.5846033227529, End X-Coord = 9.00086957359009, End Y-Coord = 7.79916982912479\n", "\t\tDistance = 1.8927167468140547, Normal Stress = -0.92443, Shear Stress = 0.28125, Confining Stress = 1021.4\n", "\t\tNormal Displacement = -4.6221e-05, Shear Displacement = 0.00010601666666666666, Yielded = False\n", "\n", "\tLiner Result for Pile with ID Pile0:\n", "\n", "\t\tLiner Unique ID = Pile0\n", "\t\tLiner Element Results:\n", "\n", "\t\tComposite Layer = 2147483647, Node Start = 18, Node End = 6\n", "\t\tStart X-Coord = 9.00086957359009, Start Y-Coord = 11.5846033227529, End X-Coord = 9.00086957359009, End Y-Coord = 7.79916982912479\n", "\t\tDistance = 1.8927167468140547, Axial Force 1 = 4.7223, Axial Force-Mid = 4.1487\n", "\tAxial Force 2 = 3.5751, Moment 1 = 2.2078, Moment-Mid = 2.2078\n", "\tMoment 2 = 2.2078, Shear Force = -3.4994, Shear Force-Mid = -6.8834e-15\n", "\tShear Force 2 = 3.4994, Displacement Total 1 = 0.0005066427731646825, Displacement Total - Mid = 0.0004672696088983318\n", "\tDisplacement Total 2 = 0.00043808455422326867, Displacement X 1 = 0.00027064, Displacement X-Mid = 0.00018693\n", "\tDisplacement X2 = 9.2443e-05, Displacement Y1 = -0.0004283, Displacement Y-Mid = -0.00042825\n", "\tDisplacement Y2 = -0.00042822, Axial Symmetry Force 1 = None, Axial Symmetry Force-Mid = None\n", "\tAxial Symmetry Force2 = None, Axial Symmetry Moment 1 = None, Axial Symmetry Moment-Mid = None\n", "\tAxial Symmetry Moment2 = None, Beam Yield = False, Temperature 1 = 0.0\n", "\tTemperature-Mid = 0.0, Temperature 2 = 0.0\n", "\n", "Stage 2 Pile Results\n", "\n", "\tPile Unique ID = Pile0\n", "\tJoint Result for Pile with ID Pile0:\n", "\n", "\t\tJoint Unique ID = Pile0\n", "\t\tJoint Element Results:\n", "\n", "\t\tStart X-Coord = 9.00086957359009, Start Y-Coord = 11.5846033227529, End X-Coord = 9.00086957359009, End Y-Coord = 7.79916982912479\n", "\t\tDistance = 1.8927167468140547, Normal Stress = -0.69699, Shear Stress = 0.12483, Confining Stress = 930.99\n", "\t\tNormal Displacement = -3.484973333333334e-05, Shear Displacement = 6.241666666666667e-05, Yielded = False\n", "\n", "\tLiner Result for Pile with ID Pile0:\n", "\n", "\t\tLiner Unique ID = Pile0\n", "\t\tLiner Element Results:\n", "\n", "\t\tComposite Layer = 2147483647, Node Start = 18, Node End = 6\n", "\t\tStart X-Coord = 9.00086957359009, Start Y-Coord = 11.5846033227529, End X-Coord = 9.00086957359009, End Y-Coord = 7.79916982912479\n", "\t\tDistance = 1.8927167468140547, Axial Force 1 = -2.4216, Axial Force-Mid = -2.8941\n", "\tAxial Force 2 = -3.3667, Moment 1 = 1.6646, Moment-Mid = 1.6646\n", "\tMoment 2 = 1.6646, Shear Force = -2.6384, Shear Force-Mid = -4.996e-15\n", "\tShear Force 2 = 2.6384, Displacement Total 1 = 0.0005836992266932003, Displacement Total - Mid = 0.0005845855236866545\n", "\tDisplacement Total 2 = 0.000587707600938596, Displacement X 1 = -9.6168e-06, Displacement X-Mid = 3.4102e-05\n", "\tDisplacement X2 = 6.9699e-05, Displacement Y1 = 0.00058362, Displacement Y-Mid = 0.00058359\n", "\tDisplacement Y2 = 0.00058356, Axial Symmetry Force 1 = None, Axial Symmetry Force-Mid = None\n", "\tAxial Symmetry Force2 = None, Axial Symmetry Moment 1 = None, Axial Symmetry Moment-Mid = None\n", "\tAxial Symmetry Moment2 = None, Beam Yield = False, Temperature 1 = 0.0\n", "\tTemperature-Mid = 0.0, Temperature 2 = 0.0\n", "\n" ] } ], "source": [ "from rs2.interpreter.RS2Interpreter import RS2Interpreter\n", "import os\n", "\n", "def OutputJointResult(singleJointResult):\n", " jointID = singleJointResult.entity_id\n", " print(f\"\\t\\tJoint Unique ID = {jointID}\")\n", " joint_element_results = singleJointResult.joint_element_results\n", " print(\"\\t\\tJoint Element Results:\\n\")\n", " for jointResult in joint_element_results:\n", " start_x = jointResult.start_x\n", " start_y = jointResult.start_y\n", " end_x = jointResult.end_x\n", " end_y = jointResult.end_y\n", " distance = jointResult.distance\n", " normal_stress = jointResult.normal_stress\n", " shear_stress = jointResult.shear_stress\n", " confining_stress = jointResult.confining_stress\n", " normal_displacement = jointResult.normal_displacement\n", " shear_displacement = jointResult.shear_displacement\n", " yieldedStatus = jointResult.yielded\n", " print(f\"\\t\\tStart X-Coord = {start_x}, Start Y-Coord = {start_y}, End X-Coord = {end_x}, End Y-Coord = {end_y}\")\n", " print(f\"\\t\\tDistance = {distance}, Normal Stress = {normal_stress}, Shear Stress = {shear_stress}, Confining Stress = {confining_stress}\")\n", " print(f\"\\t\\tNormal Displacement = {normal_displacement}, Shear Displacement = {shear_displacement}, Yielded = {yieldedStatus}\\n\")\n", "\n", "def OutputLinerResult(singleLinerResult):\n", " linerID = singleLinerResult.entity_id\n", " print(f\"\\t\\tLiner Unique ID = {linerID}\")\n", " liner_element_results = singleLinerResult.liner_element_results\n", " print(\"\\t\\tLiner Element Results:\\n\")\n", " for linerResult in liner_element_results:\n", " composite_layer = linerResult.composite_layer\n", " node_start = linerResult.node_start\n", " node_end = linerResult.node_end\n", " start_x = linerResult.start_x\n", " start_y = linerResult.start_y\n", " end_x = linerResult.end_x\n", " end_y = linerResult.end_y\n", " distance = linerResult.distance\n", " axial_force1 = linerResult.axial_force1\n", " axial_force_mid = linerResult.axial_force_mid\n", " axial_force2 = linerResult.axial_force2\n", " moment1 = linerResult.moment1\n", " moment_mid = linerResult.moment_mid\n", " moment2 = linerResult.moment2\n", " shear_force1 = linerResult.shear_force1\n", " shear_force_mid = linerResult.shear_force_mid\n", " shear_force2 = linerResult.shear_force2\n", " displacement_total1 = linerResult.displacement_total1\n", " displacement_total_mid = linerResult.displacement_total_mid\n", " displacement_total2 = linerResult.displacement_total2\n", " displacement_x1 = linerResult.displacement_x1\n", " displacement_x_mid = linerResult.displacement_x_mid\n", " displacement_x2 = linerResult.displacement_x2\n", " displacement_y1 = linerResult.displacement_y1\n", " displacement_y_mid = linerResult.displacement_y_mid\n", " displacement_y2 = linerResult.displacement_y2\n", " axi_sym_force1 = linerResult.axi_sym_force1\n", " axi_sym_force_mid = linerResult.axi_sym_force_mid\n", " axi_sym_force2 = linerResult.axi_sym_force2\n", " axi_sym_moment1 = linerResult.axi_sym_moment1\n", " axi_sym_moment_mid = linerResult.axi_sym_moment_mid\n", " axi_sym_moment2 = linerResult.axi_sym_moment2\n", " beam_yield = linerResult.beam_yield\n", " temperature1 = linerResult.temperature1\n", " temperature_mid = linerResult.temperature_mid\n", " temperature2 = linerResult.temperature2\n", " print(f\"\\t\\tComposite Layer = {composite_layer}, Node Start = {node_start}, Node End = {node_end}\")\n", " print(f\"\\t\\tStart X-Coord = {start_x}, Start Y-Coord = {start_y}, End X-Coord = {end_x}, End Y-Coord = {end_y}\")\n", " print(f\"\\t\\tDistance = {distance}, Axial Force 1 = {axial_force1}, Axial Force-Mid = {axial_force_mid}\")\n", " print(f\"\\tAxial Force 2 = {axial_force2}, Moment 1 = {moment1}, Moment-Mid = {moment_mid}\")\n", " print(f\"\\tMoment 2 = {moment2}, Shear Force = {shear_force1}, Shear Force-Mid = {shear_force_mid}\")\n", " print(f\"\\tShear Force 2 = {shear_force2}, Displacement Total 1 = {displacement_total1}, Displacement Total - Mid = {displacement_total_mid}\")\n", " print(f\"\\tDisplacement Total 2 = {displacement_total2}, Displacement X 1 = {displacement_x1}, Displacement X-Mid = {displacement_x_mid}\")\n", " print(f\"\\tDisplacement X2 = {displacement_x2}, Displacement Y1 = {displacement_y1}, Displacement Y-Mid = {displacement_y_mid}\")\n", " print(f\"\\tDisplacement Y2 = {displacement_y2}, Axial Symmetry Force 1 = {axi_sym_force1}, Axial Symmetry Force-Mid = {axi_sym_force_mid}\")\n", " print(f\"\\tAxial Symmetry Force2 = {axi_sym_force2}, Axial Symmetry Moment 1 = {axi_sym_moment1}, Axial Symmetry Moment-Mid = {axi_sym_moment_mid}\")\n", " print(f\"\\tAxial Symmetry Moment2 = {axi_sym_moment2}, Beam Yield = {beam_yield}, Temperature 1 = {temperature1}\")\n", " print(f\"\\tTemperature-Mid = {temperature_mid}, Temperature 2 = {temperature2}\\n\")\n", "\n", "RS2Interpreter.startApplication(port=60089)\n", "current_dir = os.path.dirname(os.path.abspath(\"\")) \n", "interpreter = RS2Interpreter(port=60089)\n", "model = interpreter.openFile(rf\"{current_dir}\\example_models\\SupportResults.fez\")\n", "\n", "stages = [1, 2]\n", "\n", "results = model.GetPileResults(stages)\n", "\n", "for stageNum, allPileResults in results.items():\n", " print(f\"Stage {stageNum} Pile Results\\n\")\n", " for singlePileResult in allPileResults:\n", " pileID = singlePileResult.entity_id\n", " print(f\"\\tPile Unique ID = {pileID}\")\n", "\n", " joint_result = singlePileResult.joint_result\n", " print(f\"\\tJoint Result for Pile with ID {pileID}:\\n\")\n", " OutputJointResult(joint_result)\n", "\n", " liner_result = singlePileResult.liner_result\n", " print(f\"\\tLiner Result for Pile with ID {pileID}:\\n\")\n", " OutputLinerResult(liner_result)\n", "\n", "model.close()\n", "\n", "interpreter.closeProgram()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.0" }, "papermill": { "default_parameters": {}, "duration": 7.346672, "end_time": "2026-03-19T15:24:35.423735", "environment_variables": {}, "exception": null, "input_path": "C:\\Users\\GraceHu\\source\\repos\\RS2_Python_Client_Library\\docs\\example_code\\results\\pile_result_script_examples.ipynb", "output_path": "C:\\Users\\GraceHu\\source\\repos\\RS2_Python_Client_Library\\docs\\example_code\\results\\pile_result_script_examples.ipynb", "parameters": {}, "start_time": "2026-03-19T15:24:28.077063", "version": "2.6.0" } }, "nbformat": 4, "nbformat_minor": 5 }