[Home]

Zboost - Lorentz transformation of a particle

Overview

This program calculates the momentum and energy of a particle after a Lorentz boost. The two-dimensional momentum is represented as a complex number. The letter "Z" in the "Zboost" stands for this complex representation.

The program can either be used interactively, or called as a function from another program.

Input variables:

P0: momentum of the mother particle in the lab frame
M0: mass of the mother particle
P: momentum of a daugher particle in the rest frame of the mother particle
M: rest mass of the daugher particle

Output:

X: momentum of the daugher particle in the lab frame
Y: energy of the daugher particle in the lab frame

Stack:

StackBeforeAfter
t-destroyed
z-destroyed
y-energy of the daugher particle in the lab frame
x-momentum of the daugher particle in the lab frame

Flags:

Flag 1: used to remember polar/rectangular mode.
Flag 99: used to specify non-interactive mode

Usage:

Let us consider a case where a daugher particle with mass M decays from a mother particle with mass M0. The daugher particle has momentum P in the rest frame of the mother particle. The mother particle is moving in the x-direction with momentum P0 in the lab frame. The program calculates the momentum p' and energy E' of the daugher particle in the lab frame, i.e. after the boost.

You can also boost back from the lab frame to the center of mass frame. In this case, P is the momentum of a daugher particle in the lab frame, and negative -P0 is the momentum of the mother particle.

If the momentum of the particle has no transverse component, then just store the parallel component in P. If the momentum has transverse component, give the momentum as a complex number, where real part is for the parallel component and the imaginary part is for the transverse component. You can give them in either RECT mode or POLAR mode. The result will be shown in the same mode as the input mode.

Example

1. Interactive mode

Find the momentum of a photon from a pi0 coming off at 30 degree at the pi0 rest frame. The pi0 has a momentum 1GeV/c.

                             ; Choose:
    CF 99                    ;   interactive mode
    MODES POLA               ;   polar mode for momentum
    MODES DEG                ;   degree mode
    "XEQ ZBOOST"             ;
    1 "P0"                   ; momentum of pi0
    0.135 "M0"               ; mass of pi0
    2 /                      ; energy of gamma = M0/2
    30                       ; angle of photon in the pi0 rest frame
    COMPLEX                  ; photon momentum represented in "polar" mode
    "P"                      ; store the photon momentum
    0 "M"                    ; mass of photon is 0
    R/S                      ;
           9.38E-1 ang 2.06E0; momentum after boost; given as complex
		                     ; 0.938GeV/c photon at 2.06 degree
                 		

2. Program mode

    SF 99                    ; set to non-interactive mode
    store P0,M0,P,M          ;
    "XEQ ZBOOST"             ;
                 p'          ;

				

Program

V1.00 - Feb. 1989

    00   { 103-Byte Prgm }             ;
    01   LBL "ZBOOST"                  ;
    02   MVAR "P0"                     ; momentum of the CM system
    03   MVAR "M0"                     ; mass of the CM system
    04   MVAR "P"                      ; momentum of particle in CM
    05   MVAR "M"                      ; mass of particle
    06   VARMENU "ZBOOST"              ;
    07   FC? 99                        ; Stop if interactive
    08   STOP                          ;
    09   EXITALL                       ;
    10   CF 01                         ;
    11   FS? 73                        ;
    12   SF 01                         ; Flag 1 = polar mode
    13   0                             ;
    14   ENTER                         ;
    15   COMPLEX                       ;
    16   RCL+ "P"                      ; Make P complex
    17   RECT                          ;
    18   COMPLEX                       ; split x(parallel) and y(transverse) component
    19   X<>Y                          ; Px
    20   RCL "P0"                      ;
    21   RCL "M0"                      ;
    22   ->POL                         ; sqrt(P0^2 + M0^2) = E0
    23   X<>Y                          ;
    24   Rv                            ; energy of CM in x-stack
    25   x                             ; px * E0
    26   RCL "P"                       ;
    27   ABS                           ;
    28   RCL "M"                       ;
    29   ->POL                         ;
    30   X<>Y                          ;
    31   Rv                            ; energy of particle in x-stack
    32   RCLx "P0"                     ; e * P0
    33   +                             ; pz * E0 + e * P0
    34   RCL/ "M0"                     ;                 / M0
    35   X<>Y                          ; pt' in x, pz' in y
    36   COMPLEX                       ; make it as a complex number
    37   ENTER                         ;
    38   ABS                           ;
    39   RCL "M"                       ;
    40   ->POL                         ;
    41   X<>Y                          ;
    42   Rv                            ; energy after boost
    43   X<>Y                          ; x:p', y:e'
    44   FS? 01                        ; set back to polar mode
    45   POLAR                         ; if necessary
    46   END                           ;
			

Programmed by Taku Yamanaka, February 1989.