How to modify programme module settings during the SOFiPLUS export

Have you ever wondered how to modify the default settings of SOFiPLUS during the export?

In this post, I want to discuss a feature in SOFiPLUS which isn’t obvious and even more difficult to find. And although, in most cases, there might be no need to take advantage of it – some of you might be more than excited to learn that this option exists.

There are several use cases in which tweaking the specific options during the export from SOFiPLUS are beneficial. Still, I want to focus on a single one to discuss the principles of how this feature works.

SOFiPLUS messages

When working in SOFiPLUS and exporting the structure, SOFiPLUS informs you about warnings, errors and other things happening during the export in the Messages Tab. It is a great way to keep track of what is going on and to fix the model if necessary

As an example; when creating a structural line not connected to the model, SOFIMSHC will print a message such as:

+++++ warning no.   383 in program smPostprocess
Structural line 2 is (partially) not connected with the model. The dispensable parts of the line have been removed. This behaviour can be suppressed using CTRL DELN 0.


As you want all elements connected to get a proper model, this message helps to spot the issue. However, if you create structural lines for further tweaking afterwards in CADiNP, you don’t want SOFIMSHC to remove those elements. And the only way to keep those structural lines is by connecting them to the model or assigning a dummy cross-section.

Include text snippets

However, there is a way to avoid this workaround.

The message includes a hint on what you can do to suppress removing the element in question; you need to use “CTRL DELN 0”. The only problem, though; where are you supposed to enter this suggested text snippet?

I’m sure you ran into one or two of these returned messages by yourself already.

So let’s see how you can get the suggested text snippet to work, as there is no way to enter any text input in SOFiPLUS directly.

First, we must understand which programme module the text snippet needs to be entered; the warning states SOFIMSHC.

If you aren’t familiar with the text input in SOFiSTiK or don’t have in-depth knowledge about the used programme modules in SOFIPLUS or general, I’m happy to help out. The programme module SOFIMSHC discretises the structural elements into finite elements. So it creates the mesh.

Second, we have to enter the text snippet at the correct position in a simple text file located in the project folder.

So, you will have to create the file msh.include within the project folder. The content of the file is the suggested text snippet “CTRL DELN 0” (without the apostrophes, of course)

After creating the file and saving the input, SOFiMSH-C includes its content during the export.

Behind the curtain

Let’s take a look behind the curtain at what is going on. Before SOFiPLUS processes your graphical input, it gets compiled into text files depending on the required programme module. And the syntax of these text files is CADiNP.

The input block of every programme module contains three mandatory input lines:

+PROG SOFiMSHC (or a different module name)

The script to mesh the model comes between the HEAD and END commands.

(SCRIPT automatically created in SOFiPLUS )

The additional information entered in the msh.include file gets inserted after the (SCRIPT) input. The #include CADiNP command replaces the entire input line #include “msh.include” with the actual content in the msh.include file.

(SCRIPT automatically created in SOFiPLUS )
#include “msh.include”

Which *.include files names are allowed

You can modify a few programme modules with a *.include file. Mainly those used in SOFiPLUS, which are:

  • aqa.include – AQUA programme module
    Will be considered in a new AQUA programme module after the SOFiMSHC programme module.
  • msh.include: SOFiMSHC programme module
  • lfd.include: SOFiLOAD programme module
    It will be only considered if a load has been applied to the model. (no loads – no SOFiLOAD programme module)
  • bpt.include: TENDON programme module
    Beam tendons (Beam PT)
  • spt.include: TENDON programme module
    Tendons in area elements (Shell PT)
  • tnd.include: TENDON programme module
    Tendons in slab prestressing (Slab PT)

The *.include files will be considered for every project inside the project folder.

Different commands and options are available depending on the programme modules (AQUA, SOFIMSHC, SOFILOAD and TENDON). I recommend checking the user manuals before getting frustrated when running into errors during the export.

Besides using the *.include files to tackle default settings, there are a few more things you can do.

Report settings

You can control the reports are available from the top of the SOFiPLUS sidebar.

SOFiPLUS Reports

The default settings might be just fine, but you can tailor the report as you want.

Just add the ECHO command and options to meet your requirements. And don’t forget, as most of the programme modules have different options for the ECHO command, check the user manuals and search for the command ECHO.

Create new elements

The feature wasn’t developed to introduce new elements or to create load cases. It should work to a certain extent but isn’t recommended.

There are better ways to do that, such as adding a “Text Editor” task in SOFiSTiK Structural Desktop.

Wrap Up

The *.include files are the missing piece of integrating suggested text snippets printed in the message tab in SOFiPLUS. And I very much like the fact of being able to tailor the reports created in SOFiPLUS – especially the Tendon and SOFIMSH-C reports. However, I would never use the *.include files to create elements or load cases as there are more efficient ways available.

One last important thing, this workflow is possible since version 2022!

Software version related to this post: SOFiSTiK SOFiPLUS v2022-01.