Article

Automating Site Response Analysis Workflows with Python-based RSSeismic Scripting

Published on: Jul 31, 2026 Updated on: Aug 06, 2026 Read: 4 minutes
Authors:
  • Dylan Centella, Geotechnical Product Manager at Rocscience
  • Dr. Youssef M A Hashash, at University of Illinois Urbana-Champaign

Introduction: Unlocking Automation in Geotechnical Engineering

As engineering projects continue to grow in scale and complexity, engineers increasingly rely on automation to improve efficiency, consistency, and reproducibility across their analysis workflows. Rocscience is excited to introduce RSSeismic Scripting, powered by the Python software development kit, as part of the RSSeismic v3 release, to support these evolving requirements. 

RSSeismic Scripting is a Python software development kit that provides programmatic access to the RSSeismic desktop application through a locally hosted gRPC scripting server. It supports pre-processing, batch processing, post-processing, and data synthesis while using the existing RSSeismic analysis engine. It can be readily integrated with widely available Python tools and libraries to develop powerful customized engineering workflows.

Figure 1. Access to the Python ecosystem, provided by RSSeismic Scripting.

Python in Engineering Practice

Python has become one of the most widely used programming languages across engineering disciplines. It is commonly applied in geotechnical, structural, civil, mechanical, electrical, environmental engineering, as well as in scientific research and software development. Its widespread adoption is largely due to its readable syntax, relatively low learning curve, and extensive collection of libraries for scientific and numerical computing, data analysis, visualization, optimization, and machine learning.

Engineers use Python to automate repetitive calculations, process and organize large datasets, perform parametric and sensitivity studies, develop custom design tools, and generate consistent plots and reports. It is also frequently used to connect different software packages, convert data between formats, and create workflows that combine analysis, visualization, and documentation.

These capabilities make Python well suited for extending engineering software beyond standard graphical workflows. By providing programmatic access to analysis inputs, execution, and results, Python enables more efficient, repeatable, and scalable workflows, particularly for analyses involving many cases, large datasets, or customized processing requirements.

Automation of RSSeismic Workflows with Python Scripting 

Scripting uses code to define and execute a sequence of tasks that would otherwise be completed manually through a graphical user interface. A script records the analysis workflow as a repeatable set of instructions, allowing the same procedure to be applied consistently across multiple cases. RSSeismic Scripting provides programmatic access to the RSSeismic desktop application through a gRPC scripting server.

During pre-processing, scripts can create or open projects, define project settings, define soil profiles and layers, assign material properties, select input motions, and generate randomized profiles. These capabilities allow users to prepare large groups of analysis cases using a consistent procedure.

Batch processing allows users to run analyses across many profiles, motions, parameter combinations, or project files, and save the outputs without requiring the user to configure and execute each case individually through the graphical interface. This capability makes large parametric studies, sensitivity analyses, and large input motion suites more practical.

During post-processing and data synthesis, scripts can retrieve and combine results from multiple profiles, motions, projects, or external data sources. The outputs can be organized into structured tables or pandas DataFrames, used to calculate statistics, and generate summary plots. Standardizing these steps improves consistency across analysis cases and helps users move efficiently from individual results to broader engineering interpretations. 

For example, a site response study may include 10 soil profiles and 20 input motions, resulting in 200 analysis cases. A RSSeismic Scripting script can generate or update each profile, assign the required motions, run all profile-motion combinations, collect the results, and produce summary plots and statistics for comparison across the full study.

Integrating RSSeismic with Python Libraries

RSSeismic Scripting allows RSSeismic workflows to connect directly with the broader Python ecosystem. Analysis inputs and results can be combined with established libraries for numerical computation, data processing, visualization, statistical analysis, optimization, and reporting.

Libraries such as pandas provide efficient tools for organizing, filtering, comparing, and exporting tabular data. NumPy enables efficient vectorized calculations and numerical data processing, while Matplotlib and Plotly can be used to create high-quality customizable figures. SciPy provides additional tools for interpolation, signal processing, statistics, and optimization. Other libraries can support spreadsheet generation, machine learning workflows, interactive visualization, geospatial processing, and uncertainty quantification. These are just a few examples of potential linkages that RSSeismic Scripting enables.

Access to external libraries gives users greater flexibility in how they process, interpret, and communicate analysis results. It also allows project-specific calculations and reporting requirements to be incorporated directly into a reproducible Python workflow.

The Future of Scalable Seismic Analysis

RSSeismic Scripting extends the capabilities of RSSeismic beyond the graphical user interface by enabling engineers to automate repetitive tasks, execute large batches of analyses, and develop customized workflows using Python. Through direct integration with the broader Python ecosystem, users can combine RSSeismic analyses with established tools for data processing, visualization, optimization, reporting, and statistical analysis while continuing to leverage the existing RSSeismic analysis engine.

Whether streamlining routine analyses or building project-specific workflows, RSSeismic Scripting provides a flexible and reproducible framework for scaling site response studies and integrating site response analysis into broader computational workflows.

Ready to automate your RSSeismic workflows?

Leverage the scripting feature to streamline batch processing, parametric studies, and custom data analysis.

Start Your Free Trial
Back to top

More from Rocscience