May 20, 2025

Talk to Your ETABS Model: How to Automate Structural Post-Processing with AI and Python

Alejandro Duarte Vendries

by Alejandro Duarte Vendries

Post-processing ETABS models can be repetitive and challenging due to managing multiple Python scripts or Excel macros at the same time, often leading to duplicated post-processing operations and slow workflows. In this blog, I'll introduce how you can simplify your ETABS workflow using an easy-to-use web application built with Python and VIKTOR, powered by an LLM agent. You can directly talk to your ETABS model, simplifying and speeding up the entire post-processing.

Join your colleagues

Discover if your company uses VIKTOR and gain access by entering your company email.

Challenges structural engineers face with ETABS post-processing

Every structural engineer who uses ETABS regularly deals with post-processing hundreds of results. When the model is large, I often use multiple custom scripts to better visualize the results, helping me understand support reactions, internal forces, and displacements. But this leads to the problem of managing separate tools, which is inefficient. Each automation requires inputting the same file multiple times, and switching between scripts breaks the workflow and slows down productivity.

In the past, I tried grouping all these automations into a single application. However, multiple user interfaces in one app became overwhelming, especially for colleagues. They had to learn each tool separately, which led to back-and-forth communication and a steep learning curve.

Let's illustrate this with a real-case example of different post-processing tasks and automations typically seen in structural engineering projects:

1. Load and process the ETABS results
2. Review section properties, materials, and load cases
3. Check element internal loads
4. Clearly display support reactions
5. Use support reactions to design foundations
6. Review displacements and deflections

Each of these tasks is often automated separately, making their combined use complex, inefficient, and error-prone, which leads to low user adoption.

The solution I found most effective to overcome this is integrating AI with a low-code platform like VIKTOR.AI. Using Python, I'm able to create web applications easily, where engineers can easily talk with their ETABS models. The AI works like a support engineer, automatically selecting the right automation based on user input, executing tasks, and clearly presenting results.

Keep reading to see how adding AI to a web application turns post-processing into a fun and easy task that improves your workflow and boosts productivity.


Automating post-processing by talking to your structural model

Before integrating AI into our app, it is important to emphasise the necessity of keeping the human in the loop. Although these AI models are powerful, they are by no means a replacement for engineering knowledge. Taking this into consideration, the proper way to integrate AI into engineering workflows is to adopt a controlled agent-tool integration approach as follows:

  1. Define the Scope: A structural engineer outlines the scope of the automation.

  2. Tool Creation and Review: Each tool is created, defined, and thoroughly reviewed to ensure engineering correctness.

  3. Tool Integration: When a structural engineer validates the output of the tools, it is then integrated into the agent.

This approach is much like having a graduate engineer; after you teach them a set of tools, they stay within that defined scope. With this framework in place, let's now explore how our agent enables us to talk to our structural model safely.

Step 1: Upload and process ETABS results with an AI agent

The first step is to upload your ETABS model as an Excel file. Traditionally, web apps include a section with step-by-step instructions that users must follow to upload their data in the correct format. Instead, this app uses a chat interface powered by an LLM agent through the LLM Chat component to simplify that process.

Users can start by greeting the agent and asking how to export their .xlsx file from ETABS. The LLM agent handles the entire conversation, guiding users clearly and interactively. It explains which sheets are required and what units to use.

Once the file is ready, users can upload it through a FileField. The backend automatically processes the data, and the LLM agent starts post-processing the file using its tools, allowing the user to chat directly with the structural model.


Step 2: Ask the AI to review section properties, materials, and load cases

After the model is uploaded and processed, our agent receives context about the model and starts using its tools to post-process the results. For instance, it can automatically generate a 3D visualization so the user can confirm that the import process went smoothly.

We can now chat with the AI agent and ask about the model. For example, I often check the model parameters first to confirm that the results make sense. You can also request a bill of materials or ask about load combinations to explore the model in more detail.


Step 3: Check internal loads using natural language commands

Talking with the agent is just the beginning. As mentioned, the agent has a set of tools available to post-process the model. For instance, the user can ask the agent to plot internal loads by load cases and load type. Instead of navigating ETABS conventions like "P" or "V1", you can simply say:

"Plot the internal axial loads for load case 1.0DL + 1.0LL"

These tools are simple Python functions—the AI agent just inputs the proper values and returns the results clearly, much like creating a PlotlyResult in a standard Viktor app.


Step 4: Visualize ETABS support reactions with AI-powered heatmaps

The same principle applies to support reactions. For complex buildings, it is often helpful to visualize reaction loads with a heatmap to quickly identify heavily loaded columns. By asking the agent, it will run the corresponding tool and display the results in the app.


Step 5: Use AI to design foundations based on support reactions

You can also use these results to design foundation pads or other structural elements. For instance, you can tell the AI model to predesign foundation pads by specifying a soil bearing pressure, while the model reminds you to use the correct units. Additionally, the agent can create an envelope of results so you can design the foundation considering all relevant load combinations.


Step 6: Automate displacement checks and beam deflection visualization

Finally, you can automate serviceability checks by asking the model (AI agent) to visualize beam deflections. With color-coded outputs, it is easy to identify elements with the greatest displacements. You can expand the app's capabilities by adding features like custom filters or automated reporting.


Try the app (open source on GitHub)

Ready to integrate AI into your workflows? This app is open source on GitHub, so you can adjust it to fit your needs. You can modify existing tools or develop new ones for the designs you work on.

Making changes is simple. The agent tools are added or updated just like in any other VIKTOR app. The only thing you need is an OpenAI API key, which you can get from OpenAI. With a few small code edits, you can also connect the app to models from Anthropic or Deepseek, giving you more options to work with. You can check the ReadMe for more details.

Bring AI into your structural workflows

In this blog, we covered the essential steps to automate ETABS post-processing by talking directly with your structural model through AI. As shown, there's no magic behind the AI integration, just solid engineering knowledge combined with Python and LLms!

Next, you can start developing your own tools for your LLm agents. If you're new to processing ETABS data, check the tutorial to learn how to post-process results from ETABS files effectively.

Developing AI-powered web apps for structural engineering has never been simpler. Join the growing community of engineers automating their tasks—create your own VIKTOR account now and enhance your engineering projects!

Start building apps for free

Start Now!
Share

Related Blog Posts

May 07, 2025

How Engineers Can Use AI Agents and MCP Servers to Work Smarter

Read more

April 22, 2025

Build AI powered applications: Detect and Evaluate concrete cracks with VIKTOR.AI

Read more

April 01, 2025

Standardize data and tools across engineering workflows with VIKTOR.AI

Read more
Get our best content in your inbox

Subscribe to our newsletter and get the latest industry insights

Customer Cases

Blog Posts

White Papers & Guides