src/Level2/TrnsTable1D.cc
/* This routine phase corrects all the transitions in matrix mx using a
   0th order and 1st order phase correction.  Using phi0 as the zeroth
   order phase [phi0 = Re(P)] and t1 as the 1st order correction time
   constant [t1 = Im(P)], the correction to a transition at frequency W
   is given by

  				    -i*phi0    -(W-Wpivot)*t1
  		I   (W) = I  (W) * e        * e
  		 out       in                                                */
This routine phase corrects all the transitions in matrix mx using a
0th order and 1st order phase correction.  Using phi0 as the zeroth
order phase [phi0 = Re(P)] and t1 as the 1st order correction time
constant [t1 = Im(P)], the correction to a transition at frequency W
is given by


This routine phase corrects all the transitions in matrix mx using a 0th order and 1st order phase correction . Using phi0 as the zeroth order phase [ phi0 = Re ( P ) ] and t1 as the 1st order correction time constant [ t1 = Im ( P ) ] the correction to a transition at frequency W is given by
void TTable1D::pcorrect(double Wpivot, complex& P)
  {
  double phase0 = zRe(P);			
  complex pc0 = (-complexi*phase0).Zexp();	
  int i=0;
  complex z;
  for(i=0; i<rows(); i++)			
    {
    z = get(i,1);				
    z *= pc0;					
    put(z,i,1);				
    }
  double t1 = zIm(P);				
  double delW = 0;				
  complex pc1;					
  for(i=0; i<rows(); i++)                    
    {
    delW = getIm(i,0) - Wpivot;		
    pc1 = (-complexi*delW*t1).Zexp();		
    z = get(i,1);                            
    z *= pc1;					
    put(z,i,1);                              
    }
  }
void TTable1D :: pcorrect ( double Wpivot , complex & P ) { double phase0 = zRe ( P ) ; complex pc0 = ( - complexi * phase0 ) . Zexp ( ) ; int i = 0 ; complex z ; for ( i = 0 ; i < rows ( ) ; i ++ ) { z = get ( i , 1 ) ; z *= pc0 ; put ( z , i , 1 ) ; } double t1 = zIm ( P ) ; double delW = 0 ; complex pc1 ; for ( i = 0 ; i < rows ( ) ; i ++ ) { delW = getIm ( i , 0 ) - Wpivot ; pc1 = ( - complexi * delW * t1 ) . Zexp ( ) ; z = get ( i , 1 ) ; z *= pc1 ; put ( z , i , 1 ) ; } }
This routine phase corrects all the transitions in matrix mx using a
0th order and 1st order phase correction.
This routine phase corrects all the transitions in matrix mx using a 0th order and 1st order phase correction .
//	   First Apply The Zeroth Order Phase Correction // Zero order phase (radians) // Zero order phase correction // Loop rows // 	Transition intensity // 	Adjust transition phase // 	Reset the intensity //		    Now Apply The First Order Phase Correction // 1st order time const. (sec) // Diff. frequency (rad/sec) // 1st order phase correction // Loop rows //      Freq. Difference //      Phase correction //      Transition intensity //      Adjust transition phase //      Reset (phase) intensity