## Computing

### Cloud Computing

Particularly for small and medium-sized companies, it is often not profitable to build up and maintain their own high-performance computer infrastructure. At the same time, however, there is a need to carry out large-scale simulations from time to time. Cloud-based solutions provide the necessary flexibility and, simultaneously, access to very powerful computers. We support our customers in building up a cloud-based solution in line with demand for simulations with tailor-made software.

### High-Performance and Parallel Computing

The substantially enhanced achievable computing power differentiates high-performance computers from “ordinary” computers. High-performance computers are used in many areas of research and engineering practice, with simulations being one of the most important and widely used of these research and application fields. Very large computation tasks are usually performed in parallel on high-performance computers. In parallel computing, the overall simulation is separated into several sub-computation tasks, and several processes are executed simultaneously. Parallel computing is nowadays the predominant approach, and the respective computer architectures are designed for it, mostly in the form of so-called multicore processors. We have many years of experience in developing parallel simulation software as well as in running large-scale simulations on high-performance computers. With this experience, we support our customers in development and application projects for parallel computing on supercomputers. In this context, we implement both on-premises and cloud solutions.

## MACHINE LEARNING

In many cases, using modern machine learning techniques provides considerable added value also for engineering applications, in particular, as soon as these learning algorithms supplement physics-based models. An important application example for this is the so-called “predictive maintenance”. We also use machine learning techniques in the field of uncertainty quantification and for optimization tasks. Our core expertise in this context particularly concerns Bayesian approaches. We support our customers in the development and implementation of learning algorithms, for example, based on Gaussian processes or deep neural networks.

## Numerics

Below, the interested reader can find detailed information on the methods we use for simulating of various challenging problems. All of the methods below are implemented in our in-house software and thus readily available.

### Mesh-Based Methods

Mechanical (or other) problems are usually mathematically described by partial differential equations. These equations represent continuous and thus infinite-dimensional formulations, which apply at every point of the considered problem domain. A discretization process transforms the infinite-dimensional into a finite-dimensional problem. In a finite difference method (FDM), the continuous differential equation operator is directly discretized by approximating it by a discrete difference operator. In contrast, the finite element method (FEM) and the finite volume method (FVM) approximate the infinite-dimensional space of functions by a finite-dimensional one. The difference between FEM and FVM is that, within a weighted residual approach with introduction of so-called weighting functions, these weighting functions are assumed constant for the FVM and non-constant for the FEM. Among others, this results in different integral terms from partial integration when deriving the respective method.

### Meshfree Methods: Particle Methods and Smoothed Particle Hydrodynamics (SPH)

Traditional discretization methods as described above are characterized, among others, in that they use a mesh or grid, within which, for example, the finite elements of an FEM or the finite volumes of an FVM are arranged. For instance, in the case of very large deformations, such a mesh or grid may turn out to be disadvantageous, since very large mesh deformations may occur when simulating such problems. An alternative in the context of mesh-based methods would be re-meshing procedures, which are usually associated with substantial effort and might be rather challenging, though. Another alternative are meshfree particle methods such as the element free Galerkin method (EFGM) or the reproducing kernel particle method (RKPM). A particularly well-known representative of meshfree particle methods is the “smoothed particle hydrodynamics (SPH)” method. In these meshfree methods, instead of meshes with associated mesh nodes, particles are introduced into the domain, for which the problem is mathematically formulated accordingly.

### Novel Computational Methods

#### (Hybridizable) Discontinuous Galerkin Methods

Spatially and temporally discontinuous Galerkin methods (DGM) can be distinguished. However, when referring to DGM, usually, the spatial DGM is addressed, which unites properties of the finite-volume method (FVM) and the finite element method (FEM). DGMs in standard form typically have more degrees of freedom than classical (continuous) FEMs. To compensate for this disadvantage, hybridizable discontinuous Galerkin methods (HDGM) were recently proposed. For HDGMs, degrees of freedom are eliminated by local condensation in the course of a hybridization process. At the end of this process, degrees of freedom on the element boundaries remain as the only globally coupled degrees of freedom.

#### Extended and Cut Finite Element Methods

