User-defined checks integrated in SCIA Engineer


Version 14 of SCIA Engineer brought users the possibility to implement their own engineering calculations and use these as plug-in checks during their everyday work with CAE projects -- e.g. in a graphical review of overall capacity in a 3D structure, in an AutoDesign optimisation, and in reporting. Design checks related to:

  • the resistance or stability of members with irregular geometry, or of members made from new materials,
  • the adequacy of section size and reinforcement area according to local standards which we do not currently support,
  • foundation checks based on sophisticated deformation theories,

User-defined checks are added by you, your colleagues, by students and academics, and by freelance developers hired by SCIA.


SCIA Engineer automates a vast variety of design checks according to national and international standards.1D beams, 2D plates, 0D joints and supports may be verified according to rules given in norms such as the EUROCODE, American and Brazilian standards, etc., taking into account material characteristics, internal forces and other load effects that are either input in the CAE model or calculated during FEM-based analysis.

In spite of continuous effort to implement and maintain an ever-growing collection of checks, the scope of SCIA Engineer does not extend over all design rules which are being published worldwide. For this reason, a revolutionary feature in this version of SCIA Engineer allows the user him-/herself to link checks and execute these using analysis data and FEM results from the 3D model. Moreover, user-defined checks are handled in the same way as in-house checks.

Who is it for?

Users who perform structural analysis and standard checks in SCIA Engineer now have the possibility to fill in for a missing check or extend existing checking algorithms by simply defining the necessary variables and formulas, and the layout of the check documentation.

New checks are defined in the engineering sheet platform Design Forms. The versatile interface between SCIA Engineer and Design Forms guides the user through a simple, semi-automated linking process, while the results of the checks are displayed on the 3D structure and a report is send to the project documentation in the Engineering Report.

User story 1 - timber checks

The user would like to perform timber design of beams according to the Australian standard AS 1684-1. He is aware of the proper design rules that he should follow when performing the checks, but would like to add these rules as permanently available, automated checks in SCIA Engineer.

  • He whites the necessary check algorithms in Design Forms, where he refers to variable quantities such as material properties and internal forces (normally stored in the CAE model in SCIA Engineer).
  • He may define an input dialogue for any variable that will not be available in the CAE model -- the used formulas may refer to e.g. code-specific parameters linked to material class or atmospheric conditions. Such variables will be assigned values manually, upon the execution of the check within SCIA Engineer.
  • He then links the user-defined check(s) by calling the SCIA Design Form file(s) that contain the check algorithm (extension CLC).
  • He may limit the application of the check to members of certain material (e.g. timber), to member types (e.g. 1D, 2D, etc,) and store the check permanently in the tree menu for user-defined checks, where he can access it in the future.
  • If additional variables should be assigned values before the check execution, this is done via an identical input dialogue to the one the user defined in Design Forms. Values may be defined per member, whereas default values will be used for all members not assigned such data.

As soon as all necessary data is available (e.g. analysis results from a calculation run) the user calls the check by a single click and results are immediately plotted on the 3D structure. In the case of the described timber design, unity checks are plotted -- diagrams are displayed on each timber beam, with values lower than 1.0 for members that fulfil the check, and higher than 1.0 for members with insufficient capacity. Coloured representation in the diagrams make members with insufficient capacity easier to spot.

The user may then append the check description and its results to the Engineering Report. The detailed check report is identical to what is defined in the Design Forms application.

User story 2 - cold-formed steel sections with holes

The user would like to check cold-formed steel beams at the location of web openings according to the AISI S100 North American Standard. The check has already been created in Design Forms by another user, who has shared it with the engineering community.

  • The check definition does not differ from what is described in the user story above -- a wide range of analysis data and results may be accessed via the open platform, e.g cross-section dimensions, loads on the members, etc.
  • The intelligent interface between SCIA Engineer and Design Forms allows the creator of the check to define a valid national standard for the new check. Thus, if the check is defined as an IBC check, it will only be visible in the SCIA Engineer tree in projects where the IBC code is active.
  • The end-user now calls the shared CLC file via the Design Forms checks interface in SCIA Engineer.
  • She may define the types of members for which the checks should be performed (1D members), the type of material, and optionally, the specific location in the tree where the check should be accessed from.
  • She defines, per member, the location and dimensions of web openings and any additional data needed for the check (in the dialogue made by the creator of the CLC file).

The check results are now displayed on all steel members in the structure and are available via the Engineering Report in brief and detailed form.

A smart handling of unit conversions for input and result variables is useful in all types of projects and checks, especially when the check may be performed using either metric or imperial units. In the standalone checks in Design Forms, each variable is assigned a unit -- e.g. meters, millimetres, etc. User-defined checks that will be accessed from within SCIA Engineer, however, support the definition of an independent unit type for each result variable that is calculated via the external check. In this way, even if the check is written in the metric unit system, results from the check will be displayed in SCIA Engineer in the active unit set defined in the Setup options of SCIA Engineer - e.g. inches, feet and pounds.

