MsmMacros.h File Reference

Go to the source code of this file.

Defines

#define ROUNDUP_QUOTIENT(n, k)   (((n)/(k)) + (((n)%(k)) != 0))
#define SPOLY(pg, pdg, ra, split)
#define STENCIL_1D(_phi, _delta, _approx)
#define D_STENCIL_1D(_dphi, _phi, _h_1, _delta, _approx)

Enumerations

enum  {
  PERIODIC_NONE = 0, PERIODIC_VEC1 = 0x01, PERIODIC_VEC2 = 0x02, PERIODIC_VEC3 = 0x04,
  PERIODIC_ALL = PERIODIC_VEC1 | PERIODIC_VEC2 | PERIODIC_VEC2
}
enum  {
  APPROX_CUBIC = 0, APPROX_QUINTIC, APPROX_QUINTIC2, APPROX_SEPTIC,
  APPROX_SEPTIC3, APPROX_NONIC, APPROX_NONIC4, APPROX_BSPLINE,
  APPROX_END
}
enum  {
  SPLIT_TAYLOR2 = 0, SPLIT_TAYLOR3, SPLIT_TAYLOR4, SPLIT_TAYLOR5,
  SPLIT_TAYLOR6, SPLIT_TAYLOR7, SPLIT_TAYLOR8, SPLIT_TAYLOR1,
  SPLIT_SIGMA2_3, SPLIT_SIGMA3_5, SPLIT_SIGMA4_6, SPLIT_SIGMA4_7,
  SPLIT_SIGMA5_8, SPLIT_SIGMA5_9, SPLIT_SIGMA6_9, SPLIT_SIGMA6_10,
  SPLIT_SIGMA6_11, SPLIT_SIGMA7_11, SPLIT_SIGMA7_12, SPLIT_SIGMA7_13,
  SPLIT_SIGMA8_12, SPLIT_SIGMA8_13, SPLIT_SIGMA8_14, SPLIT_SIGMA8_15,
  SPLIT_SIGMA2_6, SPLIT_SWITCH1_2, SPLIT_SWITCH3_4, SPLIT_SWITCH7_8,
  SPLIT_END
}


Define Documentation

#define D_STENCIL_1D ( _dphi,
_phi,
_h_1,
_delta,
_approx   ) 

Calculate the stencil of basis function and derivatives of (1/h)Phi. dphi - stencil array (up to size MAX_POLY_DEGREE+1) phi - stencil array (up to size MAX_POLY_DEGREE+1) h_1 - 1/h, h is the grid spacing delta - normalized distance of atom from lowest grid point in stencil approx - APPROX enum value from msm.h

Definition at line 467 of file MsmMacros.h.

#define ROUNDUP_QUOTIENT ( n,
 )     (((n)/(k)) + (((n)%(k)) != 0))

Definition at line 4 of file MsmMacros.h.

#define SPOLY ( pg,
pdg,
ra,
split   ) 

SPOLY() calculates the polynomial part of the normalized smoothing of 1/r.

Returns g(R), where R=r/a, and (d/dR)g(R).

pg - float*, points to variable to receive g(R) pdg - float*, points to variable to receive (d/dR)g(R) ra - (r/a), assumed to be between 0 and 1 split - identify the type of smoothing used to split the potential

Definition at line 74 of file MsmMacros.h.

#define STENCIL_1D ( _phi,
_delta,
_approx   ) 

Calculate the stencil of basis function values of Phi. phi - stencil array (up to size MAX_POLY_DEGREE+1) delta - normalized distance of atom from lowest grid point in stencil approx - APPROX enum value from msm.h

Definition at line 279 of file MsmMacros.h.


Enumeration Type Documentation

anonymous enum

Enumerator:
PERIODIC_NONE 
PERIODIC_VEC1 
PERIODIC_VEC2 
PERIODIC_VEC3 
PERIODIC_ALL 

Definition at line 6 of file MsmMacros.h.

00006      {
00007   PERIODIC_NONE = 0,
00008   PERIODIC_VEC1 = 0x01,
00009   PERIODIC_VEC2 = 0x02,
00010   PERIODIC_VEC3 = 0x04,
00011   PERIODIC_ALL = PERIODIC_VEC1 | PERIODIC_VEC2 | PERIODIC_VEC2
00012 };

anonymous enum

Enumerator:
APPROX_CUBIC  C1 degree 3 poly (numerical Hermite)
APPROX_QUINTIC  C1 degree 5 poly (linear blend of degree 4)
APPROX_QUINTIC2  C2 degree 5 poly
APPROX_SEPTIC  C1 degree 7 poly (linear blend of degree 6)
APPROX_SEPTIC3  C3 degree 7 poly
APPROX_NONIC  C1 degree 9 poly (linear blend of degree 8)
APPROX_NONIC4  C4 degree 9 poly
APPROX_BSPLINE  C2 degree 3 B-spline
APPROX_END  (for internal use)

Definition at line 14 of file MsmMacros.h.

00014      {
00015   APPROX_CUBIC = 0, 
00016   APPROX_QUINTIC,   
00017   APPROX_QUINTIC2,  
00018   APPROX_SEPTIC,    
00019   APPROX_SEPTIC3,   
00020   APPROX_NONIC,     
00021   APPROX_NONIC4,    
00022   APPROX_BSPLINE,   
00023   APPROX_END        
00024 };

anonymous enum

Enumerator:
SPLIT_TAYLOR2  C2 Taylor
SPLIT_TAYLOR3  C3 Taylor
SPLIT_TAYLOR4  C4 Taylor
SPLIT_TAYLOR5  C5 Taylor
SPLIT_TAYLOR6  C6 Taylor
SPLIT_TAYLOR7  C7 Taylor
SPLIT_TAYLOR8  C8 Taylor
SPLIT_TAYLOR1  C1 Taylor
SPLIT_SIGMA2_3  C2, degree 3 (the "perfect" smoothing)
SPLIT_SIGMA3_5  C3, degree 5
SPLIT_SIGMA4_6  C4, degree 6
SPLIT_SIGMA4_7  C4, degree 7
SPLIT_SIGMA5_8  C5, degree 8
SPLIT_SIGMA5_9  C5, degree 9
SPLIT_SIGMA6_9  C6, degree 9
SPLIT_SIGMA6_10  C6, degree 10
SPLIT_SIGMA6_11  C6, degree 11
SPLIT_SIGMA7_11  C7, degree 11
SPLIT_SIGMA7_12  C7, degree 12
SPLIT_SIGMA7_13  C7, degree 13
SPLIT_SIGMA8_12  C8, degree 12
SPLIT_SIGMA8_13  C8, degree 13
SPLIT_SIGMA8_14  C8, degree 14
SPLIT_SIGMA8_15  C8, degree 15
SPLIT_SIGMA2_6  C2, degree 6, even powers of r, chosen to minimize error bound
SPLIT_SWITCH1_2  C2, switching at r/a=1/2
SPLIT_SWITCH3_4  C2, switching at r/a=3/4
SPLIT_SWITCH7_8  C2, switching at r/a=7/8
SPLIT_END  (for internal use)

Definition at line 26 of file MsmMacros.h.


Generated on Mon Nov 20 01:17:16 2017 for NAMD by  doxygen 1.4.7