diff --git a/src/USER-MISC/pair_morse_smooth_linear.cpp b/src/USER-MISC/pair_morse_smooth_linear.cpp
index 328c1bd27b655e3d8226a80b59fefd25b00f2fef..a88e7a1a274dd852dccb871c2828acc64d687706 100644
--- a/src/USER-MISC/pair_morse_smooth_linear.cpp
+++ b/src/USER-MISC/pair_morse_smooth_linear.cpp
@@ -30,7 +30,6 @@ using namespace LAMMPS_NS;
 PairMorseSmoothLinear::PairMorseSmoothLinear(LAMMPS *lmp) : Pair(lmp)
 {
   writedata = 1;
-
 }
 
 /* ---------------------------------------------------------------------- */
@@ -117,7 +116,7 @@ void PairMorseSmoothLinear::compute(int eflag, int vflag)
 
         if (eflag) {
           evdwl = d0[itype][jtype] * (dexp*dexp - 2.0*dexp) -
-            offset[itype][jtype];
+                  offset[itype][jtype];
           evdwl -= ( r - cut[itype][jtype] ) * der_at_cutoff[itype][jtype];
           evdwl *= factor_lj;
         }
@@ -203,6 +202,14 @@ void PairMorseSmoothLinear::coeff(int narg, char **arg)
       alpha[i][j] = alpha_one;
       r0[i][j] = r0_one;
       cut[i][j] = cut_one;
+
+      morse1[i][j] = 2.0*d0[i][j]*alpha[i][j];
+
+      double alpha_dr = -alpha[i][j] * (cut[i][j] - r0[i][j]);
+
+      offset[i][j]        = d0[i][j] * (exp(2.0*alpha_dr) - 2.0*exp(alpha_dr));
+      der_at_cutoff[i][j] = -2.0*alpha[i][j]*d0[i][j] * (exp(2.0*alpha_dr) - exp(alpha_dr));
+
       setflag[i][j] = 1;
       count++;
     }
@@ -222,17 +229,13 @@ double PairMorseSmoothLinear::init_one(int i, int j)
 
   morse1[i][j] = 2.0*d0[i][j]*alpha[i][j];
 
-  double alpha_dr = -alpha[i][j] * (cut[i][j] - r0[i][j]);
-
-  offset[i][j]        = d0[i][j] * (exp(2.0*alpha_dr) - 2.0*exp(alpha_dr));
-  der_at_cutoff[i][j] = -2.0*alpha[i][j]*d0[i][j] * (exp(2.0*alpha_dr) - exp(alpha_dr));
-
   d0[j][i] = d0[i][j];
   alpha[j][i] = alpha[i][j];
   r0[j][i] = r0[i][j];
   morse1[j][i] = morse1[i][j];
   der_at_cutoff[j][i] = der_at_cutoff[i][j];
   offset[j][i] = offset[i][j];
+  cut[j][i] = cut[i][j];
 
   return cut[i][j];
 }