dwvisser.nuclear
Class Boost

java.lang.Object
  |
  +--dwvisser.nuclear.Boost

public class Boost
extends java.lang.Object

This class handles general boosts from one lorentz frame to another. Instances are created by specifying the relative velocity of the frame to be boosted to.

Author:
dwvisser

Constructor Summary
Boost(double[] _beta)
          Creates a boost given the beta "4-vector" that a boost creates.
Boost(double _beta, Direction d)
           
Boost(double _beta, double theta, double phi)
          Creates new Boost
 
Method Summary
 double calculateGamma(double _beta)
          Given a velocity (_beta) in units of c, calculate gamma.
 Boost getInverse()
           
static Boost inverseBoost(Boost boost)
          Creates the boost for a velocity equal in magnitude in the opposite direction from the original boost.
static void main(java.lang.String[] args)
          Test code.
static double[] make4Momentum(double KE, double mass, double theta, double phi)
           
 java.lang.String toString()
           
 double[] transformVector(double[] fourVector)
          Given a proper 4-vector, boost it to the frame indicated at the creation of this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Boost

public Boost(double _beta,
             double theta,
             double phi)
Creates new Boost

Parameters:
_beta - velocity of frame (in units of c)
theta - angle from z axis (in radians)
phi - azimuthal angle (in radians)

Boost

public Boost(double[] _beta)
Creates a boost given the beta "4-vector" that a boost creates. This "4-vector" has beta as its 0th element, and the x, y, and z components as the 1, 2, and 3 elements, respectively.

Parameters:
_beta - the array described above

Boost

public Boost(double _beta,
             Direction d)
Method Detail

inverseBoost

public static Boost inverseBoost(Boost boost)
Creates the boost for a velocity equal in magnitude in the opposite direction from the original boost. This is useful when you want to go back and forth between 2 frames.

Parameters:
boost - the boost to be inverted
Returns:
boost for the inverse transformation

getInverse

public Boost getInverse()

calculateGamma

public double calculateGamma(double _beta)
Given a velocity (_beta) in units of c, calculate gamma.
gamma=[sqrt(1-_beta^2)]^(-1)

Parameters:
_beta - velocity over c, the speed of light
Returns:
the standard gamma parameter from special relativity

transformVector

public double[] transformVector(double[] fourVector)
                         throws MathException
Given a proper 4-vector, boost it to the frame indicated at the creation of this object.

Parameters:
fourVector - proper special relativistic 4-vector
Returns:
4-vector in the new frame
Throws:
MathException - if there's a computation problem
See Also:
Boost

make4Momentum

public static double[] make4Momentum(double KE,
                                     double mass,
                                     double theta,
                                     double phi)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

main

public static void main(java.lang.String[] args)
Test code.

Parameters:
args - ignored