diff --git a/dartwrf/assim_synth_obs.py b/dartwrf/assim_synth_obs.py index 17c62c99b22c8f27d9378ede51fca7d26bed710c..b75660890fb79ac56fad634c2cff84c97ccf536e 100755 --- a/dartwrf/assim_synth_obs.py +++ b/dartwrf/assim_synth_obs.py @@ -283,16 +283,20 @@ def set_obserr_assimilate_in_obsseqout(oso, outfile="./obs_seq.out"): where_oso_iskind = oso.df.kind == kind if obscfg["error_assimilate"] == False: - osf_prior = obsseq.ObsSeq(cluster.dartrundir + "/obs_seq.final") # this file will be generated by `evaluate()` + # osf_prior = obsseq.ObsSeq(cluster.dartrundir + "/obs_seq.final") # this file will be generated by `evaluate()` - where_osf_iskind = osf_prior.df.kind == kind + # where_osf_iskind = osf_prior.df.kind == kind - assim_err = get_parametrized_error(obscfg, osf_prior.df[where_osf_iskind]) - oso.df.loc[where_oso_iskind, 'variance'] = assim_err**2 + # assim_err = get_parametrized_error(obscfg, osf_prior.df[where_osf_iskind]) + # oso.df.loc[where_oso_iskind, 'variance'] = assim_err**2 #assert np.allclose(assim_err, oso.df['variance']**2) # check + pass else: # overwrite with user-defined values - oso.df.loc[where_oso_iskind, 'variance'] = obscfg["error_assimilate"]**2 + try: + oso.df.loc[where_oso_iskind, 'variance'] = obscfg["error_assimilate"]**2 + except: + pass oso.to_dart(outfile) @@ -532,7 +536,7 @@ def main(time, prior_init_time, prior_valid_time, prior_path_exp): do_QC = getattr(exp, "reject_smallFGD", False) # True: triggers additional evaluations of prior & posterior # for which observation type do we have a parametrized observation error? - error_is_parametrized = [obscfg["error_assimilate"] == False for obscfg in exp.observations] + # error_is_parametrized = [obscfg["error_assimilate"] == False for obscfg in exp.observations] # create directory to run DART in archive_time = cluster.archivedir + time.strftime("/%Y-%m-%d_%H:%M/") @@ -556,9 +560,9 @@ def main(time, prior_init_time, prior_valid_time, prior_path_exp): oso = get_obsseq_out(time) # is any observation error parametrized? - if any(error_is_parametrized) or do_QC: - print(" (optional) evaluate prior for all observations (incl rejected)") - evaluate(time, output_format="%Y-%m-%d_%H:%M_obs_seq.final-eval_prior_allobs") + # if any(error_is_parametrized) or do_QC: + # print(" (optional) evaluate prior for all observations (incl rejected)") + # evaluate(time, output_format="%Y-%m-%d_%H:%M_obs_seq.final-eval_prior_allobs") print(" assign observation-errors for assimilation ") set_obserr_assimilate_in_obsseqout(oso, outfile=cluster.dartrundir + "/obs_seq.out")