Parametric Design with SCIA Engineer

Monday, 17 December, 2018

Parametric design with SCIA Engineer is an easy process which follows an intuitive workflow. In more than 90% of the cases, you can use SCIA Engineer in an interactive way. This means that you perform keyboard input and use mouse clicks to enter or modify data and properties while following consequent steps in your workflow.

Parametric Design in SCIA Engineer

The steps in this workflow are:

  1. Modelling: in the first step you define the geometry, i.e. you input all columns, beams, walls,  slabs, etc. with all their properties. Then, you need to complete your analysis model by adding boundary conditions and their properties.
  2. Loading: you can input loads or you can take advantage of some of the many load generators. You also define load cases and input or generate load combinations.
  3. Analysis: in the next step, you launch the calculation part of SCIA Engineer.
  4. FEM Results: after the calculation is finished, you visualize the calculated results both numerically and graphically.
  5. Design & Checks: SCIA Engineer offers a broad range of multi-material design and check calculations. This enables you to verify and optimise the usage of the materials in your analysis model.
    Besides these build-in checks, SCIA Engineer also offers you the possibility to use tailor-made user-defined checks, prepared in Excel or Design Forms.
    In that case, the user-defined check reads the model input data and analysis results, performs the tailor-made calculations and sends the final results back to SCIA Engineer where they are visualised the same way as any other result calculated by SCIA Engineer itself.
    For Excel, the model-geometry data are limited to nodes and 1D members and the calculations are created using Excel formulas and VBA-macros.
    When using Design Forms, also 2D members are handled and the calculations are defined in the Design Forms scripting language.
  6. Reports: Next to a common screen preview, the integrated reporting tool provides a feature-rich environment for generating up-to-date tables and pictures with input data and results.

Parametric design is a process that is based on algorithmic thinking. In a normal workflow we can assume that the end results (FEM Results and Design & Check results) depend on the input data (Modelling and Loading data). So, expressing this input data as a set of parameters and rules that can be edited, allows us to manipulate the end results in such a way that additional user-criteria can be fulfilled.

Parametric Design in SCIA Engineer

A simple example can be: find such a shape of a bowstring bridge for which the weight of the bridge is minimal. In this case, the additional user-criterion is the minimal weight. The parameters that can be changed are the geometry (position of the nodes), the dimensions and thickness of the cross-sections. It is obvious that also the resistance criteria must be met, i.e. Von Mises stresses are below limit values.  

In this a case, we need the possibility to automate or ‘script’ each of the above-mentioned 6 steps in our workflow. We need a script (algorithm) that is able to input and change the input data (position of nodes, cross-section data). Besides that, we also need to run the analysis to read the Von Mises stresses. Based on the stresses, the input data is changed by the script, the analysis is performed again, and the new Von Mises stresses are returned. These steps are repeated until the weight of the bowstring bridge fulfils the defined criterion.

Together with the setup of SCIA Engineer, we deliver a script-tool (esa_xml.exe) that can be called from within any programming environment (.NET, Java, Pascal…) or scripting environment (VBA, Grasshopper for Rhino, JavaScript, Python, PowerShell, Haskell…). The script-tool runs SCIA Engineer in the background (without its graphical interface) and performs required tasks in SCIA Engineer.

Parametric Design in SCIA Engineer

The script-tool provides for a “scripted” equivalent for each of the 6 steps in our workflow: 

  1. Modelling: nodes, 1D and 2D members and boundary conditions can be defined in a text file.
    This text file is imported into a SCIA Engineer project by our script-tool.
  2. Loading: loads, load cases and load combinations can also be defined in a text file.
    This text file is imported into the SCIA Engineer project by our script-tool too.
  3. Analysis: the script-tool starts the analysis.
  4. FEM Results: after the calculation has finished, the script-tool uses a document template to export the results to a text file, a html file or an xml file.
  5. Design & Checks: the results from the build-in checks, as well as from the user-defined (Excel or Design Forms) checks can also be exported by the script-tool via a document template to a text-file, a html file or an xml file.
  6. Reports: the script tool can update any existing report, and export this to a text-file, a html file or an xml file.


Parametric design with SCIA Engineer is done by many customers, since it is relatively easy and straightforward. You only need to write and read text files and to start an external executable from within your programming or scripting environment. This technique can be used to optimise even complex structures like football stadiums, roller coasters, storage buildings, cranes…. 

Has this article sparked your interest in parametric design?
Contact us today to learn how this technology can help you with your projects.

Parametric Design in SCIA Engineer