ComputeGBIS.inl File Reference

Go to the source code of this file.

Defines

#define FS_MAX   1.728f
#define COULOMB   332.0636f
#define TA   0.333333333333333f
#define TB   0.4f
#define TC   0.428571428571428f
#define TD   0.444444444444444f
#define TE   0.454545454545454f
#define DA   1.333333333333333f
#define DB   2.4f
#define DC   3.428571428571428f
#define DD   4.444444444444444f
#define DE   5.454545454545454f

Typedefs

typedef float GBReal
typedef float Mass

Functions

static float FastTanH (float x)
static float MassToRadius (Mass mi)
static float MassToScreen (Mass mi)
static void h0 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh0 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h1 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh1 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h2 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh2 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h3 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh3 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h4 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh4 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h5 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh5 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void h6 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
static void dh6 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
static void CalcH (float r, float r2, float ri, float rc, float r0, float rs, float &h, int &d)
static void CalcDH (float r, float r2, float ri, float rc, float r0, float rs, float &dh, int &d)
static void CalcHPair (float r, float r2, float ri, float rc, float ri0, float rjs, float rj0, float ris, int &dij, int &dji, float &hij, float &hji)
static void CalcDHPair (float r, float r2, float ri, float rc, float ri0, float rjs, float rj0, float ris, int &dij, int &dji, float &dhij, float &dhji)
static void Calc_dEdr_Pair (const float &r, const float &r2, const float &qiqj, const float &ai, const float &aj, const float &kappa, const float &epsilon_p_i, const float &epsilon_s_i, float &aiaj, float &expr2aiaj4, float &fij, float &f_i, float &expkappa, float &Dij, float &gbE, float &ddrGbE)
static void Calc_dEda_Pair (const float &r2, const float &ai, const float &aj, const float &qiqj, const float &kappa, const float &aiaj, const float &expkappa, const float &expr2aiaj4, const float &fij, const float &f_i, const float &Dij, const float &epsilon_s_i, float &dEdai, float &dEdaj)
static void Phase2_Pair (const float &r, const float &r2, const float &r_i, const float &qiqj, const float &ai, const float &aj, const float &epsilon_p_i, const float &epsilon_s_i, const float &kappa, const int &doFullElect, float &gbEij, float &ddrGbEij, float &dEdai, float &dEdaj)


Define Documentation

#define COULOMB   332.0636f

Definition at line 28 of file ComputeGBIS.inl.

#define DA   1.333333333333333f

Definition at line 37 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), dh2(), and dh2Ser().

#define DB   2.4f

Definition at line 38 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), dh2(), and dh2Ser().

#define DC   3.428571428571428f

Definition at line 39 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), dh2(), and dh2Ser().

#define DD   4.444444444444444f

Definition at line 40 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), dh2(), and dh2Ser().

#define DE   5.454545454545454f

Definition at line 41 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), dh2(), and dh2Ser().

#define FS_MAX   1.728f

Definition at line 24 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), GBIS_P1_Kernel(), GBIS_P3_Kernel(), and pairlistFromAll().

#define TA   0.333333333333333f

Definition at line 32 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), h2(), and h2Ser().

#define TB   0.4f

Definition at line 33 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), h2(), and h2Ser().

#define TC   0.428571428571428f

Definition at line 34 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), h2(), and h2Ser().

#define TD   0.444444444444444f

Definition at line 35 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), h2(), and h2Ser().

#define TE   0.454545454545454f

Definition at line 36 of file ComputeGBIS.inl.

Referenced by ComputeNonbondedUtil::calcGBIS(), h2(), and h2Ser().


Typedef Documentation

typedef float GBReal

Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.

Definition at line 17 of file ComputeGBIS.inl.

typedef float Mass

Definition at line 20 of file ComputeGBIS.inl.


Function Documentation

static void Calc_dEda_Pair ( const float &  r2,
const float &  ai,
const float &  aj,
const float &  qiqj,
const float &  kappa,
const float &  aiaj,
const float &  expkappa,
const float &  expr2aiaj4,
const float &  fij,
const float &  f_i,
const float &  Dij,
const float &  epsilon_s_i,
float &  dEdai,
float &  dEdaj 
) [inline, static]

