Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
Computational science

Computational science

Overview
Computational science (or scientific computing) is the field of study concerned with constructing mathematical model
Mathematical model
A mathematical model uses mathematical language to describe a system. Mathematical models are used not only in the natural sciences and engineering disciplines but also in the social sciences ; physicists, engineers, computer scientists, and economists use...

s and numerical solution techniques and using computers to analyse and solve scientific, social scientific and engineering
Engineering
Engineering is the discipline, art and profession of acquiring and applying technical, scientific and mathematical knowledge to design and implement materials, structures, machines, devices, systems, and processes that safely realize a desired objective or inventions.The American Engineers' Council...

 problems. In practical use, it is typically the application of computer simulation
Computer simulation
A computer simulation, a computer model, or a computational model is a computer program, or network of computers, that attempts to simulate an abstract model of a particular system...

 and other forms of computation
Computation
Computation is a general term for any type of information processing. This includes phenomena ranging from human thinking to calculations with a more narrow meaning. Computation is a process following a well-defined model that is understood and can be expressed in an algorithm, protocol, network...

 to problems in various scientific disciplines.

The field is distinct from computer science
Computer science
Computer science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe and transform...

 (the mathematical study of computation
Computation
Computation is a general term for any type of information processing. This includes phenomena ranging from human thinking to calculations with a more narrow meaning. Computation is a process following a well-defined model that is understood and can be expressed in an algorithm, protocol, network...

, computer
Computer
A computer is a machine that manipulates data according to a set of instructions.Although mechanical examples of computers have existed through much of recorded human history, the first electronic computers were developed in the mid-20th century . These were the size of a large room, consuming as...

s and information processing
Information processing
Information processing is the change of information in any manner detectable by an observer. As such, it is a process which describes everything which happens in the universe, from the falling of a rock to the printing of a text file from a digital computer system...

).
Discussion
Ask a question about 'Computational science'
Start a new discussion about 'Computational science'
Answer questions from other users
Full Discussion Forum
 
Encyclopedia
Computational science (or scientific computing) is the field of study concerned with constructing mathematical model
Mathematical model
A mathematical model uses mathematical language to describe a system. Mathematical models are used not only in the natural sciences and engineering disciplines but also in the social sciences ; physicists, engineers, computer scientists, and economists use...

s and numerical solution techniques and using computers to analyse and solve scientific, social scientific and engineering
Engineering
Engineering is the discipline, art and profession of acquiring and applying technical, scientific and mathematical knowledge to design and implement materials, structures, machines, devices, systems, and processes that safely realize a desired objective or inventions.The American Engineers' Council...

 problems. In practical use, it is typically the application of computer simulation
Computer simulation
A computer simulation, a computer model, or a computational model is a computer program, or network of computers, that attempts to simulate an abstract model of a particular system...

 and other forms of computation
Computation
Computation is a general term for any type of information processing. This includes phenomena ranging from human thinking to calculations with a more narrow meaning. Computation is a process following a well-defined model that is understood and can be expressed in an algorithm, protocol, network...

 to problems in various scientific disciplines.

The field is distinct from computer science
Computer science
Computer science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe and transform...

 (the mathematical study of computation
Computation
Computation is a general term for any type of information processing. This includes phenomena ranging from human thinking to calculations with a more narrow meaning. Computation is a process following a well-defined model that is understood and can be expressed in an algorithm, protocol, network...

, computer
Computer
A computer is a machine that manipulates data according to a set of instructions.Although mechanical examples of computers have existed through much of recorded human history, the first electronic computers were developed in the mid-20th century . These were the size of a large room, consuming as...

s and information processing
Information processing
Information processing is the change of information in any manner detectable by an observer. As such, it is a process which describes everything which happens in the universe, from the falling of a rock to the printing of a text file from a digital computer system...

). It is also different from theory and experiment which are the traditional forms of science and engineering. The scientific computing approach is to gain understanding, mainly through the analysis of mathematical models implemented on computer
Computer
A computer is a machine that manipulates data according to a set of instructions.Although mechanical examples of computers have existed through much of recorded human history, the first electronic computers were developed in the mid-20th century . These were the size of a large room, consuming as...

