Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

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

float FastTanH (float x)
float MassToRadius (Mass mi)
float MassToScreen (Mass mi)
void h0 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh0 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h1 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh1 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h2 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh2 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h3 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh3 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h4 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh4 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h5 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh5 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void h6 (float r, float r2, float ri, float rc, float r0, float rs, float &h)
void dh6 (float r, float r2, float ri, float rc, float r0, float rs, float &dh)
void CalcH (float r, float r2, float ri, float rc, float r0, float rs, float &h, int &d)
void CalcDH (float r, float r2, float ri, float rc, float r0, float rs, float &dh, int &d)
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)
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)
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)
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)
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 dh2(), and dh2Ser().

#define DB   2.4f
 

Definition at line 38 of file ComputeGBIS.inl.

Referenced by dh2(), and dh2Ser().

#define DC   3.428571428571428f
 

Definition at line 39 of file ComputeGBIS.inl.

Referenced by dh2(), and dh2Ser().

#define DD   4.444444444444444f
 

Definition at line 40 of file ComputeGBIS.inl.

Referenced by dh2(), and dh2Ser().

#define DE   5.454545454545454f
 

Definition at line 41 of file ComputeGBIS.inl.

#define FS_MAX   1.728f
 

Definition at line 24 of file ComputeGBIS.inl.

#define TA   0.333333333333333f
 

Definition at line 32 of file ComputeGBIS.inl.

Referenced by h2(), and h2Ser().

#define TB   0.4f
 

Definition at line 33 of file ComputeGBIS.inl.

Referenced by h2(), and h2Ser().

#define TC   0.428571428571428f
 

Definition at line 34 of file ComputeGBIS.inl.

Referenced by h2(), and h2Ser().

#define TD   0.444444444444444f
 

Definition at line 35 of file ComputeGBIS.inl.

Referenced by h2(), and h2Ser().

#define TE   0.454545454545454f
 

Definition at line 36 of file ComputeGBIS.inl.


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.

Referenced by ComputeNonbondedUtil::calcGBIS(), cuda_bind_patch_pairs(), ComputeNonbondedCUDA::doWork(), ComputeNonbondedCUDA::finishWork(), GBIS_Atom_Reduction_Kernel(), GBIS_P1_Kernel(), and GBIS_P2_Kernel().

typedef float Mass
 

Definition at line 20 of file ComputeGBIS.inl.

Referenced by ARestraint::DistributeForce(), and ARestraint::UpdateCOMs().


Function Documentation

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.

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 }

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 }

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(), 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 }

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 }

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 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 }

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 }

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.

Referenced by CalcDH().

00151                                                {
00152   dh = 0.f;
00153 }

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.

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 }

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, and DD.

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 }

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 }

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.

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 }

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 }

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 }

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 }

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.

Referenced by CalcH().

00142                                               {
00143   h = 0.f;
00144 }

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.

Referenced by 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 }

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, and TD.

Referenced by 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 }

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.

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 }

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 }

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 }

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 }

float MassToRadius Mass  mi  )  [inline, static]
 

Definition at line 55 of file ComputeGBIS.inl.

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 }

float MassToScreen Mass  mi  )  [inline, static]
 

Definition at line 112 of file ComputeGBIS.inl.

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 }

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 Fri May 24 04:07:22 2013 for NAMD by  doxygen 1.3.9.1