Definition at line 486 of file ComputeGBIS.inl.

References f.

Referenced by Phase2_Pair().

00500   {
00501 
00502   //float tmp_dEda = -0.5*COULOMB*qiqj*f_i*f_i
00503   float tmp_dEda = 0.5f*qiqj*f_i*f_i
00504                       *(kappa*epsilon_s_i*expkappa-Dij*f_i)
00505                       *(aiaj+0.25f*r2)*expr2aiaj4;//0
00506   dEdai = tmp_dEda/ai;
00507   dEdaj = tmp_dEda/aj;
00508 }

static void Calc_dEdr_Pair ( const float &  r,
const float &  r2,
const float &  qiqj,
const float &  ai,
const float &  aj,
const float &  kappa,
const float &  epsilon_p_i,
const float &  epsilon_s_i,
float &  aiaj,
float &  expr2aiaj4,
float &  fij,
float &  f_i,
float &  expkappa,
float &  Dij,
float &  gbE,
float &  ddrGbE 
) [inline, static]

Definition at line 436 of file ComputeGBIS.inl.

Referenced by Phase2_Pair().

00453   {
00454   //allocate local variables
00455   float aiaj4,ddrDij,ddrf_i,ddrfij;
00456 
00457   //calculate GB energy
00458   aiaj = ai*aj;
00459   aiaj4 = 4.f*aiaj;
00460   //printf("exp(%e)\n",(-r2/aiaj4));
00461   expr2aiaj4 = exp(-r2/aiaj4);
00462   fij = sqrt(r2+aiaj*expr2aiaj4);
00463   f_i = 1/fij;
00464   expkappa = (kappa > 0.f) ? exp(-kappa*fij) : 1.f;
00465   Dij = epsilon_p_i - expkappa*epsilon_s_i;
00466   //gbE = -COULOMB*qiqj*Dij*f_i;
00467   gbE = qiqj*Dij*f_i;
00468 
00469   //calculate energy derivatives
00470   ddrfij = r*f_i*(1.f - 0.25f*expr2aiaj4);
00471   ddrf_i = -ddrfij*f_i*f_i;
00472   ddrDij = kappa*expkappa*ddrfij*epsilon_s_i;
00473   //ddrGbE = -COULOMB*qiqj*(ddrDij*f_i+Dij*ddrf_i);
00474   ddrGbE = qiqj*(ddrDij*f_i+Dij*ddrf_i);
00475 }

static void CalcDH ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh,
int &  d 
) [inline, static]

Definition at line 360 of file ComputeGBIS.inl.

References dh0(), dh1(), dh2(), dh3(), dh4(), dh5(), and dh6().

Referenced by CalcDHPair(), calcGBISPhase(), and GBIS_P3_Kernel().

00361                                                    {
00362 if (r > 4*rs) {
00363   if( r < rc - rs) {//II
00364     dh2(r,r2,ri,rc,r0,rs,dh); d = 2;
00365   } else if (r < rc + rs) {//I
00366     dh1(r,r2,ri,rc,r0,rs,dh); d = 1;
00367   } else /*if (r > rc + rs)*/ {//0
00368     dh0(r,r2,ri,rc,r0,rs,dh); d = 0;
00369   }
00370 } else {
00371   if( r > r0 + rs ) {//III
00372     dh3(r,r2,ri,rc,r0,rs,dh); d = 3;
00373   } else if (r > (r0>rs?r0-rs:rs-r0) ) {//IV
00374     dh4(r,r2,ri,rc,r0,rs,dh); d = 4;
00375   } else if (r0 < rs ) {//V
00376     dh5(r,r2,ri,rc,r0,rs,dh); d = 5;
00377   } else {//VI
00378     dh6(r,r2,ri,rc,r0,rs,dh); d = 6;
00379   }
00380 }
00381 }

static void CalcDHPair ( float  r,
float  r2,
float  ri,
float  rc,
float  ri0,
float  rjs,
float  rj0,
float  ris,
int &  dij,
int &  dji,
float &  dhij,
float &  dhji 
) [inline, static]

Definition at line 409 of file ComputeGBIS.inl.

References CalcDH().