s.

Scientists and engineers develop computer programs, application software
Application software
Application software is a computer program that functions and is operated by means of a computer, with the purpose of supporting or improving the software user's work. In other words, it is the subclass of computer software that employs the capabilities of a computer directly and thoroughly to a...

, that model systems being studied and run these programs with various sets of input parameters. Typically, these models require massive amounts of calculations (usually floating-point) and are often executed on supercomputer
Supercomputer
A supercomputer is a computer that is at the frontline of current processing capacity, particularly speed of calculation. Supercomputers were introduced in the 1960s and were designed primarily by Seymour Cray at Control Data Corporation , and led the market into the 1970s until Cray left to form...

s or distributed computing
Distributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...

 platforms.

Numerical analysis
Numerical analysis
Numerical analysis is the study of algorithms for the problems of continuous mathematics .One of the earliest mathematical writings is the Babylonian tablet YBC 7289, which gives a sexagesimal numerical approximation of , the length of the diagonal in a unit square.Being able to compute the sides...

 is an important underpinning for techniques used in computational science.

Applications of computational science


Problem domains for computational science/scientific computing include:

Numerical simulations


Numerical simulations have different objectives depending on the nature of the task being simulated:
  • Reconstruct and understand known events (e.g., earthquake, tsunamis and other natural disasters).
  • Predict future or unobserved situations (e.g., weather, sub-atomic particle behaviour).

Model fitting and data analysis

  • Appropriately tune models or solve equations to reflect observations, subject to model constraints (e.g. oil exploration geophysics, computational linguistics)

  • Use graph theory
    Graph theory
    In mathematics and computer science, graph theory is the study of graphs: mathematical structures used to model pairwise relations between objects from a certain collection. A "graph" in this context refers to a collection of vertices or 'nodes' and a collection of edges that connect pairs of...

     to model networks, especially those connecting individuals, organizations, and websites.

Optimization

  • Optimize known scenarios (e.g., technical and manufacturing processes, front end engineering).

Methods and algorithms


