Contents

Acknowledgement
Abstract
Kurzfassung
Motivation
1 Introduction
I  Common Ground
2 The Value of Abstraction
 2.1 Abstractions and the World
 2.2 Implementations
 2.3 Obstacles
 2.4 Guidance
3 Machines for Computations
 3.1 Paradigms
  3.1.1 Imperative Programming
  3.1.2 Object-Oriented Programming
  3.1.3 Functional Programming
  3.1.4 Generic Programming
  3.1.5 Programming Language for Scientific Computing
 3.2 Mathematics and Algorithms
 3.3 Example of Generic Programming
  3.3.1 Mathematical Description
  3.3.2 Compile Time Structure
  3.3.3 Compile Time Meta Program
  3.3.4 Run Time Adaption
II  Theory
4 Mathematical Tools
 4.1 Bare Basics
 4.2 Algebraic Structures
 4.3 Mappings
 4.4 Topology
 4.5 Fibers
 4.6 Differential Geometry
  4.6.1 Tensor Coordinates
  4.6.2 Bra-Ket Notation
  4.6.3 Beyond 1-Forms
  4.6.4 Fields
  4.6.5 Derivatives
  4.6.6 Special Spaces
  4.6.7 Peculiarities in Special Spaces
 4.7 Integration
 4.8 Distances
 4.9 Integral Equations
 4.10 Probability
5 Dynamics
 5.1 Newton’s Mechanics and World
 5.2 Lagrangian Formalism
 5.3 Hamiltonian Formalism
 5.4 Statistical Description – Boltzmann’s Equation
 5.5 Macroscopic Quantities
 5.6 Boltzmann’s Equation in Integral Form
 5.7 The Quantum World
III  Methods
6 Components
 6.1 Sets
 6.2 Data Types
 6.3 Topology
 6.4 Fibers
 6.5 Geometric Structures
 6.6 Integration
  6.6.1 Interpolating Integration
  6.6.2 Stochastic Approach to Integration
7 Dynamics in Action
 7.1 Equilibrium and Macroscopic Quantities
 7.2 Tracing Phase Space – Components from Theory
  7.2.1 Sections of Trajectories
  7.2.2 Trajectory Hopping
  7.2.3 Bridging Two Worlds
 7.3 Among Quanta
  7.3.1 A Coherent Phase Space Illustration
  7.3.2 Phase Space Capturing Quantum Effects
 7.4 Bordering Two Worlds Again
  7.4.1 Wigner Boltzmann Equation
  7.4.2 Approximation to Quantum Effects in Semiconductor Devices
8 Outlook
A Resolvent for Integral Equations
B Random Number Generation
C Richardson Extrapolation