def arraytest(self,test,ref):
#Exclude the endpoints where the gradient is very steep
self.adiscrep=self.arraydiff(test,ref)#[2:-2]
count=N.where(abs(self.adiscrep)>self.thresh)[0].size
try:
self.tra['Discrepfrac']=float(count)/self.adiscrep.size
self.tra['Discrepmin']=self.adiscrep.min()
self.tra['Discrepmax']=self.adiscrep.max()
self.tra['Discrepmean']=self.adiscrep.mean()
self.tra['Discrepstd']=self.adiscrep.std()
self.tra['Outliers']=self.count_outliers(5)
if (self.tra['Discrepfrac'] > self.superthresh):
self.tra['Extreme']=True
self.failUnless(N.alltrue(abs(self.adiscrep)<self.thresh),
msg="Worst case %f"%abs(self.adiscrep).max())
except ZeroDivisionError:
self.tra['Discrepfrac']=0.0
self.tra['Discrepmin']=0.0
self.tra['Discrepmax']=0.0
评论列表
文章目录