Computational science, also known as scientific computing, technical computing or scientific computation (SC), is a division of science, and more specifically the computer sciences, which uses advanced computing capabilities to understand and solve complex physical problems in science. While this typically extends into computational specializations, this field of study includes: Algorithms (numerical and non-numerical): mathematical models, computational models, and computer simulations developed to solve sciences (e.g, physical, biological, and social), engineering, and humanities problems Computer hardware that develops and optimizes the advanced system hardware, firmware, networking, and data management components needed to solve computationally demanding problems The computing infrastructure that supports both the science and engineering problem solving and the developmental computer and information science In practical use, it is typically the application of computer simulation and other forms of computation from numerical analysis and theoretical computer science to solve problems in various scientific disciplines. The field is different from theory and laboratory experiments, which are the traditional forms of science and engineering. The scientific computing approach is to gain understanding through the analysis of mathematical models implemented on computers. Scientists and engineers develop computer programs and application software that model systems being studied and run these programs with various sets of input parameters. The essence of computational science is the application of numerical algorithmsNonweiler T. R., 1986. Computational Mathematics: An Introduction to Numerical Approximation, John Wiley and Sons and computational mathematics. In some cases, these models require massive amounts of calculations (usually floating-point) and are often executed on supercomputers or distributed computing platforms.

The computational scientist

The term computational scientist is used to describe someone skilled in scientific computing. Such a person is usually a scientist, an engineer, or an applied mathematician who applies high-performance computing in different ways to advance the state-of-the-art in their respective applied disciplines.

Computational science is now commonly considered a third mode of science, complementing and adding to experimentation/observation and theory (see image).Graduate Education for Computational Science and Engineering.Siam.org, Society for Industrial and Applied Mathematics (SIAM) website; accessed Feb 2012. Here, one defines a system as a potential source of data, an experiment as a process of extracting data from a system by exerting it through its inputs and a model (M) for a system (S) and an experiment (E) as anything to which E can be applied in order to answer questions about S. A computational scientist should be capable of: recognizing complex problems adequately conceptualizing the system containing these problems designing a framework of algorithms suitable for studying this system: the simulation choosing a suitable computing infrastructure (parallel computing/grid computing/supercomputers) hereby, maximizing the computational power of the simulation assessing to what level the output of the simulation resembles the systems: the model is validated adjusting the conceptualization of the system accordingly repeat the cycle until a suitable level of validation is obtained: the computational scientist trusts that the simulation generates adequately realistic results for the system under the studied conditions Substantial effort in computational sciences has been devoted to developing algorithms, efficient implementation in programming languages, and validating computational results. A collection of problems and solutions in computational science can be found in Steeb, Hardy, Hardy, and Stoop (2004).Steeb W.-H., Hardy Y., Hardly A. and Stoop R., 2004. Problems and Solutions in Scientific Computing with C++ and Java Simulations, World Scientific Publishing.

Philosophers of science, among them HumphreysHumphreys, Paul. Extending ourselves: Computational science, empiricism, and scientific method. Oxford University Press, 2004. and Gelfert,Gelfert, Axel. 2018. How to do science with models: A philosophical primer. Cham: Springer. addressed the question: "to what degree does computational science qualify as science?" They address the general question of epistemology: how does gain insight from such computational science approaches? TolkTolk, Andreas. "Learning Something Right from Models That Are Wrong: Epistemology of Simulation." In Concepts and Methodologies for Modeling and Simulation, edited by L. Yilmaz, pp. 87-106, Cham: Springer International Publishing, 2015. uses these insights to show the epistemological constraints of computer-based simulation research. As computational science uses mathematical models representing the underlying theory in executable form, in essence, they apply modeling (theory building) and simulation (implementation and execution). While simulation and computational science are our most sophisticated way to express our knowledge and understanding, they also come with all constraints and limits already known for computational solutions.

Applications of computational science Problem domains for computational science/scientific computing include:

Predictive computational science Predictive computational science is a scientific discipline concerned with the formulation, calibration, numerical solution, and validation of mathematical models designed to predict specific aspects of physical events, given initial and boundary conditions, and a set of characterizing parameters and associated uncertainties.Oden, J.T., Babuška, I. and Faghihi, D., 2017. Predictive computational science: Computer predictions in the presence of uncertainty. Encyclopedia of Computational Mechanics. Second Edition, pp. 1-26. In typical cases, the predictive statement is formulated in terms of probabilities. For example, given a mechanical component and a periodic loading condition, "the probability is (say) 90% that the number of cycles at failure (Nf) will be in the interval N1<Nf<N2".Szabó B, Actis R and Rusk D. Validation of notch sensitivity factors. Journal of Verification, Validation and Uncertainty Quantification. 4 011004, 2019