Referenced by ComputeNonbondedUtil::calcGBIS().

00421   {
00422 //                  swapped
00423   CalcDH(r,r2,ri,rc,ri0,rjs,dhij,dij);//hij
00424   CalcDH(r,r2,ri,rc,rj0,ris,dhji,dji);//hji
00425 }

static void CalcH ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h,
int &  d 
) [inline, static]

Definition at line 326 of file ComputeGBIS.inl.

References h0(), h1(), h2(), h3(), h4(), h5(), and h6().

Referenced by calcGBISPhase(), CalcHPair(), and GBIS_P1_Kernel().

00327                                                   {
00328 
00329 /*
00330 r - distance
00331 rc - alpha cutoff
00332 rs - screened radius
00333 */
00334 
00335 if (r > 4*rs) { //change this to 1/4 r > rs
00336   if( r < rc - rs) {//II            68%
00337     h2(r,r2,ri,rc,r0,rs,h); d = 2;
00338   } else if (r < rc + rs) {//I      23%
00339     h1(r,r2,ri,rc,r0,rs,h); d = 1;
00340   } else /*if (r > rc + rs)*/ {//0  7%
00341     h0(r,r2,ri,rc,r0,rs,h); d = 0;
00342   } 
00343 } else {
00344   if( r > r0 + rs ) {//III          1%
00345     h3(r,r2,ri,rc,r0,rs,h); d = 3;
00346   } else if ( r > (r0>rs?r0-rs:rs-r0) ) {//IV 0%
00347     h4(r,r2,ri,rc,r0,rs,h); d = 4;
00348   } else if (r0 < rs ) {//V         0%
00349     h5(r,r2,ri,rc,r0,rs,h); d = 5;
00350   } else {//VI                      0%
00351     h6(r,r2,ri,rc,r0,rs,h); d = 6;
00352   }
00353 }
00354 }

static void CalcHPair ( float  r,
float  r2,
float  ri,
float  rc,
float  ri0,
float  rjs,
float  rj0,
float  ris,
int &  dij,
int &  dji,
float &  hij,
float &  hji 
) [inline, static]

Definition at line 387 of file ComputeGBIS.inl.

References CalcH().

Referenced by ComputeNonbondedUtil::calcGBIS().

00400   {
00401   CalcH(r,r2,ri,rc,ri0,rjs,hij,dij);//hij
00402   CalcH(r,r2,ri,rc,rj0,ris,hji,dji);//hji
00403 }

static void dh0 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 150 of file ComputeGBIS.inl.

References f.

Referenced by CalcDH().

00151                                                {
00152   dh = 0.f;
00153 }

static void dh1 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 177 of file ComputeGBIS.inl.

References f.

Referenced by CalcDH().

00178                                                {
00179 
00180   float rci = 1.f/rc;
00181   float rmrs = r-rs;// 4 times
00182   float rmrsi = 1.f/rmrs;
00183   float rmrs2 = rmrs*rmrs;
00184   float rs2 = rs*rs;
00185   float logr = log(rmrs*rci);
00186   float rci2 = rci*rci;
00187   dh = ri*ri*(-0.25f*logr - (rc*rc - rmrs2)*(rs2 + r2)*0.125f*rci2*rmrsi*rmrsi);
00188 }

static void dh2 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 206 of file ComputeGBIS.inl.

References DA, DB, DC, DD, and DE.

Referenced by CalcDH().

00207                                            {
00208 
00209     float k = rs*ri; k*=k;//k=(rs/r)^2
00210     dh = -rs*ri*ri*ri*k*(DA+k*(DB+k*(DC+k*(DD+k*DE))));
00211 }

static void dh3 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 228 of file ComputeGBIS.inl.

Referenced by CalcDH().

00229                                            {
00230     float rs2 = rs*rs;
00231     float r2mrs2i = 1.f/(r2-rs2);
00232     dh = -0.25f*ri*(2.f*(r2+rs2)*rs*r2mrs2i*r2mrs2i + ri*log((r-rs)/(r+rs)));
00233 }

static void dh4 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 257 of file ComputeGBIS.inl.

References f.

Referenced by CalcDH().