How it works

  • The Design Forms platform includes a set of functionalities that enable the simple programming of engineering calculations, handling of variables with units, creation of fine-tuned input dialogues and project documentation with graphical output and multiple layouts. The user writes the needed check as he would in the standalone version of Design Forms.
  • Input variables whose value should be taken from the CAE model are assigned standardized strings in Design Forms, e.g. InternalForces.My for the bending moment My per section of a beam. An exhaustive list of the accessible data in CAE models is available to the user.
  • Result variables may be printed graphically in the 3D window of SCIA Engineer. It is possible to define unit and entity type for each result variable, and options related to the graphical display - along which axis and in which direction should a result variable be printed, etc.
  • Conditions determine the check visibility in the menu of SCIA Engineer, for what type of members the check should be performed, which load combinations the check should use - for ULS or SLS.
  • Referencing of input variables from the CAE model and the sending of calculated results back to SCIA Engineer happens directly via TCP/IP communication, ensuring high speed of the check execution.
  • The user may create and organise his/her own tree menu for custom checks in order to store all checks he would like to use. Menu trees may be saved and shared with other users, trees of multiple users can be merged in order to use checks defined on a number of PCs.


User-defined checks based on the open platform of Design Forms are a step beyond linking spreadsheets made in MS Excel ©. Without cell mapping and with the intelligent handling of variables, the new solution is both simple and fool-proof.

  • Input data per member and input data for all members are handled separately, allowing for the definition of variable defaults;
  • Reuse of the input dialogue and calculation report created in Design Forms gives the user the freedom to customise his/her plug-in to own liking, and create improved versions in the future. The graphical features of Design Forms make it possible to create tables, images, panels and tabs in the dialogue, and dynamic images, tables and graphs in the report.
  • The linking procedure is semi-automated and it is possible to cross-check the data that is transferred.
  • A system of notes, warnings and error messages notifies the user when problems occur.
  • Usage and standard workflow for linking user-defined checks are explained in the manual and shown on examples.
  • Similar handling of user-defined and built-in checks -- when it comes to graphical display, units, warning and error messages, AutoDesign, reporting, and the transparent interface between SCIA Engineer and Design Forms -- is what makes the new open platform unique.

The potential of the open platform was demonstrated in SCIA Engineer version 2013 by the implementation of concrete design according to the Brazilian code entirely based on calculation sheets (forms) made in Design Forms.

Highlighted features

A number of features ensure that the open platform is user-friendly for both the developers and re-users of user-defined checks.

Design Forms Checks Menu

  • All new checks and menus for input data per check are stored in the same place - a tree menu called "Design Form Checks."
  • The user may arrange and organise this tree, assign icons to individual checks to make them easer to find.
  • He may save the tree and send it to other users, or he may integrate another user's tree into his own.

Conditions for User-defined checks

  • Conditions ensure the simplicity of the linking process:
    • A check type automatically determines the location in the tree menu - steel checks, concrete checks, other checks, etc.;
    • Norm code conditions limit the check visibility to projects where the selected code or national annex is active.
    • An element type determines for which elements the check should be executed - 1D members, 2D members, etc.
    • An applicable material condition determines for which members the check will be executed depending on the assigned material.
    • An applicable limit state condition determines which load combinations will be used during the check execution - ULS or SLS.

    These conditions may be set both in Design Forms and in SCIA Engineer.

    Reuse of the Design Forms dialogue

    The API in SCIA Engineer displays the input dialogue as defined and visible in Design Forms.

    • No menu definition is required after linking;
    • The reuse of the input dialogue and calculation report created in Design Forms gives the user great freedom in organising his/her plug-in check - free arrangement for all items and support for any colour and shape are ensured.
    • The dialogue may be edited at any time in Design Forms.
    • The graphical features of Design Forms enable the user to have tables, images, panels and tabs in the dialogue, and dynamic images, tables and graphs in the report.

    Calculation speed

    • Data transfer between the two applications (Design Forms and SCIA Engineer) is done directly via TCP/IP communication.
    • Checking multiple members is done by parallel processes - while the analysis is performed for one member, data is read for the following member.
    • The user may use application switches that allow him to list all data that is being transferred during the check - both names and values of variables.

    Document support

    • A brief summary of all calculated data may be viewed and exported to the Engineering Report in table form.
    • The detailed check report is as designed in the source CLC file - this report may be viewed in SCIA Engineer, exported to the Engineering report, or its layout may be edited in Design Forms BUILDER application.
    • Greek symbols, sub and super scripts are supported.
    • The document support for user-defined checks is an additional feature, different to the SDF link in the Engneering report. The latter requires that the SDF user application be shown to the user so that he/she can define input variables and select a layout. Document support for user-defined checks ensures results are readily available in the Engineering Report, thus, no calling of the SDF USER application is necessary.


    • User-defined checks may use as input data the properties of cross-sections currently assigned to steel members in the 3D model.
    • Because of this, cross-section optimisation is performed in the same way as when in-house checks are called.
    • The AutoDesign feature browses though the profile library of SCIA Engineer and the classes of sections (IPE, HEA, etc.) defined there.


    • Freedom to create your own calculation algorithms and use the graphical, computational and reporting capabilities of SCIA Engineer to execute them.
    • A fully integrated solution that does not require retyping of data, cell mapping of spreadsheets, or scrutiny of transferred data during the checks.
    • Separate handling of input data per element and general input data for all elements.
    • Intelligent handling of variables, units, graphical display, user-defined menus and trees.
    • High calculation speed due to parallel processing and file-free transfer of data inside the open platform.
    • Support for AutoDesign optimisation for 1D steel members within the SCIA Engineer Profile Library.
    • Export of calculation reports to project documentation in the Engineering Report
    • Intellectual property protection as a step towards creating a market place, where users may share or sell their plug-in calculations, or collaborate to create powerful design packages.

    Iveta Georgieva


    References and related reading