Accord.Audio.Signal.GetEnergy C# (CSharp) Method

GetEnergy() public method

Computes the signal energy.
public GetEnergy ( ) : double
return double
        public double GetEnergy()
        {
            double e = 0, v;

            unsafe
            {
                if (format != SampleFormat.Format128BitComplex)
                {
                    // Iterate over all samples and compute energy
                    float* src = (float*)this.ptrData.ToPointer();
                    for (int i = 0; i < this.Samples; i++, src++)
                    {
                        v = (*src);
                        e += v * v;
                    }
                }
                else
                {
                    // Iterate over all samples and compute energy
                    Complex* src = (Complex*)this.Data.ToPointer();
                    for (int i = 0; i < this.Samples; i++, src++)
                    {
                        double m = (*src).Magnitude;
                        e += m * m;
                    }
                }
            }

            return e;
        }