00258                                            {
00259     float ri2 = ri*ri;
00260     float r02 = r0*r0;
00261     float rs2 = rs*rs;
00262     float r0i = 1.f/r0;
00263     float rspri = 1.f/(r+rs);
00264     float logr = log(r0*rspri);
00265     float r02mrs2 = r02-rs2;
00266     float rilogr = ri*logr;
00267     dh = 0.25f*( (- 0.5f +(r2*r02mrs2 - 2.f*r*rs*rs2+rs2*r02mrs2)
00268         * 0.5f *ri2*rspri*rspri)*r0i*r0i - ri*rilogr );
00269 }

static void dh5 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 291 of file ComputeGBIS.inl.

Referenced by CalcDH().

00292                                            {
00293     float rs2 = rs*rs;
00294     float r2mrs2i = 1.f/(r2-rs2);
00295     float rsr2mrs2i = rs*r2mrs2i;
00296     float rprs = r+rs;
00297     float rmrs = r-rs;
00298     float logr = 0.5f*ri*log(-rmrs/rprs);
00299     dh = -0.5f*ri*((rs2+r2)*rsr2mrs2i*r2mrs2i+logr );
00300 }

static void dh6 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  dh 
) [inline, static]

Definition at line 316 of file ComputeGBIS.inl.

Referenced by CalcDH().

00317                                            {
00318   dh = 0;
00319 }

static float FastTanH ( float  x  )  [inline, static]

Definition at line 44 of file ComputeGBIS.inl.

00044                                         {
00045   float a = 2.f*x+0.02f;;
00046   a *= (6.f + a*(3.f + a));
00047   return (a)/(a+12.f);
00048 }

static void h0 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 141 of file ComputeGBIS.inl.

References f.

Referenced by CalcH().

00142                                               {
00143   h = 0.f;
00144 }

static void h1 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 160 of file ComputeGBIS.inl.

References f.

Referenced by ComputeNonbondedUtil::calcGBIS(), and CalcH().

00161                                               {
00162 
00163   float rci = 1.f/rc;
00164   float rmrs = r-rs;
00165   float rmrsi = 1.f/rmrs;
00166   //float rmrs2 = rmrs*rmrs;
00167   float rs2 = rs*rs;
00168   float logr = log(rmrs*rci);
00169   float rci2 = rci*rci;
00170   h = 0.125f*ri*(1.f + 2.f*r*rmrsi + rci2*(r2 - 4.f*rc*r - rs2) + 2.f*logr);
00171 }

static void h2 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 195 of file ComputeGBIS.inl.

References TA, TB, TC, TD, and TE.

Referenced by ComputeNonbondedUtil::calcGBIS(), and CalcH().

00196                                           {
00197 
00198     float k = rs*ri; k*=k;//k=(rs/r)^2
00199     h = rs*ri*ri*k*(TA+k*(TB+k*(TC+k*(TD+k*TE))));
00200 }

static void h3 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 218 of file ComputeGBIS.inl.

References f.

Referenced by CalcH().

00219                                           {
00220     float r2mrs2i = 1.f/(r2-rs*rs);
00221     h = 0.5f * ( rs*r2mrs2i + 0.5f * log((r-rs)/(r+rs))*ri );
00222 }

static void h4 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 240 of file ComputeGBIS.inl.

Referenced by CalcH().

00241                                           {
00242     //float ri2 = ri*ri;
00243     float r02 = r0*r0;
00244     float rs2 = rs*rs;
00245     float r0i = 1.f/r0;
00246     float rspri = 1.f/(r+rs);
00247     float logr = log(r0*rspri);
00248     //float r02mrs2 = r02-rs2;
00249     float rilogr = ri*logr;
00250     h = 0.25f*( r0i*(2.f- 0.5f*(r0i*ri*(r2 + r02 - rs2))) - rspri + rilogr );
00251 }

static void h5 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 276 of file ComputeGBIS.inl.

Referenced by CalcH().

00277                                           {
00278     float rs2 = rs*rs;
00279     float r2mrs2i = 1.f/(r2-rs2);
00280     float rsr2mrs2i = rs*r2mrs2i;
00281     float rprs = r+rs;
00282     float rmrs = r-rs;
00283     float logr = 0.5f*ri*log(-rmrs/rprs);
00284     h = 0.5f*( rsr2mrs2i + 2.f/r0 + logr );
00285 }

