| Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Software  
  • Adobe Illustrator
  • animasjon programvare
  • Antivirus programvare
  • Audio programvare
  • Sikkerhetskopiere data
  • brenne CDer
  • brenne DVDer
  • Datakomprimeringsprotokoll
  • database programvare
  • Desktop Publishing
  • Desktop Video
  • Digital Video Software
  • Drupal
  • pedagogisk programvare
  • Engineering programvare
  • Arkiv Forlengelsen Typer
  • Financial Software
  • Freeware, Shareware & Abandonware
  • GIMP
  • Graphics Software
  • Hjem Recording Software
  • Microsoft Access
  • Microsoft Excel
  • Microsoft Publisher
  • Microsoft Word
  • Åpen Kildekode
  • Andre dataprogrammer
  • PC Games
  • Photoshop
  • Portable Document Format
  • PowerPoint
  • presentasjon programvare
  • produktivitet programvare
  • Quicktime
  • Remote Desktop Management
  • SQL Server
  • Skype
  • Programvare betaversjoner
  • programvare konsulenter
  • Software Development Selskaper
  • Software Licensing
  • regneark
  • Skatt forberedelse programvare
  • Utility programvare
  • Web Clip Art
  • Windows Media Player
  • Tekstbehandlingsprogrammet
  •  
    Datamaskin >> Software >> Engineering programvare >> Content
    Hvordan bruke FFT i MATLAB
    Fast Fourier Transform ( FFT ) er en teknikk som ofte brukes i signalbehandling. En Fourier transform tilnærmet enhver kontinuerlig funksjon som summen av periodiske funksjoner ( sinus og cosinus ) . FFT gjør det samme for diskrete signaler - serie av datapunkter snarere enn en kontinuerlig definert funksjon . FFT lar deg identifisere periodiske komponenter i diskret signal. Du må kanskje identifisere en periodisk signal begravd under tilfeldig støy , eller analysere et signal med flere ulike periodiske underliggende kilder . MATLAB har en innebygd i implementeringen av FFT å hjelpe deg med dette . Du trenger
    MATLAB vektor som inneholder diskret signal data
    Vis flere instruksjoner
    Utfør FFT
    en

    Beregn lengden (antall elementer ) av vektor inneholder dine data . For eksempel, hvis dataene blir lagret i en vektor som heter "d , " type "L = lengde ( d ) ; " i MATLAB kommando linje uten anførselstegn . L vil nå inneholde antallet elementer i d
    2

    Beregn den potens av 2 som er større enn eller lik l , ved å skrive . " P = nextpow2 ( L ), " i MATLAB kommando linje uten anførselstegn . Hvis L = 1000 , for eksempel, vil p være 10, fordi 2 ^ 10 = 1024
    3

    Utfør FFT ved å skrive " Y = fft (d, 2 ^ p ) . ; "i MATLAB kommandolinjen uten anførselstegn . Denne kommandoen legger til nuller til d for å få en vektor av lengde 2 ^ p og deretter utfører FFT på 2 ^ p - element vektor. De vedlagte nuller påvirker ikke resultatet av FFT , men FFT går raskere med en vektor som har lengde er en potens av to

    Den resulterende vektor Y gir koeffisientene sinus og cosinus funksjoner på frekvenser fra - . ( 2 ^ p /2) ) til 1 + (2 ^ p /2) (forutsatt at d er samplet ved en prøve per sekund , eller 1Hz ) . Dette er sinus og cosinus funksjoner som legger opp til det opprinnelige signalet d . Y er kompleks , dens virkelige deler er koeffisientene til sinus -funksjoner , og dens imaginære deler er koeffisientene til cosinusfunksjonene
    4

    Hold bare de unike delene av Y ved å skrive " Y = Y . ( 1 : ( ( 2 ^ p +1) /2 )); " uten anførselstegn på MATLAB kommandolinjen . Dette er nødvendig fordi utgangen fra FFT er symmetrisk - det vil si at den andre halvdelen av Y simpelthen den komplekse konjugerte av første halvdel . Nå gir Y koeffisientene sinus og cosinus funksjoner på frekvenser 0-1 + ( 2 ^ p /2 ) ) .
    5

    Divide Y av L /2 ved å skrive " Y = Y. /( L /2 ) ; "i MATLAB kommando linje uten anførselstegn . Dette er nødvendig fordi MATLAB sin standard FFT utgang er multiplisert med en faktor på l /2, slik at det vil være større dersom d er lengre. Dividere med L /2 normaliserer FFT utgang slik at den ikke er avhengig av lengden på d. .
    Plot FFT resulterer
    6 p Hvis d ikke ble samplet på 1 Hz men ved noen frekvens "f ", det faktiske frekvenser som er representert i Y vil være 0 til f * (1 + (2 ^ p /2 ))) . Beregn en MATLAB vektor som inneholder disse frekvensene . Først definerer din faktiske samplingsfrekvens i en variabel f . Hvis den reelle samplingsfrekvens var 0,5 Hz ( 1 prøve hvert 2. sekund ) , vil du skrive " f = 0.5; " på MATLAB kommando linje uten anførselstegn . Deretter skriver du inn " freq = f * ( 0 : ( 1 + ( 2 ^ p /2 ) ) ) . )" På MATLAB kommando linje uten anførselstegn . Nå freq inneholder faktiske frekvenser representert i Y.
    7

    Få amplituden av signalet komponent ved hver frekvens ved å skrive " Ya = abs (Y )" . på MATLAB kommando linje uten anførselstegn .
    8

    Plot amplitude spekteret av signalet ved å skrive " plot ( freq, Ya )" på MATLAB kommando linje uten anførselstegn .

    9

    Få kraften av signalet komponent ved hver frekvens ved å skrive " Yp = Y. ^ 2 " i MATLAB kommando linje uten anførselstegn .
    10

    Plot kraften spekteret av signal ved å skrive " plot ( freq, Yp )" på MATLAB kommando linje uten anførselstegn .

    früher :

     Weiter:
      Relatert Artike
    ·Slik bygger Solidworks -filer til en sammenstilling 
    ·Hvordan overføre CUI fra én datamaskin til en annen i…
    ·Bruk av CAD -programvare 
    ·Ladder Logic Tutorial 
    ·AutoCAD : Slik kopierer en Viewport 
    ·Oracle Primavera Installasjonskrav 
    ·Wireless Network Simulation Software 
    ·Autocad Revit Trening 
    ·Slik bruker CAD -programvare 
    ·Autocad LT Systemkrav 
      Anbefalte artikler
    ·Slik bruker du en Copy & Paste hurtigtast 
    ·Hvordan lage buede linjer i Photoshop 
    ·Tutorial for Uttonet Wings i Photoshop 
    ·Hvordan Zip en filmfil 
    ·Hvordan sette en side som landskap og vedlikeholde de s…
    ·Er det forskjell på skrivbare CD-og DVD 
    ·Hvordan får jeg en lyd-CD fra en WMV -fil 
    ·Sette inn en kalender inn et Excel- regneark 
    ·Excel XP Tutorials 
    ·ATX File Extension 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/