diff --git a/dartwrf/assim_synth_obs.py b/dartwrf/assim_synth_obs.py
index dc6460e7405500ff8061d43c2e9dd6e9c3aacd3a..11b48e08fbaed8477bc007e9c338878de0ebe9c6 100755
--- a/dartwrf/assim_synth_obs.py
+++ b/dartwrf/assim_synth_obs.py
@@ -12,19 +12,16 @@ from dartwrf import obsseq
 
 earth_radius_km = 6370
 
-# Kelvin, fit of Fig 7b, Harnisch 2016
-x_ci = [0, 5, 10.5, 13, 16]  # average cloud impact
-y_oe = [1, 4.5, 10, 12, 13]  # adjusted observation error
-oe_73_linear = interp1d(x_ci, y_oe, assume_sorted=True)
-
-
 def OE_model_harnisch_WV73(ci):
     if ci >= 0 and ci < 16:
+        # Kelvin, fit of Fig 7b, Harnisch 2016
+        x_ci = [0, 5, 10.5, 13, 16]  # average cloud impact [K]
+        y_oe = [1, 4.5, 10, 12, 13]  # adjusted observation error [K]
+        oe_73_linear = interp1d(x_ci, y_oe, assume_sorted=True)
         return oe_73_linear(ci)
     else:
         return 13.0
 
-
 def cloudimpact_73(bt_mod, bt_obs):
     """
     follows Harnisch 2016
@@ -150,15 +147,15 @@ def set_DART_nml(just_prior_values=False):
         "<list_cutoffs>": ", ".join(list_cov_loc_radian),
     }
 
-    # if cov_loc_vert_km:
-    options["<horiz_dist_only>"] = ".true."
-
-    cov_loc_vert_km, cov_loc_horiz_km = exp.cov_loc_vert_km_horiz_km
-    vert_norm_hgt = to_vertical_normalization(cov_loc_vert_km, cov_loc_horiz_km)
-    options["<vert_norm_hgt>"] = str(vert_norm_hgt)
-    # else:
-    #     options['<horiz_dist_only>'] = '.true.'
-    #     options['<vert_norm_hgt>'] = '50000.0'  # dummy value
+    # Note: only one value of vertical localization possible
+    if hasattr(exp, 'cov_loc_vert_km_horiz_km'):
+        options["<horiz_dist_only>"] = ".false."
+        cov_loc_vert_km, cov_loc_horiz_km = exp.cov_loc_vert_km_horiz_km
+        vert_norm_hgt = to_vertical_normalization(cov_loc_vert_km, cov_loc_horiz_km)
+        options["<vert_norm_hgt>"] = str(vert_norm_hgt)
+    else:
+        options["<horiz_dist_only>"] = ".true."
+        options["<vert_norm_hgt>"] = "99999.0"  # dummy value
 
     for key, value in options.items():
         sed_inplace(cluster.dartrundir + "/input.nml", key, value)
@@ -474,7 +471,7 @@ def set_obserr_assimilate_in_obsseqout(obsseqout, outfile="./obs_seq.out"):
         if is_assim_error_parametrized(obscfg):
             assim_err = get_parametrized_error(obscfg)            
             obsseqout.df.loc[mask_kind, 'variance'] = assim_err**2
-            assert np.allclose(assim_err, obsseqout.df['variance']**2)
+            #assert np.allclose(assim_err, obsseqout.df['variance']**2)
 
         else:
             # overwrite with user-defined values