3.1. Introduction

This introduction aims at exposing an overview of what SesamX is made of. The goal is not to provide every detail about each topic mentioned, but instead, it summarizes the main features and conventions behind SesamX. If you are looking for more precise information, do not hesitate to refer to the SesamX functions description.

SesamX is a finite element analysis software that addresses the physical simulation of structural products. It allows engineers that use it to efficiently predict the behavior of products they are designing.

Among the various kinds of finite element software, SesamX is positioned as a high level solution (as explained in our blog article). It is designed to be used by engineers. Instead of exposing the underlying equations to the user, it focuses on providing pre-built components that are relevant at an engineering level (for instance shell elements, loading conditions an so on).

Currently, the preferred way to command SesamX is through the submission of structured input files. In order to write proper input files, you can follow the guidelines given in the SesamX input file description page.

However, SesamX aims at being integrated easily into existing workflows. Indeed, in a near future SesamX will expose an API allowing you to perform every action you could otherwise manage with an input file.

SesamX applies a database-oriented data management. A single file contains all your model data. Besides, this file is encoded using the HDF5 open format. You can find more information on the related page.

Whenever appropriate, SesamX relies on parallelization to improve performance. At a low level, shared memory parallelization is used to speed up elements computation (stiffness matrix and so on) as well as the stiffness inversion. And later on, at a higher level SesamX will propose distributed memory parallelization through subdomain decomposition techniques.

SesamX is units aware. You can define the units used on the input data as well as the units desired on the output. Besides, SesamX allows you to specify the unit system (relevant to your application) used to store the data and avoid round-off errors. You can find more information on the units page.

Currently, SesamX covers the following features. As time goes on, we will embellish this list with new features.

There are 3 alternatives to input mesh data into SesamX:

  • write the mesh data directly into the SesamX input file,
  • import a Salome mesh (.med format),
  • or import an Abaqus mesh (.inp format).

The first one is more convenient for simple geometries while the others can be used for complicated parts.

SesamX provides truss, beam, shell and 3D solid elements. All these elements are linear and only isotropic material is covered. For the full details, please refer to the elements properties descriptions.

Concentrated loads and moments are supported. And boundary conditions can be defined node-wise by specifying a displacement value in whatever direction. You can refer to the exhaustive documentation for more details: loads and constraints).

Linear static resolution is available. Besides, SesamX proposes an automatic management of nodal singularities in the stiffness matrix. More details are given here.

SesamX is able to write visualization data for most of the model components (loading case, constraints, elements characteristics, …) and also for the solutions computed: displacement field (translations and rotations), strain, stress. Similarly to the SesamX model database, the visualization data is written to a HDF5 file. More details are given on the output description page.

Through this documentation:

  • vectors are denoted with an underline $\underline{u}$ and tensors with a double underline $\underline{\underline{\varepsilon}}$.
  • matrices are represented with brackets, as well as vector and tensor components$\lbrack \ \rbrack$,
  • Einstein summation convention is used on repeated indices,
  • partial derivatives are denoted with the comma notation $u_{,x}$,

In SesamX, the user is free to define and use its own coordinate systems. And when appropriate, SesamX can define additional coordinate systems. For instance, SesamX defines a local coordinate systems on each element (you can check the SesamX coordinate systems management for more information).

Throughout this documentation, you will find the details relevant to the coordinate system used for every data mentioned. However, we can already provide 2 basic rules:

  • Every data related to a node is expressed in the global coordinate system (nodes position, nodes displacement, …), unless otherwise specified.
  • Every data related to an element is expressed in the element local coordinate system (beam inertia, stress, strain, …), unless otherwise specified.

From a notation point a view:

  • the global Cartesian basis is always denoted $(\underline{u_{g_1}}, \underline{u_{g_2}}, \underline{u_{g_3}})$.
  • a vector basis related to an element (for instance the element local basis) is always denoted starting with $\underline{e_{...}}$.
  • other basis are denoted starting with $\underline{u_{...}}$, unless otherwise specified.

SesamX outputs strain tensor (as engineering strains) and stress tensor components in the following order:

$$ \lbrack \varepsilon \rbrack = \begin{bmatrix} \varepsilon_{11} \\ \varepsilon_{22} \\ \varepsilon_{33} \\ \gamma_{12} \\ \gamma_{23} \\ \gamma_{13} \end{bmatrix} \lbrack \sigma \rbrack = \begin{bmatrix} \sigma_{11} \\ \sigma_{22} \\ \sigma_{33} \\ \sigma_{12} \\ \sigma_{23} \\ \sigma_{13} \end{bmatrix} $$

Besides, SesamX always provides the full tensor components compatible with the element property. For instance, a shell subjected to in plane loading (along the plane $(x, y)$) will showcase a non zero normal deformation $\varepsilon_{zz}$ (due to Poisson's effect).

De not hesitate to check the specific documentation for further explanations. You can also consult the SesamX getting started guide to get a quick overview of SesamX. If you are interested in our vision and motivation, you can read our SesamX manifesto.