src/Level2/RelaxBas.cc
/* Note that the spin system is NOT stored in class RBasic. Class RBasic is
   associated with a systems spin Hilbert space via the set of spin operators
   {Izi} as well as the arrays that track individual spin mz and total Fz 
   values for the basis functions, FZxNS and Fzs respectively. When the system
   is "set", the arrays FZxNS, Fzs, and {Izi} must be generated generated and
   at that point RBasic becomes associated with a spin Hilbert space. Prior to
   the system being set this is not true and without a Hilbert space we do not
   allow the evolution Hamiltonian nor the detection operator to be specfied.
   Indeed, if the spin system is set it will immediately remove any existing
   Hamiltonian (H0), density operator (D), and infinite time density operator
   (in Cinf).                                                                */
Note that the spin system is NOT stored in class RBasic. Class RBasic is
associated with a systems spin Hilbert space via the set of spin operators
{Izi} as well as the arrays that track individual spin mz and total Fz
values for the basis functions, FZxNS and Fzs respectively. When the system
is "set", the arrays FZxNS, Fzs, and {Izi} must be generated generated and
at that point RBasic becomes associated with a spin Hilbert space. Prior to
the system being set this is not true and without a Hilbert space we do not
allow the evolution Hamiltonian nor the detection operator to be specfied.
Indeed, if the spin system is set it will immediately remove any existing
Hamiltonian (H0), density operator (D), and infinite time density operator
(in Cinf).
Note that the spin system is NOT stored in class RBasic . Class RBasic is associated with a systems spin Hilbert space via the set of spin operators { Izi } as well as the arrays that track individual spin mz and total Fz values for the basis functions FZxNS and Fzs respectively . When the system is " set " the arrays FZxNS Fzs and { Izi } must be generated generated and at that point RBasic becomes associated with a spin Hilbert space . Prior to the system being set this is not true and without a Hilbert space we do not allow the evolution Hamiltonian nor the detection operator to be specfied . Indeed if the spin system is set it will immediately remove any existing Hamiltonian ( H0 ) density operator ( D ) and infinite time density operator ( in Cinf ) .
bool RBasic::SetSystem(const spin_sys& sys, int warn)
  {
  if(!SetIzs(sys, warn?true:false))		
    {						
    if(warn)					
      {						
      if(warn >= 2) RBasFatal(90);		  
      else          RBasErr(90);		  
      }						  
    return false;				  
    }						  
  if(!SetSigInf(sigma_eq(sys), warn?true:false))
    { RBasFatal(64); return false; }
  FZxNS = sys.qStates();			
  Fzs   = sys.qnStates();			
  SetR2Mx();					
  H0     = gen_op();				
  Det    = gen_op();				
  Csig.clear();					
  return true;
  }
bool RBasic :: SetSystem ( const spin_sys & sys , int warn ) { if ( ! SetIzs ( sys , warn ? true : false ) ) { if ( warn ) { if ( warn >= 2 ) RBasFatal ( 90 ) ; else RBasErr ( 90 ) ; } return false ; } if ( ! SetSigInf ( sigma_eq ( sys ) , warn ? true : false ) ) { RBasFatal ( 64 ) ; return false ; } FZxNS = sys . qStates ( ) ; Fzs = sys . qnStates ( ) ; SetR2Mx ( ) ; H0 = gen_op ( ) ; Det = gen_op ( ) ; Csig . clear ( ) ; return true ; }
Note that the spin system is NOT stored in class RBasic.
Note that the spin system is NOT stored in class RBasic .
//                        Set Up For T1 Relaxation //                  System ==> {Izi}, SigmaInf == Czis        // Try to make all {Izi}  (T1) // If this fails then the (T1) // system has a different (T1) // spins count in it!     (T1) // Default SigInf [eq.]   (T1) //                        Set Up For T2 Relaxation //                      System ==> FZxNs, Fzs, R2Mx // Array of basis Fz's    (T2) // Vector of total Fz's   (T2) // Transverse R2's array  (T2) //             Remove All Other System Dependent Parameters //                          FZxNs, Fzs, R2Mx // Remove existing H // Remove existing D // Remove existing Iz coeffs.