Computer programming/Physics

From testwiki
Revision as of 19:38, 22 June 2007 by 121.6.190.119 (talk) (Mechanics)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

About This Document

I have programmed a (working) 2D physics system before and I am currently in college as a Physics Engineering major, so I have experience, but I am by no means an industry expert, so I'm going to start this document and hope that either someone who knows this stuff steps in and takes over or guides me so that I can do this correctly.

Also, if my formatting looks bad, any one can feel free to change it.

About Physics

Computer programs today simulate physical systems for various purposes, such as realism in games and testing mechanical prototypes before construction. Added with the current trend of increasing processing power, these physical simulations are continually becoming more complicated and elaborate. As such where physics is applicable, programs without these capabilities appear more simple and primitive and thus less desirable compared to programs with these abilities.

Not all programs require the full range of computational capabilities. Most games only require the ability to accurately calculate mechanical processes. Programs like the ones used to test objects need more complex abilites, like calculating the heat given off by the friction between two surfaces. Some programs may even find it desirable to perform pseudo-calculations, calculations based upon physics yet tweaked to achieve a more desirable behavior, or they may just represent a very narrow range of processes that can occur.

Concepts and Programming in Physics

Prerequisites

To program for physics or using physics one should be familiar with some widely-applicable concepts and techniques:

  • Algebra
  • Coordinate Systems
    • 2D
      • cartesian (x, y)
      • polar - distance and direction (r, θ)
      • parametric
    • 3D
      • cartesian (x, y, z)
      • polar - distance and two angles (ρ, θ, φ)
      • parametric
    • (Higher dimensions to be addressed under "Relativity")
  • Trigonometry
  • Series Approximations (Pre-Calculus)
  • Numerical Methods for Calculus and Differential Equations
    • ...
  • Iteration
  • Matrices and Matrix Math
    • Determinant
    • Matrix Multiplication
    • ...
  • Boundary Conditions
  • Complex Math (involving 1)
    • Addition of Complex Numbers
    • Multiplication of Complex Numbers
    • Complex Exponentiation and Logartihms
    • Hyperbolic Trigonometry

Mechanics

Thermodynamics

  • Brownian Motion
  • Heat and Temperature
  • "Zeroth Law"
  • First Law
  • Second Law
  • Third Law

Atoms and Molecules

Electricity

Optics

Relativity

Quantum Mechanics

Miscellaneous

Fluid dynamics - someone undelete the fluid dynamics link on this page: http://en.wikisource.org/wiki/Wikisource:Source_code#Mechanics