212be41d28a7d40ce63d3ad1c5d3c453a83a1f1c,acoular/fbeamform.py,BeamformerEig,calc,#BeamformerEig#Any#Any#,538

Before Change


        na = int(self.na)
        numchannels = self.freq_data.numchannels
        e = zeros((numchannels), "D")
        h = empty((1, self.grid.size), "d")
        // function
        beamfunc = self.get_beamfunc("_os")
        if self.r_diag:
            adiv = 1.0/(numchannels*numchannels-numchannels)
            scalefunc = lambda h : adiv*multiply(h, (sign(h)+1-1e-35)/2)
        else:
            adiv = 1.0/(numchannels*numchannels)
            scalefunc = lambda h : adiv*h
        for i in self.freq_data.indices:        
            if not fr[i]:
                eva = array(self.freq_data.eva[i][newaxis], dtype="float64")
                eve = array(self.freq_data.eve[i][newaxis], dtype="complex128")
                kji = kj[i, newaxis]
                beamfunc(e, h, self.r0, self.rm, kji, eva, eve, na, na+1)
                ac[i] = scalefunc(h)
                fr[i] = True

After Change


        
        kj = 2j*pi*self.freq_data.fftfreq()/self.c
        na = int(self.na)  // eigenvalue taken into account
        normFactor = self.signalLossNormalize()
        steerVecFormulation = self.steerVecTranslation()
        for i in self.freq_data.indices:        
            if not fr[i]:
                eva = array(self.freq_data.eva[i][newaxis], dtype="float64")
                eve = array(self.freq_data.eve[i][newaxis], dtype="complex128")
                kji = kj[i, newaxis]
                beamformerOutput = beamformerFreq(True, steerVecFormulation, self.r_diag, normFactor, (self.r0, self.rm, kji, eva[:, na:na+1], eve[:, :, na:na+1]))
                if self.r_diag:  // set (unphysical) negative output values to 0
                    indNegSign = sign(beamformerOutput) < 0
                    beamformerOutput[indNegSign] = 0
                ac[i] = beamformerOutput
                fr[i] = True

class BeamformerMusic( BeamformerEig ):
Italian Trulli
In pattern: SUPERPATTERN

Frequency: 3

Non-data size: 18

Instances


Project Name: acoular/acoular
Commit Name: 212be41d28a7d40ce63d3ad1c5d3c453a83a1f1c
Time: 2017-10-07
Author: tom.j.gensch@campus.tu-berlin.de
File Name: acoular/fbeamform.py
Class Name: BeamformerEig
Method Name: calc


Project Name: acoular/acoular
Commit Name: 30f4a3e03dc59daed7979659701e4c537fbae91c
Time: 2017-10-07
Author: tom.j.gensch@campus.tu-berlin.de
File Name: acoular/fbeamform.py
Class Name: BeamformerFunctional
Method Name: calc


Project Name: acoular/acoular
Commit Name: 914ac784d0a616c4f6a030fc8130281269c74432
Time: 2017-10-07
Author: tom.j.gensch@campus.tu-berlin.de
File Name: acoular/fbeamform.py
Class Name: BeamformerBase
Method Name: calc


Project Name: acoular/acoular
Commit Name: 212be41d28a7d40ce63d3ad1c5d3c453a83a1f1c
Time: 2017-10-07
Author: tom.j.gensch@campus.tu-berlin.de
File Name: acoular/fbeamform.py
Class Name: BeamformerEig
Method Name: calc