In many technical problems, so-called discontinuities occur. An example in solid mechanics are cracks arising in a structure at a certain load and then propagating through it. An example in fluid mechanics are multiphase flows, in which discontinuities such as significantly different densities of the individual phases can occur at the phase interfaces. Furthermore, in complex technical problems, large deformations or even complete topological changes may often be observed. For all these problems, traditional computational methods are usually not suitable. An effective alternative is the so-called extended finite element method (XFEM). Recently, the so-called cut finite element method (CUTFEM) was proposed, which allows for accurately representing the solution, while at the same time not requiring any adaptation of the computational mesh and the problem domain, respectively. Thus, an enormous simplification regarding the often very expensive mesh generation is achieved for complex geometries.

### Mortar Methods

Mortar methods were originally introduced as a domain decomposition technique for spectral elements, but are now also widely used in academic research as a non-conforming discretization technique within the finite element method (FEM) for a variety of single-field applications, such as solid and fluid mechanics, and multiphysics applications, such as fluid-structure interaction (FSI). An application which should be mentioned in particular is contact. Traditionally, approaches such as node-to-segment (NTS) or Gauss-point-to-segment (GPTS) methods have been used for simulating contact in the framework of FEMs. Mortar methods always ensure a consistent load and motion transfer for any interface discretization, that is, in particular, also for non-matching meshes. Further benefits of using mortar methods for contact are listed in the section on contact. Meanwhile, computational methods based on the Mortar approach represent the state of the art for the numerical solution of problems of contact mechanics as well as so-called “mesh-tying”.

### Multiscale Methods

A multitude of physical, biological and chemical problems are multiscale problems, that is, their scales span a very broad spectrum, from relatively small to relatively large scales. For solving multiscale problems, multiscale methods which are specifically developed for the problem at hand should be used. In computational mechanics, in particular, three groups of multiscale methods are distinguished: multiscale methods for problems of fluid mechanics, multiscale methods for problems of solid or structural mechanics, and multiscale methods in more general form, which are not specifically developed for one of the two aforementioned applications.

### Model Reduction

Via model reduction, the numerical complexity of mathematical models for use in simulations can be reduced. As a consequence, a notably reduced accuracy of the solution of the problem usually must be expected, but at the same time, this solution can be achieved with significantly less effort or a substantially shorter computing time, respectively. Methods used for the model reduction are, for example, proper orthogonal decomposition (POD) and Krylov subspace methods.

### Methods for Solving Systems of Linear Equations: Multigrid Methods

Direct and iterative methods for solving systems of linear equations, consisting of matrix, solution vector and right-hand vector, can be distinguished. Iterative methods are generally more effective than direct methods, particularly for sparse matrices, which result, for instance, from discretization methods. To improve the so-called conditioning of the matrix, preconditioners can be used, for instance, domain decomposition methods in the form of additive Schwarz methods. Among the currently most efficient methods for preconditioning or solving linear systems, respectively, are multigrid methods. The basic idea of multigrid methods is to iteratively dampen errors using resolutions on multiple grids. While high-frequency error components can be effectively reduced by rather simple smoothing methods, variants of the problem with lower resolution on coarser grids are exploited for reducing the low-frequency error components. There are two types of multigrid methods: geometric multigrid (GMG) and algebraic multigrid (AMG) methods. AMG methods have the often crucial advantage that an actual and in some circumstances rather complex geometric generation of multiple grids can be avoided.

### Domain Decomposition

Using domain decomposition methods, a boundary value problem may be broken down into smaller boundary value problems, which are formulated on sub-domains of the overall domain and solved in iterative form between adjacent sub-domains. The sub-domain problems are in principle independent, such that parallel computations are enabled when using domain decomposition methods. Overlapping domain decomposition methods such as the additive Schwarz method and non-overlapping domain decomposition methods such as the balancing domain decomposition (BDD) method can be distinguished. Aside from its primary purpose, domain decomposition methods such as the additive Schwarz method are also used as preconditioners (see also methods for solving systems of linear equations). Mortar methods were also originally introduced as domain decomposition methods.