static void h6 ( float  r,
float  r2,
float  ri,
float  rc,
float  r0,
float  rs,
float &  h 
) [inline, static]

Definition at line 307 of file ComputeGBIS.inl.

Referenced by CalcH().

00308                                           {
00309   h = 0;
00310 }

static float MassToRadius ( Mass  mi  )  [inline, static]

Definition at line 55 of file ComputeGBIS.inl.

References f.

Referenced by ComputeGBISser::doWork(), and HomePatch::setGBISIntrinsicRadii().

00055                                           {//, Mass mj) {
00056 return
00057   (mi <   2.50f ) ? 1.20f : // AtmNum = 1;  Elem =  H ; Mass =   1.00
00058   (mi <   5.47f ) ? 1.40f : // AtmNum = 2;  Elem =  He; Mass =   4.00
00059   (mi <   7.98f ) ? 1.82f : // AtmNum = 3;  Elem =  Li; Mass =   6.94
00060   (mi <   9.91f ) ? 2.13f : // AtmNum = 4;  Elem =  Be; Mass =   9.01
00061   (mi <  11.41f ) ? 2.13f : // AtmNum = 5;  Elem =  B ; Mass =  10.81
00062   (mi <  13.01f ) ? 1.70f : // AtmNum = 6;  Elem =  C ; Mass =  12.01
00063   (mi <  15.00f ) ? 1.55f : // AtmNum = 7;  Elem =  N ; Mass =  14.00
00064   (mi <  17.49f ) ? 1.50f : // AtmNum = 8;  Elem =  O ; Mass =  15.99
00065   (mi <  19.58f ) ? 1.50f : // AtmNum = 9;  Elem =  F ; Mass =  18.99
00066   (mi <  21.58f ) ? 1.54f : // AtmNum = 10; Elem =  Ne; Mass =  20.17
00067   (mi <  23.64f ) ? 2.27f : // AtmNum = 11; Elem =  Na; Mass =  22.98
00068   (mi <  25.64f ) ? 1.73f : // AtmNum = 12; Elem =  Mg; Mass =  24.30
00069   (mi <  27.53f ) ? 2.51f : // AtmNum = 13; Elem =  Al; Mass =  26.98
00070   (mi <  29.53f ) ? 2.10f : // AtmNum = 14; Elem =  Si; Mass =  28.08
00071   (mi <  31.52f ) ? 1.85f : // AtmNum = 15; Elem =  P ; Mass =  30.97
00072   (mi <  33.76f ) ? 1.80f : // AtmNum = 16; Elem =  S ; Mass =  32.06
00073   (mi <  37.28f ) ? 1.70f : // AtmNum = 17; Elem =  Cl; Mass =  35.45
00074   (mi <  39.29f ) ? 2.75f : // AtmNum = 19; Elem =  K ; Mass =  39.10
00075   (mi <  49.09f ) ? 1.88f : // AtmNum = 18; Elem =  Ar; Mass =  39.48
00076   (mi <  61.12f ) ? 1.63f : // AtmNum = 28; Elem =  Ni; Mass =  58.69
00077   (mi <  64.46f ) ? 1.40f : // AtmNum = 29; Elem =  Cu; Mass =  63.54
00078   (mi <  67.55f ) ? 1.39f : // AtmNum = 30; Elem =  Zn; Mass =  65.38
00079   (mi <  71.18f ) ? 1.87f : // AtmNum = 31; Elem =  Ga; Mass =  69.72
00080   (mi <  73.78f ) ? 2.19f : // AtmNum = 32; Elem =  Ge; Mass =  72.64
00081   (mi <  76.94f ) ? 1.85f : // AtmNum = 33; Elem =  As; Mass =  74.92
00082   (mi <  79.43f ) ? 1.90f : // AtmNum = 34; Elem =  Se; Mass =  78.96
00083   (mi <  81.85f ) ? 1.85f : // AtmNum = 35; Elem =  Br; Mass =  79.90
00084   (mi <  95.11f ) ? 2.02f : // AtmNum = 36; Elem =  Kr; Mass =  83.79
00085   (mi < 107.14f ) ? 1.63f : // AtmNum = 46; Elem =  Pd; Mass = 106.42
00086   (mi < 110.14f ) ? 1.72f : // AtmNum = 47; Elem =  Ag; Mass = 107.86
00087   (mi < 113.61f ) ? 1.58f : // AtmNum = 48; Elem =  Cd; Mass = 112.41
00088   (mi < 116.76f ) ? 1.93f : // AtmNum = 49; Elem =  In; Mass = 114.81
00089   (mi < 120.24f ) ? 2.17f : // AtmNum = 50; Elem =  Sn; Mass = 118.71
00090   (mi < 124.33f ) ? 2.09f : // AtmNum = 51; Elem =  Sb; Mass = 121.76
00091   (mi < 127.25f ) ? 1.98f : // AtmNum = 53; Elem =  I ; Mass = 126.90
00092   (mi < 129.45f ) ? 2.06f : // AtmNum = 52; Elem =  Te; Mass = 127.60
00093   (mi < 163.19f ) ? 2.16f : // AtmNum = 54; Elem =  Xe; Mass = 131.29
00094   (mi < 196.02f ) ? 1.75f : // AtmNum = 78; Elem =  Pt; Mass = 195.08
00095   (mi < 198.78f ) ? 1.66f : // AtmNum = 79; Elem =  Au; Mass = 196.96
00096   (mi < 202.49f ) ? 1.55f : // AtmNum = 80; Elem =  Hg; Mass = 200.59
00097   (mi < 205.79f ) ? 1.96f : // AtmNum = 81; Elem =  Tl; Mass = 204.38
00098   (mi < 222.61f ) ? 2.02f : // AtmNum = 82; Elem =  Pb; Mass = 207.20
00099   (mi < 119.01f ) ? 1.86f : // AtmNum = 92; Elem =  U ; Mass = 238.02
00100                    1.50f ;   // Unknown
00101 }