Algorithms and mathematical methods used in computational science are varied. Commonly applied methods include:
  • Numerical analysis
    Numerical analysis
    Numerical analysis is the study of algorithms for the problems of continuous mathematics .One of the earliest mathematical writings is the Babylonian tablet YBC 7289, which gives a sexagesimal numerical approximation of , the length of the diagonal in a unit square.Being able to compute the sides...

  • Application of Taylor series
    Taylor series
    In mathematics, the Taylor series is a representation of a function as an infinite sum of terms calculated from the values of its derivatives at a single point. It may be regarded as the limit of the Taylor polynomials. Taylor series are named after the English mathematician Brook Taylor...

     as convergent and asymptotic series
  • Computing
    Computing
    Computing is usually defined as the activity of using and developing computer technology, computer hardware and software. It is the computer-specific part of information technology...

     derivatives by Automatic differentiation
    Automatic differentiation
    In mathematics and computer algebra, automatic differentiation , sometimes alternatively called algorithmic differentiation, is a method to numerically evaluate the derivative of a function specified by a computer program....

     (AD)
  • Computing
    Computing
    Computing is usually defined as the activity of using and developing computer technology, computer hardware and software. It is the computer-specific part of information technology...

     derivatives by finite differences
  • Graph theoretic suites
  • High order difference approximations via Taylor series
    Taylor series
    In mathematics, the Taylor series is a representation of a function as an infinite sum of terms calculated from the values of its derivatives at a single point. It may be regarded as the limit of the Taylor polynomials. Taylor series are named after the English mathematician Brook Taylor...

     and Richardson extrapolation
    Richardson extrapolation
    In numerical analysis, Richardson extrapolation is a sequence acceleration method, used to improve the rate of convergence of a sequence. It is named after Lewis Fry Richardson, who introduced the technique in the early 20th century. In the words of Birkhoff and Rota, ".....

  • Methods for integration on a uniform mesh: rectangle rule, trapezoid rule, midpoint rule, Simpson's rule
    Simpson's rule
    In numerical analysis, Simpson's rule is a method for numerical integration, the numerical approximation of definite integrals. Specifically, it is the following approximation:.- Quadratic interpolation :...

  • Runge Kutta method for solving ordinary differential equations
  • Monte Carlo method
    Monte Carlo method
    Monte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used when simulating physical and mathematical systems. Because of their reliance on repeated computation of random or pseudo-random numbers,...

    s
  • Numerical linear algebra
    Numerical linear algebra
    Numerical linear algebra is the study of algorithms for performing linear algebra computations, most notably matrix operations, on computers. It is often a fundamental part of engineering and computational science problems, such as image and signal processing, computational finance, materials...

  • Computing
    Computing
    Computing is usually defined as the activity of using and developing computer technology, computer hardware and software. It is the computer-specific part of information technology...

     the LU
    LU decomposition
    In linear algebra, the LU decomposition is a matrix decomposition which writes a matrix as the product of a lower triangular matrix and an upper triangular matrix. The product sometimes includes a permutation matrix as well. This decomposition is used in numerical analysis to solve systems of...

     factors by Gaussian elimination
    Gaussian elimination
    In linear algebra, Gaussian elimination is an algorithm for solving systems of linear equations, finding the rank of a matrix, and calculating the inverse of an invertible square matrix. Gaussian elimination is named after German mathematician and scientist Carl Friedrich Gauss.Elementary row...

  • Cholesky factorizations
    Cholesky decomposition
    In linear algebra, the Cholesky decomposition or Cholesky triangle is a decomposition of a symmetric, positive-definite matrix into the product of a lower triangular matrix and its conjugate transpose. It was discovered by André-Louis Cholesky for real matrices and is an example of a square root of...

  • Discrete Fourier transform
    Discrete Fourier transform
    In mathematics, the discrete Fourier transform is a specific kind of Fourier transform, used in Fourier analysis. It transforms one function into another, which is called the frequency domain representation, or simply the DFT, of the original function...

     and applications.
  • Newton's method
    Newton's method
    In numerical analysis, Newton's method , named after Isaac Newton and Joseph Raphson, is perhaps the best known method for finding successively better approximations to the zeroes of a real-valued function...

  • Time stepping methods for dynamical systems


Programming languages commonly used for the more mathematical aspects of scientific computing applications include R (programming language)
R (programming language)
In computing, R is a programming language and software environment for statistical computing and graphics. It is an implementation of the S programming language with lexical scoping semantics inspired by Scheme. R was created by Ross Ihaka and Robert Gentleman at the University of Auckland, New...

, MATLAB
MATLAB
MATLAB is a numerical computing environment and fourth generation programming language. Developed by The MathWorks, MATLAB allows matrix manipulation, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs in other languages...

, Mathematica
Mathematica
Mathematica is a computational software program used in scientific, engineering, and mathematical fields and other areas of technical computing...

, SciLab
Scilab
Scilab is a numerical computational package developed since 1990 by researchers from the INRIA and the École nationale des ponts et chaussées . Since the creation of the Scilab consortium in May 2003, it is developed and maintained by the INRIA....

, GNU Octave
GNU Octave
Octave is a computer program for performing numerical computations. It is mostly compatible with MATLAB.As part of the GNU Project, it is free software under the terms of the GNU General Public License.- History :...

, COMSOL Multiphysics
COMSOL Multiphysics
COMSOL Multiphysics is a finite element analysis and solver software package for various physics and engineering applications, especially coupled phenomena, or multiphysics. COMSOL Multiphysics also offers an extensive interface to MATLAB and its toolboxes for a large variety of programming,...

, Python (programming language)
Python (programming language)
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 with SciPy
SciPy
SciPy is an open source library of algorithms and mathematical tools for the Python programming language.SciPy contains modules for optimization, linear algebra, integration, interpolation special functions, FFT, signal and image processing, ODE solvers and other tasks common in science and...

