src/IntRank2/IntRank2A.cc
/* In this case the constructon is performed entirely from parameters found in
   the specified parameter set.  The indices allows users to read in multiple
   spatial tensors by setting either (#) or (#,#) suffix on parameter names.
   If the first # is default (idxI=-1) not suffix will be used.  If the second
   # is default (idxS=-1) then only a single (#) suffix is used, i.e. the #
   is an interaction index. When both #'s are used and the suffix is (#,#) 
   the numbers are loosely associated with spin indices.

   The parameter set is used to obtain only 2 pieces of information. The
   asymmetry value (eta) and the spatial tensor orientation (alpha,beta,gamma).
   Allowances are made so that the asymmetry can be set in either spherical
   or Cartesian terms and so that the orientation can be set using either
   individual angles or as on set of Euler angles.

           Input                IR2A    : Rank 2 spatial tensor
                                pset    : Parameter set
                                idxI    : Interaction index (default -1->none)
                                idxS    : Interaction index (default -1->none)
           Output               none    : Rank 2 spatial tensor constructed
                                          from parameters in pset             */
In this case the constructon is performed entirely from parameters found in
the specified parameter set.  The indices allows users to read in multiple
spatial tensors by setting either (#) or (#,#) suffix on parameter names.
If the first # is default (idxI=-1) not suffix will be used.  If the second
is default (idxS=-1) then only a single (#) suffix is used, i.e. the
is an interaction index. When both #'s are used and the suffix is (#,#)
the numbers are loosely associated with spin indices.

The parameter set is used to obtain only 2 pieces of information. The
asymmetry value (eta) and the spatial tensor orientation (alpha,beta,gamma).
Allowances are made so that the asymmetry can be set in either spherical
or Cartesian terms and so that the orientation can be set using either
individual angles or as on set of Euler angles.


In this case the constructon is performed entirely from parameters found in the specified parameter set . The indices allows users to read in multiple spatial tensors by setting either ( # ) or ( # # ) suffix on parameter names . If the first # is default ( idxI = - 1 ) not suffix will be used . If the second is default ( idxS = - 1 ) then only a single ( # ) suffix is used i . e . the is an interaction index . When both # ' s are used and the suffix is ( # # ) the numbers are loosely associated with spin indices . The parameter set is used to obtain only 2 pieces of information . The asymmetry value ( eta ) and the spatial tensor orientation ( alpha beta gamma ) . Allowances are made so that the asymmetry can be set in either spherical or Cartesian terms and so that the orientation can be set using either individual angles or as on set of Euler angles .
IntRank2A::IntRank2A(ParameterSet& pset, int idxI, int idxS, int warn)
  {
  string pnb("IR2");					
  bool TF = getAX(pset,pnb,ETA,_EAs,idxI,idxS,1);	
  if(!TF)						
    {							
    ETA  = 0.0;						
    _EAs = EAzero;
    if(warn)
      {
      if(warn > 1)  IR2Afatal(21);			
      else          IR2Aerror(53);                        
      }
    }
/*
  if(!getAeta(pset,pnb,ETA,idxI,idxS,warn?true:false)	// Try & read eta value
  || !CheckEta(ETA,warn?true:false))			// it must be in [0,1]
    {							// If unable take some
    if(warn > 2)  IR2Afatal(2);				
    else if(warn) IR2Aerror(11);    			//   Setting eta to 0
    ETA = 0.0;						//   Set default 0
    }
  if(!getOrientation(pset,pnb,_EAs,idxI,idxS,warn?true:false))	// Try & read orient.
    {
    if(warn > 2)  IR2Afatal(2);				
    else if(warn) IR2Aerror(53);    			
    _EAs = EAzero;
    }
*/
  }
IntRank2A :: IntRank2A ( ParameterSet & pset , int idxI , int idxS , int warn ) { string pnb ( " " ) ; bool TF = getAX ( pset , pnb , ETA , _EAs , idxI , idxS , 1 ) ; if ( ! TF ) { ETA = 0.0 ; _EAs = EAzero ; if ( warn ) { if ( warn > 1 ) IR2Afatal ( 21 ) ; else IR2Aerror ( 53 ) ; } } }
In this case the constructon is performed entirely from parameters found in
the specified parameter set.
In this case the constructon is performed entirely from parameters found in the specified parameter set .
// Base name for eta // Try & read tensor // If unsuccessful, // make sure we are zero // & take some action // action ala warn flag //   Setting EAs to 0 // sosi -this is old code that did not read cartesian spatial tensors /*
  if(!getAeta(pset,pnb,ETA,idxI,idxS,warn?true:false)	// Try & read eta value
  || !CheckEta(ETA,warn?true:false))			// it must be in [0,1]
    {							// If unable take some
    if(warn > 2)  IR2Afatal(2);				// action ala warn flag
    else if(warn) IR2Aerror(11);    			//   Setting eta to 0
    ETA = 0.0;						//   Set default 0
    }
  if(!getOrientation(pset,pnb,_EAs,idxI,idxS,warn?true:false))	// Try & read orient.
    {
    if(warn > 2)  IR2Afatal(2);				// action ala warn flag
    else if(warn) IR2Aerror(53);    			//   Setting EAs to 0
    _EAs = EAzero;
    }
*/