# ipython-physics /

Filename Size Date modified Message
19 B
3.1 KB
30.4 KB
```ipython-physics
---------------

This is an extension for IPython 0.11+ that at the moment mainly enables easy
input of physical quantities (i.e. numbers with units).  The implementation

If the "uncertainties" module (http://github.com/newville/uncertainties/) is
installed, you can also enter values with standard errors wherever you can enter
quantities, see the examples below.

You can have a look at a short notebook tutorial put together by Hans Fangohr at
http://www.southampton.ac.uk/~fangohr/blog/physical-quantities-numerical-value-with-units-in-python.html.

Place `physics.py` in any directory on PYTHONPATH, or add its directory to
either in the config file or on the command line as described here:
http://ipython.org/ipython-doc/dev/config/extensions/index.html

Quick usage examples:

In:  1 m // cm                        # convert between units
Out: 100 cm                           # (syntax inspired by Mathematica)

In:  (1 m)/(1 s)                      # sugar for inline quantity input
Out: 1 m/s                            # in arbitrary expressions

In:  Quantity('1 m')/Qantity('1 s')   # this is the desugared form
Out: 1 m/s

In:  // furlong/fortnight             # convert units in last result
Out: 6012.8848 furlong/fortnight

In:  alpha = 90 deg                   # more sugar for assignment: no
# parentheses needed

In:  sin(alpha)                       # angle units work with NumPy
Out: 1.0                              # trigonometric functions

In:  m = 80 +/- 5 kg                  # calculating with uncertainties
In:  v = 130 +/- 10 m/s               # (needs the "uncertainties" module)
In:  0.5 * m * v**2 // kJ
Out: 676 +/- 112.25445 kJ

In:  %tbl sqrt(?x**2 + ?y**2) // cm   # quickly tabulate a formula:
x = 1 m                               # provide some values
y = 2 m
Out: 223.6068 cm                      # and get the result
x = 3 m                               # ... this continues as long as you
y = 4 m                               # enter new values
Out: 500 cm

In:  c0                               # important physical constants
Out: 2.9979246e+08 m/s
In:  setprec(4)                       # set the display precision
In:  c0
Out: 2.998e+08 m/s

The predefined constants are:

pi
e
c0    -- vacuum speed of light
mu0   -- magnetic constant
eps0  -- electric constant
Grav  -- Newton's constant
hpl   -- Planck's constant
hbar  -- Planck's constant / 2pi
e0    -- elementary charge
me    -- electron mass
mp    -- proton mass
mn    -- neutron mass
kb    -- Boltzmann constant
g0    -- Standard earth gravity
R     -- Universal gas constant
alpha -- fine structure constant
Ry    -- Rydberg constant
mu_n  -- Magnetic moment of the neutron
gamma -- Gyromagnetic ratio of the neutron
h0    -- dimensionless Hubble parameter

Please let me know if anything is missing.
```
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.