当前位置: 首页>>代码示例>>Python>>正文


Python Filter.average_pulse方法代码示例

本文整理汇总了Python中Filter.average_pulse方法的典型用法代码示例。如果您正苦于以下问题:Python Filter.average_pulse方法的具体用法?Python Filter.average_pulse怎么用?Python Filter.average_pulse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Filter的用法示例。


在下文中一共展示了Filter.average_pulse方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: tesana

# 需要导入模块: import Filter [as 别名]
# 或者: from Filter import average_pulse [as 别名]

#.........这里部分代码省略.........

    # Calculate offset (needs to be done before applying filter)
    if p.size > 0:
        offset = Filter.offset(p)
    
    # Generate Filter
    if filt is None:
        pass
    else:
        if filt.lower() == "hanning":
            f = np.hanning(p.shape[-1])
        elif filt.lower() == "hamming":
            f = np.hamming(p.shape[-1])
        elif filt.lower() == "blackman":
            f = np.blackman(p.shape[-1])
        elif filt.lower() == "tukey":
            f = tukey(p.shape[-1])
        else:
            raise ValueError('Unsupported filter: %s' % filt.lower())
            
        print "Window filter function: %s" % filt.lower()
        
        # Amplitude correction
        cf = f.sum() / len(f)
        p *= (f / cf)
        n *= (f / cf)

        # Equivalent noise bandwidth correction
        enb = len(f)*(f**2).sum()/f.sum()**2
        df *= enb
        
    if p.size > 0:
        # Calculate averaged pulse
        avgp = Filter.average_pulse(p, max_shift=max_shift)

        if savedat:
            np.savetxt('%s-averagepulse.dat' % session, np.vstack((t, avgp)).T,
                header='Time (s), Averaged Pulse (%s)' % ('R' if Rspace else ('A' if gain else 'V')), delimiter='\t')

        if plotting:
            figure()
            plot(t, avgp)
            xlabel('Time$\quad$(s)')
            ylabel('Averaged Pulse$\quad$(%s)' % ('R' if Rspace else ('A' if gain else 'V')))
            tight_layout()
            savefig('%s-averagepulse.pdf' % session)

        # Calculate averaged pulse spectrum
        avgps = np.sqrt(Filter.power(avgp)) / df

        if savedat:
            np.savetxt('%s-avgpulse-power.dat' % session, np.vstack((np.arange(len(avgps))*df, avgps)).T,
                header='Frequency (Hz), Average Pulse Power (%s/srHz)' % ('R' if Rspace else ('A' if gain else 'V')), delimiter='\t')
    
        if plotting:
            avgps[0] = 0    # for better plot
            figure()
            plot(np.arange(len(avgps))*df, avgps)
            loglog()
            xlabel('Frequency$\quad$(Hz)')
            ylabel('Average Pulse Power$\quad$(%s/Hz)' % ('R' if Rspace else ('A' if gain else 'V')))
            tight_layout()
            savefig('%s-avgpulse-power.pdf' % session)

    if n.size > 0:
        # Plot noise spectrum
开发者ID:robios,项目名称:PyTES,代码行数:70,代码来源:Util.py


注:本文中的Filter.average_pulse方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。