 //ElectroStatic Calculation
 //**************************************************************//
 __device__ double CalcCoulombVirParticleGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha,
-    int index, double *gpu_sigmaSq,
-    bool sc_coul, double sc_sigma_6,
-    double sc_alpha, uint sc_power);
+                                            int gpu_ewald, double gpu_alpha,
+                                            int index, double *gpu_sigmaSq,
+                                            bool sc_coul, double sc_sigma_6,
+                                            double sc_alpha, uint sc_power,
+                                            double gpu_lambdaCoulomb);
 __device__ double CalcCoulombVirParticleGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha);
+                                            int gpu_ewald, double gpu_alpha);
 __device__ double CalcCoulombVirShiftGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha,
-    int index, double *gpu_sigmaSq,
-    bool sc_coul, double sc_sigma_6,
-    double sc_alpha, uint sc_power);
+                                         nt gpu_ewald, double gpu_alpha,
+                                         int index, double *gpu_sigmaSq,
+                                         bool sc_coul, double sc_sigma_6,
+                                         double sc_alpha, uint sc_power,
+                                         double gpu_lambdaCoulomb);
 __device__ double CalcCoulombVirShiftGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha);
+                                         int gpu_ewald, double gpu_alpha);
 __device__ double CalcCoulombVirExp6GPU(double distSq, double qi_qj,
                                         int gpu_ewald, double gpu_alpha,
                                         int index, double *gpu_sigmaSq,
                                         bool sc_coul, double sc_sigma_6,
-                                        double sc_alpha, uint sc_power);
+                                        double sc_alpha, uint sc_power,
+                                        double gpu_lambdaCoulomb);
 __device__ double CalcCoulombVirExp6GPU(double distSq, double qi_qj,
                                         int gpu_ewald, double gpu_alpha);
 __device__ double CalcCoulombVirSwitchMartiniGPU(double distSq, double qi_qj,
-    int gpu_ewald,
-    double gpu_alpha,
-    double gpu_rCut,
-    double gpu_diElectric_1,
-    int index,
-    double *gpu_sigmaSq,
-    bool sc_coul,
-    double sc_sigma_6,
-    double sc_alpha,
-    uint sc_power);
+                                                 int gpu_ewald,
+                                                 double gpu_alpha,
+                                                 double gpu_rCut,
+                                                 double gpu_diElectric_1,
+                                                 int index,
+                                                 double *gpu_sigmaSq,
+                                                 bool sc_coul,
+                                                 double sc_sigma_6,
+                                                 double sc_alpha,
+                                                 uint sc_power,
+                                                 double gpu_lambdaCoulomb);
 __device__ double CalcCoulombVirSwitchMartiniGPU(double distSq, double qi_qj,
-    int gpu_ewald,
-    double gpu_alpha,
-    double gpu_rCut,
-    double gpu_diElectric_1);
+                                                 int gpu_ewald,
+                                                 double gpu_alpha,
+                                                 double gpu_rCut,
+                                                 double gpu_diElectric_1);
 __device__ double CalcCoulombVirSwitchGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha,
-    double gpu_rCut, int index,
-    double *gpu_sigmaSq, bool sc_coul,
-    double sc_sigma_6, double sc_alpha,
-    uint sc_power);
+                                          int gpu_ewald, double gpu_alpha,
+                                          double gpu_rCut, int index,
+                                          double *gpu_sigmaSq, bool sc_coul,
+                                          double sc_sigma_6, double sc_alpha,
+                                          uint sc_power,
+                                          double gpu_lambdaCoulomb);
 __device__ double CalcCoulombVirSwitchGPU(double distSq, double qi_qj,
-    int gpu_ewald, double gpu_alpha,
-    double gpu_rCut);
+                                          int gpu_ewald, double gpu_alpha,
+                                          double gpu_rCut);
 
 //VDW Calculation
 //*****************************************************************//

                                     double *gpu_sigmaSq, double *gpu_n,
                                     double *gpu_epsilon_Cn,
                                     double sc_sigma_6,
                                     double sc_alpha, uint sc_power);
__device__ double CalcVirParticleGPU(double distSq, int index,
                                     double *gpu_sigmaSq, double *gpu_n,
                                     double *gpu_epsilon_Cn);

                                 double *gpu_rMin, double *gpu_rMaxSq,
                                 double *gpu_expConst,
                                 double sc_sigma_6, double sc_alpha,
                                 uint sc_power,
                                 double gpu_lambdaVDW);
__device__ double CalcVirExp6GPU(double distSq, int index, double *gpu_n,
                                 double *gpu_rMin, double *gpu_expConst);
__device__ double CalcVirSwitchMartiniGPU(double distSq, int index,
                                          double *gpu_sigmaSq, double *gpu_n,
                                          double *gpu_epsilon_Cn,
                                          double gpu_rCut, double rOn,
                                          double sc_sigma_6, double sc_alpha,
                                          uint sc_power,
                                          double gpu_lambdaVDW);
__device__ double CalcVirSwitchMartiniGPU(double distSq, int index,
                                          double *gpu_sigmaSq, double *gpu_n,
                                          double *gpu_epsilon_Cn,
                                          double gpu_rCut, double rOn);
__device__ double CalcVirSwitchGPU(double distSq, int index,
                                   double *gpu_sigmaSq, double *gpu_epsilon_Cn,
                                   double *gpu_n, double gpu_rCut,
                                   double gpu_rOn,
                                   double sc_sigma_6, double sc_alpha,
                                   uint sc_power, double gpu_lambdaVDW);
__device__ double CalcVirSwitchGPU(double distSq, int index,
                                   double *gpu_sigmaSq, double *gpu_epsilon_Cn,
                                   double *gpu_n, double gpu_rCut,
