Different numerical methods are the cornerstone of scientific computing, employed to solve the underlying models describing a physical problem. These numerical methods help solve the constitutive equations making up the mathematical framework. Numerical methods are often chosen according to their suitability and applicability based on the physical problem whose mathematical model counterpart it solves.
At the fundamental level, all numerical methods use the same approach — they discretize a continuous problem by breaking it up into chunks of nodal components, which can be represented straightforwardly using a computer language. Therefore, at its core, numerical methods deal with an approximation of exact real-world physical problems, and hence, the solutions are associated with inherent errors. These errors arise from rounding off and truncating numbers because of the limitation of representing floating-point numbers on a computer. Therefore, the applicability of different numerical methods to various scientific computing problems is determined by their ability to render the most accurate results extremely close to the exact values, i.e., their consistency and convergence.
Based on the variety of scientific computing problems, the different numerical methods widely used for obtaining the solution are:
- Finite Difference Method (FDM): Finite difference methods are a popular class of numerical techniques used for solving both ordinary differential equations (ODEs) and partial differential equations (PDEs). In this approach, the continuous domain over which the PDE is supposed to be solved is broken into a finite number of uniformly spaced grid points. Corresponding to these grid points, the derivatives of a function are approximated. The derivatives are approximated with so-called “finite differences.” Once the finite difference equation is obtained, iterative techniques can get the solution function with a predefined tolerance limit.
- Finite Element Method (FEM): Finite element methods are used in scientific computing problems, which consist of domains with complex geometries. In this technique, the solution space is discretized into a finite number of elements with the help of the construction of meshes. Local solutions are obtained for these elements, and a global solution is finally obtained by combining the individual solutions from these elements. Some common examples where FEM is used are structural analysis, heat flow problems, mass transport problems, etc.
- Finite Volume Method (FVM): Finite volume methods discretize the solution domain into a finite number of volumes. Thereafter, the volume integral for obtaining the solution function is converted into surface integral using the well-known Divergence theorem. These resultant surface integrals are calculated in surfaces between the respective volume elements. This method is particularly useful in complex geometries and computational fluid dynamics problems. In such problems, discretization of the domain is achieved via the construction of unstructured meshes, i.e., meshes where the nodal points are not part of an underlying regular geometry such as grids or triangles.
- Spectral techniques: Spectral techniques are computationally costly but extremely efficient numerical methods particularly useful for a special category of scientific computing problems — problems with Periodic Boundary Conditions (PBCs). In this technique, we approximate the solution to the problem with a suitable basis function. When we use a combination of sine and cosine functions, the spectral technique is termed the Fourier spectral technique. The combination of sine and cosine functions is called the Fourier series. Therefore, we must find the coefficients of the approximating basis functions to find the solution.
Numerical methods solve PDEs for the most practical problems we encounter in scientific computing research. Therefore, it is important to discuss the other aspect of obtaining solutions used with these numerical techniques: Boundary Conditions (BCs).
Four main types of boundary conditions are used in a majority of the problems in the computational sciences:
- Dirichlet BC: This is the BC where an initial guess value of the solution is provided at the edges of the solution domain.
- Neumann BC: This is the BC where an initial value for the flux of the independent variable is provided at the edges.
- Robin BC: This is a combination of Dirichlet and Neumann BCs. Such BCs are specifically problem-dependent and don’t arise frequently.
- Periodic Boundary Conditions (PBCs): This is a special type of BC where a domain can be thought of as extending to infinity in all directions from the edges of the domain. Such domains are called Representative Volume Elements (RVEs); the solution domain is a 3D space. This BC is often used in microstructure evolution simulations due to solid-state phase transformations, as a particular element of the material can be assumed to represent its average property.
In conclusion, numerical methods are an indispensable tool for scientific computing. When combined with suitable boundary conditions, these methods can help research in the computational sciences and advance our understanding of processes inaccessible to theory or experimentation.
Further reading:
- Finite element method Wikipedia article
- Finite volume method Wikipedia article
- Finite difference method Wikipedia article
- Spectral method Wikipedia article
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.