API and interoperability
Contents
- Export to IFC
- Improved import from IFC
- Improved import from SAF
- StruXML improvements
- FdScript improvements
- Insertion point for dwg drawings
Export to IFC
An option to export FEM-Design model to ifc file format is now available in the program. There are two ways to export structural models:
- save an entire model using Save as (ifc file format) command, or
- save an entire, or a partial model, i.e. selected objects, with the Export to IFC command.
Improved import from IFC
Following improvements and new features have been implemented and added regarding importing ifc models to FEM-Design:
Detailed object filtering
A typical problem with model-based collaborations is that models contain elements that are not relevant for structural analysis, such as architectural details, non-load-bearing structures or interior design objects. FEM-Design 21 now allows to filter elements and import only the those that are important for structural analysis: the load-bearing structural elements and reference elements important for specifying loads or supports.
The content of the received IFC models can be filtered based on:
- the project hierarchy: site, building and storey,
- layers,
- object type,
- object size, and
- load-bearing functionality.
Filtering by project hierarchy
After selecting the IFC file to be imported, its entire project hierarchy assigned to elements is displayed on the Project tab of the IFC import settings dialog. In case of a multi-site IFC project, the site on which the building to be examined is located must be selected. Next, the building and storeys should be selected
After import, the selected building storeys are also automatically created as native FEM-Design Storeys. These Storeys can be used with their original or modified position to align analysis model members, to create views and documentation.
Filtering by layers
In IFC files, in addition to the project hierarchy, the elements are assigned to layers. If the names of these layers are meaningful — that is, their content is easy to guess — then layers are also suitable for filtering element groups.
Note:
After the import, the IFC layer names are not used, as the generated analysis members are placed on the FEM-Design layer corresponding to their type; and those objects that are imported as reference solids are stored on a Drawing layer called "IFC Import - Reference".
Object-level filtering
In Element tab, the building elements stored in the IFC file can be managed by their categories described by the combination of IFC object and predefined type.
FEM-Design import allows
- to filter objects by these categories (e.g., import only bar elements, so IfcBeams, IfcColumns and IfcMembers), and
- to pair categories with the target element type.
There are IFC object types that can
- clearly only correspond to a certain FEM-Design object type. For example, an IfcBeam can only be a beam.
- be modeled with different analytical element types according to their predefined types. For example, a "Base Slab" predefined type IfcSlab can be converted to a FEM-Design Plate or a Foundation slab object.
Any load-bearing object type can also be imported as a reference only. This means that it will not be an editable FEM-Design analysis model member, but a spatial drawing solid with points that can be touched for measurement or element positioning. There are object types that can only be imported as reference solids because they do not have a role as an analysis member, but they can be important references for load and support definition (e.g., IfcStair, IfcCovering, IfcCurtainWall, IfcSite geometry).
Note:
- Reference solids are displayed in blue and by activating the "IFC Import - Reference" Drawing layer.
- There are structural elements whose geometry is so unique or complex (described in the IFC file as BREP geometry) that it cannot be mapped to a single analysis element geometry. These can also be imported as reference solids when checking the conversion result (see later).
Hint:
It is also possible to modify a certain analysis object type after the import is completed. For example, an object defined by an architect as a column (IfcColumn) can be converted to a wall if required by the structural analysis and design. But we can even refine the type created, for example, a plane plate generated from IfcSlab can be subsequently converted to a specific Profiled or Timber plate (CLT panel). For these tasks, the Convert tool – in the tool palette of the target object – can be used.
Filtering by object size
Sometimes unnecessary small structural elements are created and exported to ifc. In the Element tab, it is allowed to specify the minimum element size to be imported, so if the minimum size of an element is less than the specified tolerance, that element will not be imported.
Holes of surface elements that are not relevant in the analysis, i.e., smaller than a certain size, can also be ignored:
Filtering by load-bearing function
The IFC scheme allows to distinguish load-bearing elements from other building components with the so-called LoadBearing element property. Several modeling programs are able to classify elements with this property, and in the Elements tab of the IFC import settings dialog one can select to consider this parameter. Moreover, it is possible to import non-load-bearing structural elements (e.g., partition wall) as reference solids.
Adjust position to FEM-Design system
In BIM projects, it is common for buildings or their site to be given relative to a Survey point or National datum. This can cause large (e.g., kilometer-sized) distances and coordinates to be assigned to elements, which can lead to inaccuracies in both geometry and calculations. To avoid this, it is recommended to move the model close to the FEM-Design origin.
The position can be moved manually in FEM-Design by entering the distance from the origin in three directions, or automatically by clicking Adjust to FD system in the Project tab of the IFC import setting dialog. The original position can be restored with the Reset to original function.
Position of imported elements
In IFC models, the extruded geometry is given by the path – the so-called reference line – specified at the object definition. In case of surface elements, this is extended as a reference plane thanks to geometry-specific main directions. For example, in case of a wall, the reference plane can be one of the side panels of the wall body (through the input edge) or a plane going through the center of the body.
During import, there is an option of specifying that the axes or planes of the analysis elements are based on the reference line/plane stored in the IFC element (so-called Local system) or based on Center of solid. When choosing Local system – since most of the time it does not give a solid center position – eccentricity can be considered or neglected.
Note:
- Both Center of solid and Local system - eccentric give the same envelope body position to an analysis element, only the calculation axis/plane will be different.
- For elements with one material, the centric usually gives a more accurate analysis member position, for multi-material elements (due to the position of the core) or later element adjustments, the Local system may be more practical. It is advisable to use Center of solid first.
Support of grid system
Grid systems are used in BIM projects for orientation and reference, so they are important data for communication between design programs. FEM-Design can now automatically import IFC grid-systems – if available – and convert their axes to native FEM-Design Axes. The original labels are preserved.
Advanced data mapping
The automatic conversion of ifc models is controlled by mapping structural materials and cross-sections of IFC physical elements to proper FEM-Design data assigned to analysis members.
Materials
There are two possible ways to match materials:
- Select the appropriate material from the current FEM-Design Material library. New materials can be ceated by editing the library content within IFC import settings.
- Select a substitute Default material, which can be specified for each bar material type (which also depends on cross-sections), for all shells and for all foundation objects.
Note:
For composite surface elements, FEM-Design lists only the material of the thickest layer and assigns the corresponding FEM-Design material to the entire thickness of the IFC solid body.
Name-based mapping can be aided by automatic name recognition, which automatically tries to select the appropriate pairs from the Material library based on the character matches stored in the name.
Sections
Cross-section mapping can be done in the same way as material mapping, or with an extra option called Create new function that tries to produce the incoming cross-section (geometry described by polyline), assigns it to the bar, and stores it in the project's Section library database. If such a section geometry already exists in the Library, a new section item will not be created.
New cross-sections can be created In the Section library, without the need to interrupt the import process.
Import settings template
Import setting (Element, Material and Section) can be saved into a template for future projects. Saved templates are stored in the following folder C:\Users\USERNAME\Documents\Strusoft\FEM-Design 21\templates and can be shared.
Conversion result check
When the import is completed, it is important to check whether the selected / filtered elements have been converted correctly. This can be done visually or by analysing the the warnings and errors in the Messages dialog.
In addition to the converted analysis model elements, the original geometry of the IFC model elements selected for conversion can be displayed as drawing solids in the model space and in the colors corresponding to the success of the conversion:
orange: represents problematic objects where the conversion has occurred but the end geometry does not match the original geometry perfectly; some typical cases:
- the physical body is too complex (for example a real circular wall is assembled from analysis wall segments;
- there is a mismatch between a bar material and cross-section, so a substitute section has been used.
red: represents objects that could not be converted to analysis elements, so data loss occurred;
green: represents objects converted to analytical members without any problem.
Activate the Create solids with original geometry (conversion result) import option in the Element tab, then the IFC Import Result… layers and visually inspect the imported elements.
Hint:
In order to see the original geometries, the analysis model counterparts can be hidden.
Displayed solids representing objects imported incorrectly (orange) or not converted at all (red), can be used as a reference to to create the appropriate analysis members.
Improved import from SAF
Following improvements and new features have been implemented and added regarding importing saf models to FEM-Design:
Support for all SAF versions up to 2.0
FEM-Design now supports the import of all SAF versions released in 2021. It is therefore, recommended to use the latest possible version of SAF supported by partner software.
Support of new parametric cross-sections
FEM-Design’s cross-section support for SAF import has been expanded to parametric rectangular/circular steel and circular timber cross-sections. These are created by the import process based on the cross-sectional parameters and the material (if not already included in the applied Code-dependent Material library) and stored in the "Used section" list of the project.
Support of new analysis model objects
From now on, FEM-Design import following new object types:
StructuralCurveMemberRib: a rib element, which according to the SAF scheme, is a bar member (typically beam) related to a shell (typically plate).
RelConnectsRigidLink: a virtual connection of two nodes on bars and/or shells with custom structural behavior of the translation and the rotation components, which are used to simulate infinite rigidity or custom defined properties. RelConnectsRigidLink object will be converted to a FEM-Design Point connection object.
RelConnectsRigidCross: a connection of two bars that intersect each other in one node. Custom structural behavior (such as hinged connection) can be assigned to it. RelConnectsRigidCross object will be converted to a FEM-Design Point connection object.
RelConnectsRigidMember: a virtual connection of two edges on bars and/or shells with custom structural behavior of the translation and the rotation components, which are used to simulate infinite rigidity or custom defined properties. RelConnectsRigidMember object will be converted to a FEM-Design Line connection object.
Load import
FEM-Design can now import the following point, line, surface and thermal loads and their associated load cases and load combinations stored in an SAF file as native objects:
StructuralPointAction: a point force assigned to a node or bar; it will be converted to FEM-Design Point load /Force placed to nodes or assigned to bars.
StructuralPointMoment: a point moment assigned to a node or bar; it will be converted to FEM-Design Point load /Moment assigned to bars.
StructuralPointActionFree: a point force placed on a shell; it will be converted to FEM-Design Point load /Force.
StructuralCurveAction: a line force assigned to a bar or shell edge; it will be converted to FEM-Design Line load /Force assigned to bars or shells.
StructuralCurveMoment: a line moment assigned to a bar or shell edge; it will be converted to FEM-Design Line load /Moment assigned to bars or shells.
StructuralCurveActionFree: a line force placed on a shell; it will be converted to FEM-Design Line load /Force.
StructuralSurfaceAction: a surface load assigned to the entire region of a shell; it will be converted to FEM-Design Surface load assigned to plates or walls.
StructurealSurfaceActionFree: a surface load placed on a shell part; it will be converted to FEM-Design Surface load.
StructuralSurfaceActionThermal: thermal load assigned to a shell; it will be converted to FEM-Design Surface temperature variation load assigned to plates or walls.
StructuralCurveActionThermal: thermal load assigned to a bar; it will be converted to FEM-Design Line temperature variation load assigned to beams or columns.
Editable cross-section and material mapping
FEM-Design’s SAF import attempts to automatically perform cross-section and material mapping based on name recognition. If the name association result is incorrect, a custom mapping (in a table format) can be used. It is stored in the following XLSX file:
C:\Users\USERNAME\AppData\Roaming\Strusoft\FEM-Design 21\femdata\safnames.xlsx
Editing steps and options:
By default, the worksheets in the file contain elements of the FEM-Design built-in database (material type or standard steel cross-section). Their exact names are stored as mandatory in the first column of the proper worksheet. The worksheet can be supplemented with materials or cross-sections of a custom corresponding database by entering their exact names in new rows of the first column.
In the second row (that starts with "*") of each worksheet, one can specify the name of the FEM-Design material or cross section that should be replaced with SAF data/names.
If several different cross-sections or material names should be assigned to a FEM-Design database element, the row containing the FEM-Design name can be copied.
Import result summary
A new follow-up dialog shows a list of errors or problems related to importing SAF files.
In the Status column, different colors indicate the following type of events:
orange: problematic cases that are either resolved correctly during import or replaced so that there is no complete data loss;
red: errors that are not resolved and so related objects are not imported;
green: one message that shows the file name of the imported SAF XLSX file.
Each of the summay instances contains the worksheet where the affected objects can be found in the XLSX table and their “Name” identifiers. Cases can be sorted or hidden by event type. The contents of the summary can be saved in a txt file.
StruXML improvements
Paste struxml file to FEM-Design project
The Paste file command has been supplemented with the struxml file type, so it is now possible to combine several struxml files in FEM-Design project. Pasting a struxml file to an existing model, preserves the current FEM-Design project, without overwriting its data.
The function places a selected struxml file in the position specified by the user. FEM-Design always and automatically generates new Global Unique ID (GUID) values for all imported elements to avoid overwriting GUIDs of the host project.
Improved struxml import dialog
A list of possible errors and warnings associated with opening or pasting struxml file is shown in the improved Messages dialog.
In the Status column, different colors indicate different type of events:
orange: problematic cases that are either resolved correctly during import or replaced so that there is no complete data loss;
red: errors that are not resolved and so related objects are not imported;
green: one message that shows the file name of the imported StruXML file.
New objects in struxml schema
Following new objects have been added to the struxml schema, which means they will not be anymore lost upon saving the model to struxml file.
User defined filter
User defined view
Reinforcement design group ((bar, surface, punching and concealed bar)
Cad objects such as annotations, dimensions, and other drawing objects (e.g., rectangles, solids) including their layer
FdScript improvements
Calculation and design data
The following configurations of a FEM-Design project can be now set by FdScript :
- Steel bar: Configure, Calculation parameters and Auto design data.
- RC bar: Configure, Calculation parameters and Auto design data.
- RC shell: Configure, Calculation parameters and Auto design data.
- Timber bar: Calculation parameters and Auto design data.
- CLT panel: Configure, Calculation parameters and Auto design data.
All configuration settings should be listed under the <cmdconfig command = "$ MODULECOM APPLYCFG"> command, for example:
<cmdconfig command="$ MODULECOM APPLYCFG">
<CONFIG s2ndOrder="1" type="ECRCCONFIG"></CONFIG>
<CONFIG LimitUtilization="1" type="CCDESPARAMCOCOLUMN">
<GUID>2e290437-e86a-4e36-af7d-acde6a6146c8</GUID>
<GUID>2cba9c00-255d-4258-94fb-f164aafff214</GUID>
</CONFIG>
</cmdconfig
If all the items should not be changed, then the GUID list must be added to select the items. All configurations can be compiled in a separate .xml file, which can be called by name in the script, for example:
<cmdconfig command="$ MODULECOM APPLYCFG" file="C:\Steel\cfg\cfg.xml" />
Hints:
- It is recommended that the configurations is specified in a separate .xml file. By calling CXL MODULECOM WXMLCFG:filename, a sample configuration file can be created, even in the graphical user interface ("filename" is replaced by the absolute path and file name, e.g., CXL MODULECOM WXMLCFG:c:\temp\cfg.xml). This command dumps the actual model configurations to this file.
- When using a sample file, only the necessary parameters need to be changed (no need to bother with command names and the file format).
Finite element mesh settings
Both Mesh and Peak smoothing settings are now available in FdScript .
New eigenfrequency calculation parameters
Two more eigenfrequency analysis options are now available in FdScript through the following attributes:
rqFreqAutoIter: with the value of 0 disables the "Try to reach ..." option, and an integer greater than 0 activates the option and defines the maximum number of iteration.
rqFreqNormUnit: a Boolean-type parameter whose True value expresses the Unit option and its False value expresses the Mass matrix option as the Mode shape normalization method.
Applying changes after auto-design
If changes are made to the design settings after Auto design, we can apply them with the following command in the FdScript :
<cmduser command="; CXL FEM $CODE(DESCHANGESAPPLY)" />
Insertion point for dwg drawings
A typical problem for importing dwg drawings is handling long-distance objects. But from now on, there is a possibility to bring FEM-Design origin close to the long-distance elements defined in a DWG project (for both Open and External reference commands).
The new Insertion point feature, allows to set distance values for each directions in the FEM-Design global coordinate system.
Note: Although FEM-Design handles drawings within a distance of 10 km, it is often the case in the DWG, especially for external reference (XREF), that the insertion point stored in the DWG also appears as a symbol in the FEM-Design origin. This makes the Zoom margin function "unusable" with the view set to the full extension. The new Insertion point solves this issue.
When opening a long-distance DWG file, FEM-Design warns of the problem and suggests coordinate values for the Insertion point.
The Insertion point places the FEM-Design origin close to the DWG elements, and, not the opposite (so the drawing is not placed in the opposite direction from the FEM-Design origin).
Note: If the long distances in the DWG file have been handled by a local, so-called UCS coordinate system set at the DWG sender program, then by selecting it, we no longer need and cannot use Insertion point.