diff --git a/PeakOTron.py b/PeakOTron.py
index 21951b7bf1b2516ae79153fc13eec1f216c02ec8..a410070b5105c03a0d6299205debb17fd102a3e6 100644
--- a/PeakOTron.py
+++ b/PeakOTron.py
@@ -1736,44 +1736,44 @@ class PeakOTron:
 
         if(np.isnan(Q_0)):
             if(self._verbose):
-                print("Q_0 returned nan in prefit. Setting Q_0 to 1 bin")
+                print("Q_0 returned invalid in prefit. Setting Q_0 to 1 bin")
             Q_0 = 1
             dQ_0 = 0.1
 
-        if(np.isnan(G)):
+        if(np.isnan(G) or G<1):
             if(self._verbose):
-                print("G returned nan in prefit. Setting G to 1 bin")
+                print("G returned invalid in prefit. Setting G to 1 bin")
             G = 1
             dG = 0.1
 
-        if(np.isnan(mu)):
+        if(np.isnan(mu) or mu<1e-5):
             if(self._verbose):
-                print("mu returned nan in prefit. Setting mu to 1 p.e.")
-            mu = 1
+                print("mu returned invalid in prefit. Setting mu to 1 p.e.")
+            mu = 1e-5
             dmu = 0.1
 
-        if(np.isnan(lbda)):
+        if(np.isnan(lbda) or lbda>1-1e-2 or lbda<1e-2):
             if(self._verbose):
-                print("lbda returned nan in prefit. Setting lbda to 1e-2.")
+                print("lbda returned invalid in prefit. Setting lbda to 1e-2.")
             lbda = 1e-2
             dlbda = 0.1
 
 
-        if(np.isnan(sigma_0)):
+        if(np.isnan(sigma_0) or sigma_0<1):
             if(self._verbose):
-                print("sigma_0 returned nan in prefit. Setting sigma_0 to 1 bin.")
+                print("sigma_0 returned invalid in prefit. Setting sigma_0 to 1 bin.")
             sigma_0 = 1
             dsigma_0 = 0.1
 
-        if(np.isnan(sigma_1)):
+        if(np.isnan(sigma_1) or sigma_1<1):
             if(self._verbose):
-                print("sigma_1 returned nan in prefit. Setting sigma_1 to 1 bin.")
+                print("sigma_1 returned invalid in prefit. Setting sigma_1 to 1 bin.")
             sigma_1 = 1
             dsigma_1 = 0.1
 
-        if(np.isnan(DCR)):
+        if(np.isnan(DCR) or DCR<1e-9):
             if(self._verbose):
-                print("DCR returned nan in prefit. Setting DCR to 1e-9 GHz.")
+                print("DCR returned invalid in prefit. Setting DCR to 1e-9 GHz.")
             DCR = 1e-9
             dDCR = 1e-2