Power spectrum using yule walker method

i am currently working on an algorithm and i need to add a power spectrum using yule walker method or modified covariance method or any other power spectrum estimation method except music and fft (periodogram) that i already did. can anybody help me?or does anybody have any other vi that calculates the power spectrum?

Hi hampis,
I posed a similar response on the yule walker forum.
If you're running LabVIEW 8.0 or 8.2 you can use the MathScript node to execute the aryule() function, which uses the Yule-Walker method to estimate autoregressive (AR) model parameters.
Here is more information on this command:
aryule (MathScript Function)
Michael K. | Applications Engineer | National Instruments
| Michael K | Project Manager | LabVIEW R&D | National Instruments |

Similar Messages

  • Solving yule-walker equations

    Hello
    I want to estimate the parameters of an AutoRegressive model order p=5, and from netsearches I understand this entails
    1) estimating the autocorrelationfunction up to and including lag 5
    2) creating a correlationmatrix R from these, where r_ij = r_ji
    3) solving the system R dot a = b
    where a is unknown coefficients (the parameters), and b is r_1 - r_p.
    I have substracted the mean from my series.
    I compare my results from that of R (similar to Splus).
    My estimations are perfect for the correlations, but my solution to the system is not. I use the method "gssitisol" from "A numerical library in Java for scientists and engineers", which supposedly should solve these kind of linear systems.
    Is my System equation correct? Any other ideas on how to solve this?
    Regards
    JT

    There is not to much to go on. I don't know what this "gssitisol" method is, and I also don't know if you wrote an implementation of it yourself from pseudo code or not...
    But from my (very) limited knowledge of AR modelling (a topic in a class of 3 moths) I read that the Yule-Walker method can lead to poor estimates. The Burg�s method is preferred (at least in this article):
    http://bonsai.ims.u-tokyo.ac.jp/~mdehoon/publications/Annals.pdf
    But I'm still a novice around here. I'm sure that if you're a bit more specific, and perhaps supply some code, there will surely be someone with far more math-skills here who can help you out.
    Hope it helped.
    Good luck.

  • I can't turn on my MacBook Air despite trying to hold down the power button and using the SMC method. BTW my battery charger lights up to a green when plugged into the laptop.

    I can't turn on my MacBook Air despite trying to hold down the power button and using the SMC method. BTW my battery charger lights up to a green when plugged into the laptop.

    Hello cass528,
    I would be concerned too if my MacBook Air would not power on.  I recommend following the steps in this article when experiencing an issue like this:
    Troubleshooting: My computer won't turn on
    http://support.apple.com/kb/TS1367
    Thank you for using Apple Support Communities.
    Best,
    Sheila M.

  • Number of cycles using power spectrum for getting frequency

    Hi,
    I have a square wave that I am getting a frequency estimate from using power and frequency estimate.vi
    I was wondering if it mattered how many cycles were inputted for the frequency estimate. Also, the signal may end in between cycles.
    Thanks,
    Jennifer

    Sorry for the vague first post. The software was already written for the device and I am just trying to understand a few things in order to make some changes.
    I am measuring the speed of a turning rotor using the square wave signal generated from a pattern on the turning rotor. I need to know the frequency of the square wave in order to determine the speed of the rotor. The pulse pattern is used in power spectrum and estimate frequency icons (appears to be similar to an example program for spectrum analyzer). The speed of the rotor is variable until it reaches steady state which can take minutes or hours. Speeds are not too high (Freq 1-100Hz). Right now the measurement is set up to sample a given number of points at a given scan rate. This means that the data most likely does not end exactly as a pulse cycle ends but somewhere in the middle of a cycle.
    We are interested in seeing the transient change in speed from start-up to steady-state. How short of a sampling period (i.e. # of cycles can be put into the power spectrum and estimate frequency.vi's) would give reliable measurments. Right now I just scan for a reasonable time in order to make sure I get enough pulses in order to better estimate the frequency of the pulse signal.
    In the future I will work with completing pulse width measurements which most likely would be the fastest I can complete a transient measurement although my data will have a bit more fluctuations. That's due to each pulse not being exactly the same width.
    Hope that gives you a better idea what's going on here.

  • Is possible to use PCI 6250 card for order power spectrum in sound and vibration

    Hai all,
    Iam new to Labview sound and vibration. In my application i need to extract the order power spectrum, for that iam using PCI 6250 NIcard. I tried with our NI example program i cant able to get the prober result. Whether this card is suitable for my apllication ?. If it is suitable can any one explain to me to get the order power spectrum...
    In my application iam using one analog signal and one encoder signal(Speed) . Can any one Help...
    Thanks in advance,
    Vijay

    iam using one accelerometer to get the signal from transaxle gear box. This accelerometer signal iam passing to charge amplifier card to get 0-10v signal. This signal iam passing to PCI6250 ai- 0 channel and encoder is connected with motor is passing to ai-1channel for analog tacho. iam using NI example program (Order power spectrum - analog tacho. VI).
    sampling rate is 1000 S/s and no. of samples 1000 for acquiring data. But i cant able to get speed and order magnitude value proberly. Encoder PPR -1000. Can u help me....
    Regards,
    Vijay.

  • Signal-to-Noise ratio from Power Spectrum?

    Hi,
    I have a feeling this is a basic issue but for some reason I'm not getting it.  I hope this forum can help.
    I have a Power Spectrum (freq on the x-axis and power on the y-axis) and I am trying to determine the signal to noist ratio of the rf signal live.
    I am using LV 8.5 and have the spectrum toolkit and am using an RFSA in a PXI chassis.
    Any suggestions?
    Thanks
    - rf curious

    Hi Rf Curious,
    This questions does not have a simple
    answer but let me share my thoughts and you can decide what it makes
    most sense for your application. For signal to noise ratio (SNR) you
    should have ideally the power of the signal and divide it by the power
    of the noise. The problem here is that you are looking at both at the
    same time (rf live signal). Depending of what type of signal is it, you
    can recreate it and substract it from the spectrum (you will need to
    recreate the phase and magnitude and delete it from the phase and
    magnitude of the spectrum). This is normally done with simple signals
    such as a tone.
    If you don't have access to the magnitude and
    phase of the data, and you only see the spectrum, then you will have to
    do things different. You can probably measure the power of the signal
    by measuring the power of the band where the signal is located. Then,
    you can terminate your input and measure the power of the noise of the
    instrument (with same attenuation and RBW settings) and have a rough
    estimate. This method should have better results when S >> N. You
    can also take the adjacent channel (or further) noise reference.
    Finally,
    if your signal has a pretty flat spectrum, then you can only take the
    difference between the noise and the signal since they both have the
    same RBW.
    If by now, you have found other methods, feel free to post your ideas here for any other person that come across this problem.
    Regards,
    Gerardo O.
    RF Systems Engineering
    National Instruments

  • How do I get the correctly scaled amplitude of a power spectrum?

    I am taking data off of a afm probe with a resonant frequency.  I want to determine the amplitude of the signal at the resonant frequency.  I've tried using AutoPowerSpectrum (FFT(x)FFT*(x)/n^2) and just plain FFT, but neither are scaled correctly when I input a sine wave at a given amplitude and frequency.  What do I need to do to scale my spectrum, so that I can tell the actual amplitude of the signal at the resonant frequency?

    The Help topic for the SpectrumUnitConversion Method describes ENBW as, “equivalent noise bandwidth of the selected window. You can use this value to compute the power in a given frequency span.” CoherentGain is defined as, ”peak gain of the window relative to the peak gain of the Rectangular window. Use this value to normalize peak signal gains to that of the Rectangular window.”
    The Help topic also says, “The ENBW and CoherentGain parameters are output by the ScaledWindow function. You need this input only when you use the spectral density output formats (the last four DisplayUnit selections).” In other words, you only need to use these inputs if you have used the ScaledWindow method and are setting the DisplayUnit to 4, 5, 6, or 7. From what you and Caroline have discussed, I assume you will be setting the DisplayUnit parameter to 1.
    Regards,
    Eric

  • Optimizing Power Spectrum Performance

    I'm continuously acquiring data from two channels on a PXIe-5122 at a rate of 50 MS/s (100 MS/s total). I would like to compute the power spectral density of each channel while acquiring the data. I'm currently using the FFT Power Spectrum and PSD VI.  I benchmarked the performance of the FFT Power Spectrum and PSD VI on its own and was processing at a rate of about 3 MS/s per channel.
    Is there a more efficient VI should I should be using to calculate the PSD?
    Is calculating the PSD at these rates even feasible?  If not, any suggestions for alternatives?  (Would an LV FPGA be an option?)
    Thanks!
    geoff
    Geoffrey Schmit
    Fermi National Accelerator Laborary

    Hello Geoff,
    This is Andrew Brown, an Applications Engineer from National Instruments. The FFT Power Spectrum and PSD VI you mentioned is the recommended method of determining the PSD of data channels. Calculating the PSD given your sampling rates (100 MS/s) would definitely be much faster using the LabVIEW process. However, I was unable to find a specific benchmark.
    Some additional resources on using LabVIEW FPGA are located at NI LabVIEW FPGA and in the LabVIEW FPGA Help for FFT. Please let me know if you have related questions on this issue. Thanks, and have a great day!
    Regards,
    Andrew Brown 
    Applications Engineer
    National Instruments

  • WAV power spectrum

    I am conducting a sound measurement test using a IEPE microphone and the NI USB 9233. I used the SVXMPL_WAV Recorder (DAQmx).vi to record a Wav file of the sound and then the SVXMPL.WAV Power Spectrum.vi to produce a power spectrum of the wave file. I had a concern that scaling was occurring because the spectrum seemed louder than expected. I read in another thread that no scaling occurs in the vi. Next I used SVMPL_FFT Subset (DAQmx).vi to produce a power spectrum over the same frequency range (20 to 20,000 Hz). In general, the two method agree well except that the peaks in the spectrum are at lower frequencies for the WAV Power spectrum vi than that obtained for the SVMPL_FFT vi. I was wondering if any one could please explain why this is occurring?
    Regards,
    Bill

    Hello Bill!
    Thanks for your posts back and the information. So what I have done is I ran approx 1 KHz signal through a series of different programs to see if I could reproduce anything you were seeing. I also used the program you posted as well. However when I run the  WAV Recorder (DAQmx) vi and then put that wave file into the WAV Power SPectrum I see the signal at about 1KHz like I expect. Then I aslo use your program to see if I can get the same results with the same function generated signal. I always se my signal in the same matter and the frequency components line up accordingly. See the pictures attached below. Thanks for posting your code and it seems like I am unable to reproduce what you are seeing. Did you make any changes to the VI's in your code? If you could perhaps post the wav files that you are producing to see what I can make of them? Take a look at the screen shots that I was able to produce. 
    Cheers!
    Corby_B
    http://www.ni.com/support 
    Attachments:
    Power Spectral Density.jpg ‏225 KB
    WAV Power Spec.jpg ‏202 KB
    Power Spectrum.jpg ‏142 KB

  • Why do I get SVFA Power Spectrum error?

    Hello,
    I'm having trouble with acquiring sound data from a microphone using the PCI-4474 and the DAQ Assistant and analyzing with the Sound & Vibration toolkit in LabVIEW 8.5.1. Every so often, I'm getting the following error from the Power Spectrum Express VI:
    Error -1931 occurred at SVFA Power Spectrum (1 Ch).vi:4
    Possible reason(s):
    Sound & Vibration:  The number of samples should be greater than 0.
    One time I also got error -200284 at the DAQ Assistant VI. I know that normally means a timeout issue, but it shouldn't be timing out because I'm acquiring 299 samples @ 60 kS/s, and the timeout is set to 11 seconds. I don't think it's a trigger issue either because the problem only happens occasionally, at somewhat random times, and I'm not using an external trigger.
    What really stumps me is that I don't get this error every time, and if I click Continue on the error dialogs, it seems to return to normal, at least for a while.
    Any suggestions would be greatly appreciated.
    Thanks!
    David

    Hi PBear,
    Thanks for replying. I probably should have explained better. The reason I was trying to take a sample of data smaller than 0.8 ms is because of the method I was using to calculate the exact duration of the beep. For each set of samples, I used the SVL AC & DC Level VI to calculate the signal level, then if it was above a threshold I captured a time stamp. During each subsequent iteration of the while loop, I would keep thresholding the signal and capturing a time stamp until the signal fell below the threshold, at which point I would collect a final time stamp and subtract the first time stamp from it to get the duration. This method works, but it's only accurate to the duration of the samples collected (maybe not even that). I'm sure there's a better method but that was the only way I could think of at the time. Anyway, that's what I meant by time resolution -- resolving the duration of the beep. I didn't mean the actual time resolution of signal acquisition; I know that depends only on the sampling rate.
    Hopefully now I've explained it more clearly and you can see my dilemma. You're right, if I sampled at 200 kS/s, I would have a data point every 5 µs. The problem is, I need a signal level (i.e. RMS value), not just one data point. And I need RMS values in high enough time resolution that I can verify the duration of the beep to within 0.8 ms. That's why I was trying to run my acquisition loop so often, because I only get one RMS value for each loop iteration. That sounds like a pretty inefficient method, though. Is there a way to capture more data points per iteration but somehow chop them up into smaller groups in real time and get more RMS values per iteration? And then how would I know my time stamps are accurate? (Am I anywhere in the ballpark?)
    Thanks for your suggestion on the DAQ Assistant. I'll see what I can do there -- maybe that will eliminate some of the extra noise.
    Below I've posted the latest version of my VI -- it's a little cleaner than the one I posted yesterday. Take a look at it and maybe my explanation will make a little more sense.
    Thanks,
    David
    Attachments:
    test20080627.vi ‏447 KB

  • Power Spectrum no longer working correctly after upgrading to 8.0.1

    Recently, I installed Labview 8.0.1 to correct a problem I was experiencing in 8.0.  The installation resolved my problem, but now the Power Spectrum no longer gives the correct result.  My program has not changed other than the update.  I checked my circuit and everything is functioning properly.  Before changing to 8.0.1 the power spectrum peaked at 40Hz and 80Hz,  which was correct, and now it peaks at 0Hz and 10Hz.  On top of everything, the peaks are much higher than they should be.  I expect peaks with a max of 2.5millivolts and now they are 1volt.  I don't understand what is going on. Nothing changed, but the software version.  Can someone please help me? 

    In addtion to Altenbach's comments - 
    I'd recommend trying another VI function to get the power spectrum for
    your signal to see if the behavior is the same.  You can find some
    examples of VIs using the power spectrum functions using the NI Example
    Finder.
    You can go to LabVIEW's Example Finder by going to Help >> Find Examples.
    Then search for FFT. There should be some results that include FFT and
    Power Spectrum Units.vi, Power Spectrum Measurement.vi, Basic Spectral Measurements.vi,  and Spectrum Measurements.vi. Try opening and
    running these examples to see if the VIs are returning the proper
    results.
    Mark Walters
    Application Engineer
    National Instruments

  • Basic accelerometer-power spectrum readings

    Hi all,
    I'm new to Labview and am trying to create a simple power spectrum logger. I've had a look at multiple tutorials but am stuck getting to places (most of the tutorials require sound and vibration toolkit, are really old and incompatible with Labview 2011 etc). The program I'm trying to do is:
    1) Collect signals from accelerometer (4kS/s)
    2) Generate power spectrum
    3) Save to disk (on board the cRIO)
    My setup is:
    - cRIO 9014
    - NI 9234
    - Labview 2011
    So far, I've managed to get the signal readings (XYZ axis) and merge them, put them into a 'Collector' block and then output them to the power spectrum block. I've very crudely used a 'Time Delay' block to set the sample rate (which I know is probably not accurate, but I cannot figure out how else to do it). I'm having a problem figuring out how to input the sample rate into the collector, which is why my power spectrum is giving me 0 to 0.5Hz (it's likely assuming the sample rate is 1Hz). I've attached my .vi.
    Would someone be able to point me to a tutorial/example/alternative solution? Thank you very much in advance.
    Attachments:
    accelero.vi ‏93 KB

    I think what you want is the CompactRIO vibration data logger.  It does not require the S&V measurement suite, though you will find it very useful. 
    Check this out!
    http://zone.ni.com/devzone/cda/epd/p/id/6388
    It has a waveform acquisition template for the FPGA.  It has a data logging state design. 
    You can see a Video of it working here
    http://www.ni.com/mcm/wind/
    Let us know if this helps. 
    Preston Johnson
    Principal Sales Engineer
    Condition Monitoring Systems
    Vibration Analyst III - www.vibinst.org, www.mobiusinstitute.com
    National Instruments
    [email protected]
    www.ni.com/mcm
    www.ni.com/soundandvibration
    www.ni.com/biganalogdata
    512-683-5444

  • Save Power spectrum

    Hi
    I would like to save a power spectrum ( about 80000 lines of data) as a file that i can later plot. When i write the cluster (coming out of FFT Powerspewctrum.vi)  to an excel  (excel works only upt o 56000 or something like that, so i can´t use it anyways) or .txt file using the a combination of open -write -close  file i get weird number and letters and not the data i´d like to have. Which data format ( iwould like to make graphs in origin) and vi´s should i use to export the spectrum or is it the best to extract the y-value of the spectrum (magnitude) using the unbundle by name .vi  and export it as txt?
     Thanks for any help

    I believe this is also something i can use for my application, however, when trying to recreate the code in LabVIEW 2011 SP1, the connections between the For Loop and the Close File return an error that the data types are different.The Path wire returns that the source is 1-D array of byte stream file reference with the sink being byte stream file reference. The Error wire returns that the source is 1-D array of cluster of 3 elements with the sink being a cluster of 3 elements.  How would i go about fixing this?
    I plan on using this to write to the file from an accelerometer connected to a NI-9234 c-series module through a cDAQ-9178 usb chasssis.  So my intention is to use this as a subVI to connect the accelerometer signal from the DAQ Assist of another VI.  I am trying to record the spectral data. Attached is the attempt at recreating your code.
    Attachments:
    Save Power Spectrum.vi ‏55 KB

  • Memory leak with Power Spectrum function

    Hi
    I have a memory leak on my application. By observing with the "Desktop Execution Trace Toolkit", the Power Spectrum function (from NI_AALPro.lvlib) seems to have two "Reference leak".
    The first one refers to the function "Open VI reference"; I got around this problem by replacing the "Open VI reference" by an "Initialize" input boolean, but I don't understand the second memory leak.
    Any idea ?
    Thanks...
    (See attachments : Desktop Execution Trace + code)
    LV8.6.1 + Desktop Execution Trace Toolkit 2009
    Same problem with LV2012 + Desktop Execution Trace Toolkit 2012
    Attachments:
    DesktopExecutionTraceToolkit.png ‏82 KB
    MemoryLeakPowerSpectrum.zip ‏7 KB

    Hi Mathilde,
    Thank you for using NI Discussion Forums!
    I reproduce this problem with LV2012 + Desktop Execution Trace Toolkit 2012. I will look further into this.
    Are there many calls of this function in your code? Could it be a problem for you?
    Thank you.
    Regards,
    Audrey_P
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées techniques : des fondamentaux aux dernières technologies pour la mesure et le contrôle/comm...

  • What is the equation for a Low-Sidelo​be Window Function (in Power Spectrum VI)?

    I am trying to find out what is the equation for the Low Sidelobe Window which is mentioned in the Power Spectrum VI. Hanning second sidelobe is around -32dB of the first. What is that for Low Sidelobe?

    The CWT is not equivalent to the discrete dyadic wavelet transform. In theory, the CWT can compute the wavelet coefficient at any positive real scale and any real shift, while the discrete dyadic wavelet transform only includes the dyadic scales (2,4,8,16...). So the formula used to describe the CWT can be referred to the equation in pp.80 in S. Mallat's book.
    In SPT's implementation, the time interval controls the shift in number of samples. The scales indicate the wavelet coefficients at integer scales 1,2,3,...,"scales" are contained in the output scalogram.
    NISH DSP
    Medical ultrasound and signal processing

Maybe you are looking for

  • Merge Two Columns in a Single Column

    Dear, Inputs Table1 | Col1 (Number) | 1 | 2 | 3 | 4 | 5 | 6 | and table 2 Table2 | Col1 (Number) | 7 | 8 | 9 | 10 | 11 | 12 | No relation between the two tables I want to write a select statement that will result Column 1 2 3 4 5 6 7 8 9 10 11 12 No

  • I just bought a laptop, trying to download iTunes and it is not downloading.

    I've tried several times downloading iTunes, each and every time it tells me there is an "uspecified error". I don't know what the error is because I just bought my laptop today so I do not have any cookies or bad files in database. How can I solve t

  • Error: JAVA_HOME is not defined correctly - While running ant.

    I have upgraded the JDK 1.5 Update 10 to Update 14. After upgrading the ant is failing when using with cygwin. It's giving the below error message: Error: JAVA_HOME is not defined correctly. We cannot execute /cygdrive/c/Java/jdk14/bin/java The JAVA_

  • Mail Flow Issue In Exchange Server 2010

    Hello, I have an on-premises environment where I have an exchange 2010 hub and edge server. I have 4 domains. All my emails are routed through edge server to the internet. When I send an email from my primary domain to a particular remote domain the

  • Flash animation extending out of the SWF movie into the 'non-flash' areas of the browser

    Hey Everybody -- So I was on myspace and I couldn't help but to notice that one of the flash animated ads they were running had butcher knives (it was for some horror movie) coming out of the movieclip and into the browser. Does this make sense? Has