Computational mechanics
Encyclopedia
Computational mechanics is the discipline concerned with the use of computational methods to study phenomena governed by the principles of mechanics
. Before the emergence of computational science
(also called scientific computing) as a "third way" besides theoretical and experimental sciences, computational mechanics was widely considered to be a sub-discipline of applied mechanics
. It is now considered to be a sub-discipline within computational science.
1. A mathematical model
of the physical phenomenon is made. This usually involves expressing the natural or engineering system in terms of partial differential equation
s. This step uses physics
to formalize a complex system.
2. The mathematical equations are converted into forms which are suitable for digital computation. This step is called discretization
because it involves creating an approximate discrete model from the original continuous model. In particular, it typically translates a partial differential equation (or a system thereof) into a system of algebraic equations. The processes involved in this step are studied in the field of numerical analysis
.
3. Computer program
s are made to solve the discretized equations using direct methods (which are single step methods resulting in the solution) or iterative method
s (which start with a trial solution and arrive at the actual solution by successive refinement).
Depending on the nature of the problem, supercomputer
s or parallel computers
may be used at this stage.
4. The mathematical model, numerical procedures, and the computer codes are verified using either experimental results or simplified models for which exact analytical solution
s are available. Quite frequently, new numerical or computational techniques are verified by comparing their result with those of existing well-established numerical methods. In many cases, benchmark problems are also available. The numerical results also have to be visualized and often physical interpretations will be given to the results.
, computer science
, and mechanics
. Computational fluid dynamics
, computational thermodynamics, Computational electromagnetics
, computational solid mechanics
are some of the many specializations within CM.
The areas of mathematics most related to computational mechanics are partial differential equation
s, linear algebra
and numerical analysis
. The most popular numerical methods used are the finite element
, finite difference
, and boundary element
methods in order of dominance. In solid mechanics finite element methods are far more prevalent than finite difference methods, whereas in fluid mechanics, thermodynamics, and electromagnetism, finite difference methods are almost equally applicable. The boundary element technique is in general less popular, but has a niche in certain areas including acoustics engineering, for example.
With regards to computing, computer programming, algorithms, and parallel computing play a major role in CM. The most widely used programming language in the scientific community, including computational mechanics, is Fortran
. Recently, C++
has increased in popularity. The scientific computing community has been slow in adopting C++ as the lingua franca. Because of its very natural way of expressing mathematical computations, and its built-in visualization capacities, the proprietary language/environment MATLAB
is also widely used, especially for rapid application development and model verification.
Some examples where computational mechanics have been put to practical use are vehicle crash simulation
, petroleum reservoir modeling
, biomechanics, glass manufacturing, and semiconductor modeling.
In the last century, especially in the second half thereof, computational mechanics has had profound influences on science and technology. Complex systems that would be very difficult or impossible to treat using analytical methods have been successfully simulated using the tools provided by computational mechanics. With the incorporation of quantum, molecular and biological mechanics into new models, CM is poised to play an even bigger role in the future.
Mechanics
Mechanics is the branch of physics concerned with the behavior of physical bodies when subjected to forces or displacements, and the subsequent effects of the bodies on their environment....
. Before the emergence of computational science
Computational science
Computational science is the field of study concerned with constructing mathematical models and quantitative analysis techniques and using computers to analyze and solve scientific problems...
(also called scientific computing) as a "third way" besides theoretical and experimental sciences, computational mechanics was widely considered to be a sub-discipline of applied mechanics
Applied mechanics
Applied mechanics is a branch of the physical sciences and the practical application of mechanics. Applied mechanics examines the response of bodies or systems of bodies to external forces...
. It is now considered to be a sub-discipline within computational science.
Process
Scientists within the field of computational mechanics follow a list of tasks to analyze their target mechanical process:1. A mathematical model
Mathematical model
A mathematical model is a description of a system using mathematical concepts and language. The process of developing a mathematical model is termed mathematical modeling. Mathematical models are used not only in the natural sciences and engineering disciplines A mathematical model is a...
of the physical phenomenon is made. This usually involves expressing the natural or engineering system in terms of partial differential equation
Partial differential equation
In mathematics, partial differential equations are a type of differential equation, i.e., a relation involving an unknown function of several independent variables and their partial derivatives with respect to those variables...
s. This step uses physics
Physics
Physics is a natural science that involves the study of matter and its motion through spacetime, along with related concepts such as energy and force. More broadly, it is the general analysis of nature, conducted in order to understand how the universe behaves.Physics is one of the oldest academic...
to formalize a complex system.
2. The mathematical equations are converted into forms which are suitable for digital computation. This step is called discretization
Discretization
In mathematics, discretization concerns the process of transferring continuous models and equations into discrete counterparts. This process is usually carried out as a first step toward making them suitable for numerical evaluation and implementation on digital computers...
because it involves creating an approximate discrete model from the original continuous model. In particular, it typically translates a partial differential equation (or a system thereof) into a system of algebraic equations. The processes involved in this step are studied in the field of numerical analysis
Numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis ....
.
3. Computer program
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...
s are made to solve the discretized equations using direct methods (which are single step methods resulting in the solution) or iterative method
Iterative method
In computational mathematics, an iterative method is a mathematical procedure that generates a sequence of improving approximate solutions for a class of problems. A specific implementation of an iterative method, including the termination criteria, is an algorithm of the iterative method...
s (which start with a trial solution and arrive at the actual solution by successive refinement).
Depending on the nature of the problem, supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
s or parallel computers
Parallel computing
Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...
may be used at this stage.
4. The mathematical model, numerical procedures, and the computer codes are verified using either experimental results or simplified models for which exact analytical solution
Closed-form expression
In mathematics, an expression is said to be a closed-form expression if it can be expressed analytically in terms of a bounded number of certain "well-known" functions...
s are available. Quite frequently, new numerical or computational techniques are verified by comparing their result with those of existing well-established numerical methods. In many cases, benchmark problems are also available. The numerical results also have to be visualized and often physical interpretations will be given to the results.
Overview
Computational mechanics (CM) is interdisciplinary. Its three pillars are mathematicsMathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...
, computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...
, and mechanics
Mechanics
Mechanics is the branch of physics concerned with the behavior of physical bodies when subjected to forces or displacements, and the subsequent effects of the bodies on their environment....
. Computational fluid dynamics
Computational fluid dynamics
Computational fluid dynamics, usually abbreviated as CFD, is a branch of fluid mechanics that uses numerical methods and algorithms to solve and analyze problems that involve fluid flows. Computers are used to perform the calculations required to simulate the interaction of liquids and gases with...
, computational thermodynamics, Computational electromagnetics
Computational electromagnetics
Computational electromagnetics, computational electrodynamics or electromagnetic modeling is the process of modeling the interaction of electromagnetic fields with physical objects and the environment....
, computational solid mechanics
Solid mechanics
Solid mechanics is the branch of mechanics, physics, and mathematics that concerns the behavior of solid matter under external actions . It is part of a broader study known as continuum mechanics. One of the most common practical applications of solid mechanics is the Euler-Bernoulli beam equation...
are some of the many specializations within CM.
The areas of mathematics most related to computational mechanics are partial differential equation
Partial differential equation
In mathematics, partial differential equations are a type of differential equation, i.e., a relation involving an unknown function of several independent variables and their partial derivatives with respect to those variables...
s, linear algebra
Linear algebra
Linear algebra is a branch of mathematics that studies vector spaces, also called linear spaces, along with linear functions that input one vector and output another. Such functions are called linear maps and can be represented by matrices if a basis is given. Thus matrix theory is often...
and numerical analysis
Numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis ....
. The most popular numerical methods used are the finite element
Finite element method
The finite element method is a numerical technique for finding approximate solutions of partial differential equations as well as integral equations...
, finite difference
Finite difference method
In mathematics, finite-difference methods are numerical methods for approximating the solutions to differential equations using finite difference equations to approximate derivatives.- Derivation from Taylor's polynomial :...
, and boundary element
Boundary element method
The boundary element method is a numerical computational method of solving linear partial differential equations which have been formulated as integral equations . It can be applied in many areas of engineering and science including fluid mechanics, acoustics, electromagnetics, and fracture...
methods in order of dominance. In solid mechanics finite element methods are far more prevalent than finite difference methods, whereas in fluid mechanics, thermodynamics, and electromagnetism, finite difference methods are almost equally applicable. The boundary element technique is in general less popular, but has a niche in certain areas including acoustics engineering, for example.
With regards to computing, computer programming, algorithms, and parallel computing play a major role in CM. The most widely used programming language in the scientific community, including computational mechanics, is Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...
. Recently, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
has increased in popularity. The scientific computing community has been slow in adopting C++ as the lingua franca. Because of its very natural way of expressing mathematical computations, and its built-in visualization capacities, the proprietary language/environment MATLAB
MATLAB
MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...
is also widely used, especially for rapid application development and model verification.
Some examples where computational mechanics have been put to practical use are vehicle crash simulation
Crash simulation
A crash simulation is a virtual recreation of a destructive crash test of a car or a highway guard rail system using a computer simulation in order to examine the level of safety of the car and its occupants. Crash simulations are used by automakers during Computer-Aided Engineering analysis for...
, petroleum reservoir modeling
Reservoir simulation
Reservoir simulation is an area of reservoir engineering in which computer models are used to predict the flow of fluids through porous media.-Uses:...
, biomechanics, glass manufacturing, and semiconductor modeling.
In the last century, especially in the second half thereof, computational mechanics has had profound influences on science and technology. Complex systems that would be very difficult or impossible to treat using analytical methods have been successfully simulated using the tools provided by computational mechanics. With the incorporation of quantum, molecular and biological mechanics into new models, CM is poised to play an even bigger role in the future.
See also
- Scientific computing
- Dynamical systems theoryDynamical systems theoryDynamical systems theory is an area of applied mathematics used to describe the behavior of complex dynamical systems, usually by employing differential equations or difference equations. When differential equations are employed, the theory is called continuous dynamical systems. When difference...
- Movable cellular automatonMovable cellular automatonThe Movable cellular automaton method is a method in computational solid mechanics based on the discrete concept. It provides advantages both of classical cellular automaton and discrete element methods. Important advantage of the МСА method is a possibility of direct simulation of materials...
External links
- United States Association for Computational Mechanics
- USACM report on the future of computational mechanics
- UNSW Computational Mechanics and Robotics Group
- M.Sc. in Computational Mechanics
- Computational Mechanics Laboratory (CompMechLab), Russia
- Santa Fe Institute Comp Mech Publications
- Introduction to Computational Mechanics
- Journal of Computational Mechanics