=====================
Scientific Computing
=====================

.. image:: science.png
   :height: 250
   :width: 300
   :scale: 50%
   :alt: Einstein and Pythagoras fighting over C2
   :align: right
	   
**What is science?** 
The English word ``science`` is derived from the Latin word ``scientia``
for knowledge. A simple definition of science is the activity concerned with
the systematic ``acquisition of knowledge`` about the universe. See the definition of science in the `Cambridge`__ and `Oxford`__ dictionaries.

__ http://dictionary.cambridge.org/us/dictionary/english/science
__ https://en.oxforddictionaries.com/definition/science



**How do we acquire knowledge?** 
There are three ways for acquiring scientific knowledge, known as the
three pillars (or legs) of the scientific method: 
1) `observations` and experimental measurements often obtained by instruments; 
2) `theory` and inductive hypotheses often formulated in the language of mathematics; and 
3) `computation` using computational algorithms and computer simulations.






	   

**Scientific computing**
(or `computational science`) constitutes the third pillar of the
scientific method. It uses computational algorithms to represent
mathematical models of physical phenomena and solve them on computers. The computer outputs will then be used to
predict the future or to reconstruct the past and hence to aquire
knowledge. Computational science has been successful in a wide range
of science and engineering fields, from medicine to climate prediction.

According to `Prof. J. Tinsley Oden`__: "the emergence of computational science is one of the most important developments in human history, a development that will revolutionize virtually every aspect of science in the future."

__ https://www.ices.utexas.edu/people/85/

.. image:: Beskow.png
   :height: 330
   :width: 400
   :scale: 50%
   :alt: Beskow at KTH
   :align: right
	   
**High performance scientific computing**
refers to the systematic practice of aggregating computational algorithms and parallel
computing to efficiently and reliably solve large problems in
science and engineering. It delivers a much higher
performance than one could get out of a typical desktop computer or
workstation, especially when applied to systems that function above a
teraflop or :math:`10^{12}` floating-point operations per second.



**Predictive computational science**
is an emerging, interdisciplinary field concerned with assessing the
`predictability` of mathematical and computational tools, particularly
in the presence of inevitable uncertainty and limited information. It
is based on a systematic incorporation of all three pillars of the
scientific method to acquire knowledge. Predictive computational
science involves methods and principles of a variety of disciplines,
such as mathematics, statistics, computer science, natural sciences,
engineering, medicine, uncertainty quantification, and parallel computing.