本文整理汇总了Python中PyMca5.PyMcaMath.fitting.SpecfitFuns.seek方法的典型用法代码示例。如果您正苦于以下问题:Python SpecfitFuns.seek方法的具体用法?Python SpecfitFuns.seek怎么用?Python SpecfitFuns.seek使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyMca5.PyMcaMath.fitting.SpecfitFuns
的用法示例。
在下文中一共展示了SpecfitFuns.seek方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: seek
# 需要导入模块: from PyMca5.PyMcaMath.fitting import SpecfitFuns [as 别名]
# 或者: from PyMca5.PyMcaMath.fitting.SpecfitFuns import seek [as 别名]
def seek(self,y,x=None,yscaling=None,
fwhm=None,
sensitivity=None,
mca=None):
"""
SpecfitFunctions.seek(self,y,
x=None,
yscaling=None,fwhm=None,sensitivity=None,
mca=None)
It searches for peaks in the y array. If x it is given, it gives back
the closest x(s) to the position of the peak(s). Otherways it gives back
the index of the closest point to the peak.
"""
if yscaling is None:
yscaling=self.config['Yscaling']
if fwhm is None:
if self.config['AutoFwhm']:
fwhm=self.guess_fwhm(x=x,y=y)
else:
fwhm=self.config['FwhmPoints']
if sensitivity is None:
sensitivity=self.config['Sensitivity']
if mca is None:
mca=self.config['McaMode']
search_fwhm=int(max(fwhm,3))
search_sensitivity=max(1.0,sensitivity)
mca=1.0
if mca:
ysearch = numpy.array(y) * yscaling
else:
ysearch = numpy.ones([len(y) + 2 * search_fwhm,], numpy.float)
if y[0]:
ysearch[0:(search_fwhm+1)]=ysearch[0:(search_fwhm+1)]*y[0]*yscaling
else:
ysearch[0:(search_fwhm+1)]=ysearch[0:(search_fwhm+1)]*yscaling*sum(y[0:3])/3.0
ysearch[-1:-(search_fwhm+1):-1]=ysearch[-1:-(search_fwhm+1):-1]*y[len(y)-1]*yscaling
ysearch[search_fwhm:(search_fwhm+len(y))]=y*yscaling
npoints=len(ysearch)
if npoints > (1.5)*search_fwhm:
peaks=SpecfitFuns.seek(ysearch,0,npoints,
search_fwhm,
search_sensitivity)
else:
peaks=[]
if len(peaks) > 0:
if mca == 0:
for i in range(len(peaks)):
peaks[i]=int(peaks[i]-search_fwhm)
for i in peaks:
if (i < 1) | (i > (npoints-1)):
peaks.remove(i)
if x is not None:
if len(x) == len(y):
for i in range(len(peaks)):
peaks[i]=x[int(max(peaks[i],0))]
#print "peaks found = ",peaks,"mca =",mca,"fwhm=",search_fwhm,\
# "sensi=",search_sensitivity,"scaling=",yscaling
return peaks