00001 #ifndef __INCLUDE_KPLUSPIPLUS_CC__ 00002 #define __INCLUDE_KPLUSPIPLUS_CC__ 00003 #include "wavefunction.h" 00004 00005 00006 using namespace std; 00007 00008 CWaveFunction_kpluspiplus_sqwell::CWaveFunction_kpluspiplus_sqwell(string parsfilename) : CWaveFunction(){ 00009 ParsInit(parsfilename); 00010 00011 m1=MPI; 00012 m2=MKAON; 00013 IDENTICAL=0; 00014 00015 q1q2=1; 00016 00017 nchannels=1; 00018 00019 ellmax=1; 00020 InitArrays(); 00021 printf("Arrays Initialized\n"); 00022 ell[0]=0; // S I=3/2 00023 InitWaves(); 00024 00025 nwells=new int[nchannels]; 00026 nwells[0]=1; 00027 00028 SquareWell_MakeArrays(); 00029 00030 a[0][0]=1.26401; 00031 V0[0][0]=49.8849; 00032 00033 SquareWell_Init(); 00034 00035 } 00036 00037 CWaveFunction_kpluspiplus_sqwell::~CWaveFunction_kpluspiplus_sqwell(){ 00038 SquareWell_DeleteArrays(); 00039 } 00040 00041 00042 double CWaveFunction_kpluspiplus_sqwell::CalcPsiSquared(int iq,double r,double ctheta){ 00043 double psisquared; 00044 double q=GetQ(iq); 00045 complex<double> psi; 00046 psi=planewave[iq]->planewave(r,ctheta); 00047 double x; 00048 complex<double> DelPhi[1]; 00049 00050 SquareWell_GetDelPhi(iq,r,DelPhi); 00051 00052 x=q*r/HBARC; 00053 // For I=3/2 00054 psi+=DelPhi[0]/x; 00055 psisquared=real(psi*conj(psi)); 00056 psisquared*=RelativisticCorrection(r,iq); 00057 return psisquared; 00058 } 00059 00060 #endif