Skip to content
Snippets Groups Projects
Commit 2e090e13 authored by ivar's avatar ivar
Browse files

Removed bug in add_model_data_mismatch. Without the do-not-simulate flag in...

Removed bug in add_model_data_mismatch. Without the  do-not-simulate flag in sites_and_weights.rc file the complete data list was returned instead the trimmed down list that is filtered.
parent 66de8c8b
No related branches found
No related tags found
No related merge requests found
......@@ -421,6 +421,48 @@ class ObsPackObservations(Observations):
eventids=array(eventids)
logging.info('eventids %s'%eventids)
paired_flag=zeros((len(self.datalist)),)
paired_flag[:]=False
filtered_obs=zeros((len(self.datalist)),)
counter=1.
counter2=1.
for i,obs in enumerate(self.datalist):
psite=obs.code
pday=obs.xdate.day
pobs=obs.obs
if i >0:
if pday == pday_old and psite == psite_old
paired_flag[i]= True
paired_flag[i-1]= True
if pobs -pobs_prev <1.0:
pobs_avr=(pobs+pobs_avr)
counter = counter+1.
counter2 = counter2+1.
filtered_obs[i] =0.
else:
filtered_obs[i]=0.
counter2 = counter2+1.
else:
pday_prev= pday
psite_prev = psite
pobs_prev = pobs
paired_flag[i]=False
filtered_obs[i-counter2]=pobs_avr/counter
counter=1.
counter2=1.
else:
pday_prev= pday
psite_prev = psite
pobs_prev = pobs
paired_flag[i] = False
pobs_avr = pobs
filtered_obs[i] = pobs
logging.info("Boolean list paired observations: %s"%paired_flag)
logging.info("Obs list paired observations: %s"%filtered_obs)
for i,obs in enumerate(self.datalist):
obs.mdm = 1000.0 # default is very high model-data-mismatch, until explicitly set by script
obs.flag = 99 # default is do-not-use , until explicitly set by script
......@@ -498,12 +540,16 @@ class ObsPackObservations(Observations):
logging.warning("Observation location for (%s, %d), is moved by %3.2f meters in altitude" % (identifier, obs.id, incalt))
if len(do_not_simulate) > 0 :
logging.info("do-not-simulate flags located")
self.datalist = [self.datalist[k] for k in do_simulate]
logging.info("After do-not-simulate filter observations list now holds %d values" % len(self.datalist))
else:
logging.info("No do-not-simulate flags, continues normally ")
#if len(do_not_simulate) > 0 :
# logging.info("do-not-simulate flags located")
# self.datalist = [self.datalist[k] for k in do_simulate]
# logging.info("After do-not-simulate filter observations list now holds %d values" % len(self.datalist))
#else:
# logging.info("No do-not-simulate flags, continues normally ")
# logging.info("Observations list now holds %d values" % len(self.datalist))
self.datalist = [self.datalist[k] for k in do_simulate]
logging.info("After multple filters observations list now holds %d values" % len(self.datalist))
# Add site_info dictionary to the Observations object for future use
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment