DSPRelated.com
Forums

maximum accuracy of estimating the power of the signal

Started by praveen September 13, 2003
Hello,

To what accuracy can i estimate the power of a signal.what are the
different techniques to increase the accuracy of estimating the power
of the signal.I am required to estimate the power of the signal to the
accuracy of 10^-7 (i.e. the difference between estimated and actual
power). I am giving the matlab code for estimating the power of the
signal. In my stimation the accuracy i am getting is only 10^-5 to
10^-6 i am required to increase the estimated to an accuracy of 10^-7.
What all techniques can i use.... my noise amplitude amp is fixed at
.008.

waiting for ur reply
praveen


%clear;am=1;f1=20;f2=50;fs=500;N=5000;kk=512;bw=5;amp=.008;frq1=20;amp_estimate;er


%  signal generation
s=am*cos(2*pi*f1/fs*[1:N])+cos(2*pi*f2/fs*[1:N])+amp*randn(1,N);
% To filter other signal other than f1 frequency whose amplitude to be
estimated
[a1,b1]=ellip(3,.0001,60,[f1-2 f1+2]/fs*2);
s=filter(a1,b1,s);
% Noncoherent integration
i=cos(2*pi*frq1/(fs)*[0:(length(s)-1)]);Si=s.*i;
q=sin(2*pi*frq1/(fs)*[0:(length(s)-1)]);Sq=s.*q;
[a,b]=fir1(kk,bw/(fs)*2);
Si=filter(a,b,Si);
Sq=filter(a,b,Sq);
% finding the power
A=sqrt(Si.^2+Sq.^2);
S1=mean(A(kk:end));
%difference between the estimated and actual power of signal 
er=S1-(am^2)/2;
praveenkumar1979@rediffmail.com (praveen) wrote in message news:<ff8a3afb.0309122155.12ecc64d@posting.google.com>...
> Hello, > > To what accuracy can i estimate the power of a signal.what are the > different techniques to increase the accuracy of estimating the power > of the signal.I am required to estimate the power of the signal to the > accuracy of 10^-7 (i.e. the difference between estimated and actual > power). I am giving the matlab code for estimating the power of the > signal. In my stimation the accuracy i am getting is only 10^-5 to > 10^-6 i am required to increase the estimated to an accuracy of 10^-7. > What all techniques can i use.... my noise amplitude amp is fixed at > .008.
Two comments spring to mind: - You need to look at the variance of your estimator for power. As you know, estimating some parameter in a (partially) random signal requires statistical methods. The performance of any estimator can be described in terms of mean and variance. You should be able to investigate the variance of your particular estimator, and see how the variance varies with e.g. the number of data points going into your estimate. - Once you have done that, you may want to check out the Cramer-Rao lower Bound (CRB) on estimator variance. The CRB expresses the lowest possible limit on your variance, given Signal-to-Noise Ration (SNR), the number of sata points available and the mathematical expression for your estimator. It is important to realize that your required precision of the estimate *may* be too tough, i.e. that the CRB may not let you reach it with the amount of data you have available. The connection between the estimator variance and the CRB is that each estimator is characterized by a variance (given SNR and amounts of data), while the CRB expresses the lowest possible variance. The variance of any estimator may or may not approach the CRB. The only way to actually reach the CRB is to design an estimator for that particular purpose. This may or may not be possible. Rune
praveen wrote:
> > Hello, > > To what accuracy can i estimate the power of a signal.what are the > different techniques to increase the accuracy of estimating the power > of the signal.I am required to estimate the power of the signal to the > accuracy of 10^-7 (i.e. the difference between estimated and actual > power). I am giving the matlab code for estimating the power of the > signal. In my stimation the accuracy i am getting is only 10^-5 to > 10^-6 i am required to increase the estimated to an accuracy of 10^-7. > What all techniques can i use.... my noise amplitude amp is fixed at > .008. > > waiting for ur reply > praveen > > %clear;am=1;f1=20;f2=50;fs=500;N=5000;kk=512;bw=5;amp=.008;frq1=20;amp_estimate;er > > % signal generation > s=am*cos(2*pi*f1/fs*[1:N])+cos(2*pi*f2/fs*[1:N])+amp*randn(1,N); > % To filter other signal other than f1 frequency whose amplitude to be > estimated > [a1,b1]=ellip(3,.0001,60,[f1-2 f1+2]/fs*2); > s=filter(a1,b1,s); > % Noncoherent integration > i=cos(2*pi*frq1/(fs)*[0:(length(s)-1)]);Si=s.*i; > q=sin(2*pi*frq1/(fs)*[0:(length(s)-1)]);Sq=s.*q; > [a,b]=fir1(kk,bw/(fs)*2); > Si=filter(a,b,Si); > Sq=filter(a,b,Sq); > % finding the power > A=sqrt(Si.^2+Sq.^2); > S1=mean(A(kk:end)); > %difference between the estimated and actual power of signal > er=S1-(am^2)/2;
It helps to calculate power and not "voltage": try A=Si.^2+Sq.^2; instead of A=sqrt(Si.^2+Sq.^2); . (Doh!) -- % Randy Yates % "...the answer lies within your soul %% Fuquay-Varina, NC % 'cause no one knows which side %%% 919-577-9882 % the coin will fall." %%%% <yates@ieee.org> % 'Big Wheels', *Out of the Blue*, ELO http://home.earthlink.net/~yatescr
Hello Mr Rune,
Given the flexiblity in choosing the number of data point can i get
the accuracy of 10^-7. Can you please explain me the cramer rao lower
bound (equation that relates SNR, Number of data and the mathematical
expression of the estimator)

waiting for reply
praveen
On 12 Sep 2003 22:55:36 -0700, praveenkumar1979@rediffmail.com
(praveen) wrote:

>Hello, > >To what accuracy can i estimate the power of a signal.what are the >different techniques to increase the accuracy of estimating the power >of the signal.I am required to estimate the power of the signal to the >accuracy of 10^-7 (i.e. the difference between estimated and actual >power). I am giving the matlab code for estimating the power of the >signal. In my stimation the accuracy i am getting is only 10^-5 to >10^-6 i am required to increase the estimated to an accuracy of 10^-7. >What all techniques can i use.... my noise amplitude amp is fixed at >.008. > >waiting for ur reply >praveen
Hi, just out of curiosity, what is the application where you need such high accuracy? Maybe it's an audio application. You audioheads like high performance, right? [-Rick-]
praveenkumar1979@rediffmail.com (praveen) wrote in message news:<ff8a3afb.0309150038.552a2587@posting.google.com>...
> Hello Mr Rune, > Given the flexiblity in choosing the number of data point can i get > the accuracy of 10^-7. Can you please explain me the cramer rao lower > bound (equation that relates SNR, Number of data and the mathematical > expression of the estimator)
You find the CRB in texts on statistics and Statistical Signal Processing. Try any of these: Kay: Modern Spectral Estimation - Theory & Applications Prentice-Hall 1988 Therrien: Discrete Random Signals and Statistical Signal Processing Prentice-Hall, 1992 Stuart & Ord: Kendall's advanced theory of statistics, vol 2A Oxford University Press, 1998 van Trees: Optimum Array Processing Wiley, 2002 Rune
Hello Mr Rick Lyon,
The application is for a DSP based Fiber optic gyroscope when the
accuracy of the phase measurement is to be done at this accuracy.

With regards
praveen
praveen,
Now you have ME interested.  Are you using the microbending property
to form a fiber-optic sensor?  If you need that kind of accuracy for
the phase measurement, it would imply to me that you are using a
interferometric-based sensor.  If so, why this and not one of the
other sensor types (fiber-optic of course)?  If not, can you talk
about what you're basing the sensor on?

Murice Givens


praveenkumar1979@rediffmail.com (praveen) wrote in message news:<ff8a3afb.0309152110.fd879c6@posting.google.com>...
> Hello Mr Rick Lyon, > The application is for a DSP based Fiber optic gyroscope when the > accuracy of the phase measurement is to be done at this accuracy. > > With regards > praveen