Integrating engineering models into your probabilistic analysis

STRUREL comes with a powerful inline scripting language that allows you to enter analytical expressions directly within the GUI. This is very convenient for the analysis of simple models for which the limit-state function can be expressed in a few lines of code. For assessing the failure scenarios of advanced engineering models (such as finite element models), a computational model of the system of interest typically exists already. To help you integrate these advanced computational models into your probabilistic analysis, STRUREL is equipped with interfaces to common scripting/programming languages.

Interfaces to the following languages are readily available in STRUREL 2024:

  • FORTRAN: an imperative programming language that is especially suited to numeric computation and scientific computing
  • C/C++: a high-level, general-purpose programming language
  • Python: a very popular high-level general-purpose programming language
  • MATLAB: a proprietary numeric computing environment
  • Maple: a proprietary general-purpose computer algebra system
  • Mathematica: a proprietary software system for technical computing
  • Ruby: a high-level general-purpose programming language
  • Octave: a numeric computing environment, build with MATLAB compatibility in mind
  • R: a language and environment for statistical computing and graphics
  • Scilab: a free and open source software for engineers & scientists
  • Gauss: a powerful and flexible statistical modeling software

Sharing and documenting your projects

A probabilistic model consists of more than just the input files of STRUREL. For example, you might have created a PDF document, explaining the stochastic model and the reasons behind the modeling choices you made. Additionally, the code of your engineering model might be in a separate file if you make use of the external interfaces of STRUREL (see above).

By creating a STRUREL Add-On (SAO), you can package your entire project such that everything is contained in a single file - the SAO. A SAO can contain limit-state functions, the stochastic model, and associated documentation material (in form of PDF or image files). Through a SAO, you can conveniently pass on your entire model to others and/or easily utilize a model provided by someone else. You can also use a SAO to archive completed projects. The Add-on Viewer of STRUREL allows you to manage and view your Add-Ons.

SAO creator

Working with large data sets

To load or store large vectors or matrices within the external scripts linked to STRUREL, you can make use of MAT or HDF5 files. MAT or HDF5 files are binary containers originally designed to store workspace variables of a MATLAB session. Besides MATLAB, these files can also be used within other scripting languages like Python, Maple, Mathematica, Ruby, Octave, R, Scilab or Gauss.

To help you set up your stochastic model or assist you in debugging, STRUREL is shipped with a built-in Data File Viewer.

MAT viewer of STRUREL

Tailor-made external interfaces

Through the interfaces available for STRUREL, you can couple almost any external application/library to STRUREL. For code that is directly available in one of the supported languages, the coupling is straightforward. Even though coupling of general applications/libraries is doable, it will require some work and good programming skills. For example, if you want to couple a stand-alone application that reads an input file and generates an output file, you need to develop a wrapper that prepares the input file and retrieves the required information from the output file.

To save you the trouble of writing your own wrappers, we can assist you by developing wrapper interfaces tailored specifically to your needs. If you are interested, please get into contact with us:

Investigation of a spatial truss structure in COMREL

STRUREL powers the SOFiSTiK module RELY

The SOFiSTiK module RELY performs reliability analyses of engineering structures modeled by finite elements with SOFiSTiK. Under the hood, RELY is powered by the core of STRUREL. The seamless integration of RELY within SOFiSTiK gets rid of spurious interface problems and allows you to focus on your actual task: Adopting consistent models for both structural analysis and reliability assessment.
More information about RELY can be found here.