, and PDL
Perl Data Language
PDL is a set of array programming extensions to the Perl programming language.PDL is an extension to Perl v5, intended for scientific and other data intensive programming tasks...

. The more computationally-intensive aspects of scientific computing will often utilize some variation of C
C (programming language)
C is a general-purpose computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 or Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

.

Computational science application programs often model real-world changing conditions, such as weather, air flow around a plane, automobile body distortions in a crash, the motion of stars in a galaxy, an explosive device, etc. Such programs might create a 'logical mesh' in computer memory where each item corresponds to an area in space and contains information about that space relevant to the model. For example in weather models, each item might be a square kilometer; with land elevation, current wind direction, humidity, temperature, pressure, etc. The program would calculate the likely next state based on the current state, in simulated time steps, solving equations that describe how the system operates; and then repeat the process to calculate the next state.

The term computational scientist
Computational scientist
A computational scientist is a person skilled in scientific computing. This person is usually a scientist, an engineer, or an applied mathematician who applies high-performance computers in different ways to advance the state-of-the-art in their respective applied disciplines in physics, chemistry...

 is used to describe someone skilled in scientific computing. This person is usually a scientist, an engineer or an applied mathematician who applies high-performance computers in different ways to advance the state-of-the-art in their respective applied disciplines in physics, chemistry or engineering. Scientific computing has increasingly also impacted on other areas including economics, biology and medicine.

Computational science is now commonly considered a third mode of science
Science
Science is in its broadest sense to any systematic knowledge-base or prescriptive practice that is capable of resulting in a prediction or predictable type of outcome...

, complementing and adding to experimentation/observation
Observation
Observation is either an activity of a living being , consisting of receiving knowledge of the outside world through the senses, or the recording of data using scientific instruments. The term may also refer to any datum collected during this activity.-Observation in science:A scientific method...

 and theory
Theory
The term theory has two broad sets of meanings, one used in the empirical sciences and the other used in philosophy, mathematics, logic, and across other fields in the humanities. There is considerable difference and even dispute across academic disciplines as to the proper usages of the term...

. http://www.siam.org/students/resources/report.php.
The essence of computational science is numerical algorithm
and/or computational mathematics
Computational mathematics
Computational mathematics involves mathematical research in areas of science where computing plays a central and essential role, emphasizing algorithms, numerical methods, and symbolic methods. Computation in the research is prominent. Computational mathematics emerged as a distinct part of applied...

. In fact, substantial effort in computational sciences
has been devoted to the development of algorithms, the efficient implementation in programming languages,
and validation of computational results. A collection of problems and solutions in computational science
can be found in .

Education


Scientific computation is most often studied through an applied mathematics
Applied mathematics
Applied mathematics is a branch of mathematics that concerns itself with the mathematical techniques typically used in the application of mathematical knowledge to other domains.-Divisions of applied mathematics:...

 or computer science
Computer science
Computer science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe and transform...

 program, or within a standard mathematics, sciences, or engineering program. At some institutions a specialization in scientific computation can be earned as a "minor" within another program (which may be at varying levels). However, there are increasingly many bachelor's
Bachelor's degree
A bachelor's degree is usually an academic degree awarded for an undergraduate course or major that generally lasts for four years, but can range from two to six years depending on the region of the world...

 and master's programs in computational science. Some schools also offer the Ph.D. in computational science, computational engineering
Computational engineering
Computational science and engineering is a relatively new discipline of engineering. It is typically offered as a masters or doctorate program at several institutions...

, computational science and engineering, or scientific computation.

There are also programs in areas such as computational physics
Computational physics
Computational physics is the study and implementation of numerical algorithms to solve problems in physics for which a quantitative theory already exists...

, computational chemistry
Computational chemistry
Computational chemistry is a branch of chemistry that uses computers to assist in solving chemical problems. It uses the results of theoretical chemistry, incorporated into efficient computer programs, to calculate the structures and properties of molecules and solids...

, etc.

See also


External links