CYrast.h

00001 #ifndef yrast_
00002 #define yrast_
00003 #include <iostream>
00004 #include <fstream>
00005 #include "CMass.h"
00006 using namespace std;
00007 
00019 class CYrast
00020 {
00021  private:
00022 
00023   CYrast();
00024   static CYrast *fInstance; 
00025   static double const pi; 
00026   //needed by getYrastRLDM
00027   static float const x1h[11][6]; 
00028   static float const x2h[11][6]; 
00029   static float const x3h[20][10]; 
00030   static float const x1b[11][6]; 
00031   static float const x2b[11][6]; 
00032   static float const x3b[20][10]; 
00033   //needed by Sierk functions
00034   static double const emncof[4][5]; 
00035   static double const elmcof[4][5]; 
00036   static double const emxcof[5][7];
00037   static double const elzcof[7][7];
00038   static double const egscof[5][7][5];
00039   static double const aizroc[5][6];
00040   static double const ai70c[5][6];
00041   static double const ai95c[5][6];
00042   static double const aimaxc[5][6];
00043   static double const ai952c[5][6];
00044   static double const aimax2c[5][6];
00045   static double const aimax3c[4][4];
00046   static double const aimax4c[4][4];
00047   static double const bizroc[4][6];
00048   static double const bi70c[4][6];
00049   static double const bi95c[4][6];
00050   static double const bimaxc[4][6];
00051   static double const b[8][5][5];
00052   void lpoly(double,int,double*);
00053 
00054   double A; 
00055   double Z; 
00056   double zz; 
00057   double amin; 
00058   double amax; 
00059   double pa[7]; 
00060   double pz[7];  
00061   //needed by saddlefit
00062   float c[6][8][2][11][2]; 
00063   float cubic(float,float,float,float,float,float);
00064 
00065   static bool first; 
00066   int Narray; 
00067   static float const hbarc; 
00068   static float const alfinv;
00069   static float const srznw;
00070   static float const aknw;
00071   static float const bb;
00072   static float const um;
00073   static float const elm;
00074   static float const spdlt;
00075   static float const asnw;
00076   static float const kx[8];
00077   static float const ky[6];
00078   static float const ka[11];
00079   static float const r0; 
00080   static float const sep; 
00081   static bool bForceSierk; 
00082   static double addBar; 
00083 
00084   float sadArray[300]; 
00085   float sadArrayZA[300]; 
00086   CMass * mass; 
00087   static float const deltaJ; 
00088   static float const kRotate; 
00089   int iZ; 
00090   int iA; 
00091   float fJ; 
00092  public:
00093   static CYrast *instance(); 
00094   double Jmax;  
00095   float getYrast(int,int,float);
00096   float getYrastModel(int,int,float);
00097   float getYrastRLDM(int,int,float);
00098   float getYrastSierk(float);
00099   float getJmaxSierk(int,int);
00100   float getBarrierFissionSierk(float);
00101   float getSymmetricSaddleEnergy(int,int,float);
00102   float getBarrierFissionRLDM(int,int,float);
00103   float getBsSierk(float);
00104   static void forceSierk(bool=1);
00105   static void printParameters();
00106   void prepareAsyBarrier(int, int, float);
00107   void printAsyBarrier();
00108   float getSaddlePointEnergy(int,int);
00109   float getSaddlePointEnergy(float);
00110   float getMomentOfInertiaSierk(float);
00111   float WignerEnergy(int iZ, int iA);
00112 
00113   float momInertiaMin; 
00114   float momInertiaMid; 
00115   float momInertiaMax; 
00116   // float sumPair;
00117   //float sumShell;
00118   //float viola(float,float,float,float);
00119 };
00120 #endif

Generated on Mon Aug 6 14:13:09 2012 by  doxygen 1.4.7