static float MassToScreen ( Mass  mi  )  [inline, static]

Definition at line 112 of file ComputeGBIS.inl.

References f.

Referenced by ComputeGBISser::doWork(), and HomePatch::setGBISIntrinsicRadii().

00112                                           {//, Mass mj) {
00113     return
00114       (mi <   1.500f) ? 0.85f : //H
00115       (mi <  12.500f) ? 0.72f : //C
00116       (mi <  14.500f) ? 0.79f : //N
00117       (mi <  16.500f) ? 0.85f : //O
00118       (mi <  19.500f) ? 0.88f : //F
00119       (mi <  31.500f) ? 0.86f : //P
00120       (mi <  32.500f) ? 0.96f : //S
00121                         0.8f ; //all others
00122 }

static void Phase2_Pair ( const float &  r,
const float &  r2,
const float &  r_i,
const float &  qiqj,
const float &  ai,
const float &  aj,
const float &  epsilon_p_i,
const float &  epsilon_s_i,
const float &  kappa,
const int &  doFullElect,
float &  gbEij,
float &  ddrGbEij,
float &  dEdai,
float &  dEdaj 
) [inline, static]

Definition at line 519 of file ComputeGBIS.inl.

References Calc_dEda_Pair(), and Calc_dEdr_Pair().

00538   {
00539 
00540   //calculate GB energy and force
00541   float aiaj,expr2aiaj4,fij,f_i,expkappa,Dij;
00542   Calc_dEdr_Pair(r,r2,qiqj,ai,aj,
00543       kappa,epsilon_p_i,epsilon_s_i,
00544       aiaj,expr2aiaj4,fij,f_i,expkappa,
00545       Dij,gbEij,ddrGbEij);
00546 
00547   //calculate dEda
00548   if (doFullElect) {
00549     Calc_dEda_Pair(r2,ai,aj,qiqj,kappa,
00550               aiaj,expkappa,expr2aiaj4,
00551               fij,f_i,Dij,epsilon_s_i,dEdai,dEdaj);
00552   } else {
00553     dEdai = 0.f;
00554     dEdaj = 0.f;
00555   }
00556 }


Generated on Sat Nov 18 01:17:16 2017 for NAMD by  doxygen 1.4.7