src/Bloch/BlochR.cc
/* These are just direct functions which return 3x3 matrices applicable to
   a "single" magnetization vector with only components {Mx, My, Mz}. In such
   a case the user can just input the transverse and longitudinal relaxation
   times. The returned array will be diagonal.

	   Input	     T1 : Longitudinal relaxation rate
	        	     T2 : Transverse relaxation rate
                            rate: Flag if values are rates or times
                            argc: Number of arguments
                            argv: Array of arguments
                            qn  : Query index
	   Output	      R	: 3x3 Bloch relaxation matrix
	   Note			: T1 & T2 values in seconds
	   Note			: R is output in 1/sec
	   Note			: Zero or negative relaxation
	  			  rates result in a zero R                   */
These are just direct functions which return 3x3 matrices applicable to
a "single" magnetization vector with only components {Mx, My, Mz}. In such
a case the user can just input the transverse and longitudinal relaxation
times. The returned array will be diagonal.


These are just direct functions which return 3x3 matrices applicable to a " single " magnetization vector with only components { Mx My Mz } . In such a case the user can just input the transverse and longitudinal relaxation times . The returned array will be diagonal .
BlochMx AFBeforeR(double T1, double T2, bool rate)
  {
  matrix R(3, 3, 0.0, d_matrix_type);
  if(rate) T1 = T2;
  return R;
  }
BlochMx AFBeforeR ( double T1 , double T2 , bool rate ) { matrix R ( 3 , 3 , 0.0 , d_matrix_type ) ; if ( rate ) T1 = T2 ; return R ; }
These are just direct functions which return 3x3 matrices applicable to
a "single" magnetization vector with only components {Mx, My, Mz}.
These are just direct functions which return 3x3 matrices applicable to a " single " magnetization vector with only components { Mx My Mz } .