Urban complex systems Cities are massively complex systems created by humans, made up of humans, and governed by humans. Computational models and simulations are used to study urban development and city dynamics.

Computational finance

In financial markets, huge volumes of interdependent assets are traded by a large number of interacting market participants in different locations and time zones. Their behavior is complex and the characterization and measurement of the risk inherent to this diverse set of instruments is typically based on complicated mathematical and computational models. Solving these models exactly, even at a single instrument level, is typically not possible, making the use of numerical algorithms necessary. This has become even more urgent and complex recently, as the credit crisis has clearly demonstrated the role of cascading effects going from single instruments through portfolios of single institutions to even the interconnected trading network. Understanding this requires a multi-scale and holistic approach where interdependent risk factors such as market, credit, and liquidity risk are modeled simultaneously and at different interconnected scales.

Computational biology

New developments in biotechnology are now revolutionizing biology and biomedical research. Examples of these techniques are high-throughput sequencing, high-throughput quantitative PCR, intra-cellular imaging, in-situ hybridization of gene expression, three-dimensional imaging techniques like Light Sheet Fluorescence Microscopy, and Optical Projection (micro)-Computer Tomography. Given the massive amounts of complicated data that is generated by these techniques, their meaningful interpretation, and even their storage, form major challenges calling for new approaches. Going beyond current bioinformatics approaches, computational biology needs to develop new methods to discover meaningful patterns in these large data sets. Model-based reconstruction of gene networks can be used to organize the gene expression data in a systematic way and to guide further data collection. A major challenge here is to understand how gene regulation is controlling fundamental biological processes like biomineralization and embryogenesis. The sub-processes like gene regulation, organic molecules interacting with the mineral deposition process, cellular processes, physiology, and other processes at the tissue and environmental levels are linked. Rather than being directed by a central control mechanism, biomineralization and embryogenesis can be viewed as an emergent behavior resulting from a complex system, in which several sub-processes on very different temporal and spatial scales (ranging from nanometer and nanoseconds to meters and years) are connected into a multi-scale system. One of the few available options to understand such systems is by developing a multi-scale model of the system.

Complex systems theory

Using information theory, non-equilibrium dynamics, and explicit simulations, computational systems theory tries to uncover the true nature of complex adaptive systems.

Computational science and engineering

Computational science and engineering (CSE) is a relatively new discipline that deals with the development and application of computational models and simulations, often coupled with high-performance computing, to solve complex physical problems arising in engineering analysis and design (computational engineering) as well as natural phenomena (computational science). CSE has become accepted amongst scientists, engineers and academics as the "third mode of discovery" (next to theory and experimentation). In many fields, computer simulation is integral and therefore essential to business and research. Computer simulation provides the capability to enter fields that are either inaccessible to traditional experimentation or where carrying out traditional empirical inquiries is prohibitively expensive. CSE should neither be confused with pure computer science, nor with computer engineering, although a wide domain in the former is used in CSE (e.g., certain algorithms, data structures, parallel programming, high-performance computing), and some problems in the latter can be modeled and solved with CSE methods (as an application area).

Methods and algorithms Algorithms and mathematical methods used in computational science are varied. They are usually categorized as Computer algebra,Von Zur Gathen, J., & Gerhard, J. (2013). Modern computer algebra. Cambridge University Press.Geddes, K. O., Czapor, S. R., & Labahn, G. (1992). Algorithms for computer algebra. Springer Science & Business Media.Albrecht, R. (2012). Computer algebra: symbolic and algebraic computation (Vol. 4). Springer Science & Business Media.Mignotte, M. (2012). Mathematics for computer algebra. Springer Science & Business Media. including symbolic computation in fields such as statistics, equation solving, algebra, calculus, geometry, linear algebra, tensor analysis (multilinear algebra), optimization; or Numerical analysis,Stoer, J., & Bulirsch, R. (2013). Introduction to numerical analysis. Springer Science & Business Media.Conte, S. D., & De Boor, C. (2017). Elementary numerical analysis: an algorithmic approach. Society for Industrial and Applied Mathematics.Greenspan, D. (2018). Numerical Analysis. CRC Press.Linz, P. (2019). Theoretical numerical analysis. Courier Dover Publications. including:

Computing derivatives by finite differences Application of Taylor series as convergent and asymptotic series