8.9 Necazuri polare

Există multe neplăceri asociate cu utilizarea notării polare. Nici una dintre acestea nu este copleșitoare, chiar foarte enervantă! Tabelul 8-3 prezintă un program de calculator pentru conversia între notația rectangulară și polară și oferă soluții pentru unele dintre aceste necazuri.

Necazul 1: Radiani vs. Grade

Este posibilă exprimarea fazei în grade sau radiani. Când se exprimă în grade, valorile din semnalul de fază sunt între -180 și 180. Folosind radiani, fiecare dintre valori va fi între -π și π, adică -3,141592 până la 3,141592. Cele mai multe limbaje de calcul necesită folosirea radianilor pentru funcțiile lor trigonometrice, cum ar fi cosinus, sinus, arctangent etc. Poate fi iritant să lucrezi cu aceste numere zecimale lungi și dificil de interpretat datele primite. De exemplu, dacă doriți să introduceți o defazare de 90 de grade într-un semnal, trebuie să adăugați 1,570796 la fază. Deși nu vă va ucide să introduceți acest lucru în programul dvs., acesta devine obositor. Cea mai bună metodă de a rezolva această problemă este definirea constantei PI = 3,141592, la începutul programului. Gradele și radianii sunt utilizate pe scară largă în DSP și trebuie să devii confortabil cu ambele.

Necazul 2: Eroarea împărțirii la zero

Când se face conversia de la notație dreptunghiulară la polară, este foarte frecventă găsirea de frecvențe în care partea reală este zero și partea imaginară este o valoare nonzero. Aceasta înseamnă pur și simplu că faza este exact 90 sau -90 grade. Încercați să spuneți computerului dvs. acest lucru! Când programul încearcă să calculeze faza de la:

Phase X[k] = arctan(ImX[k] / ReX[k]), apare o eroare de tip împărțire la zero. Chiar dacă executarea programului nu se oprește, faza pe care o obțineți pentru această frecvență nu va fi corectă. Pentru a evita această problemă, partea reală trebuie testată dacă este zero înainte de împărțire. Dacă este zero, partea imaginară trebuie testată dacă este pozitivă sau negativă, pentru a determina dacă să setați faza la π/2 sau, respectiv, -π/2. În cele din urmă, împărțirea trebuie să fie ocolită. Nimic nu este dificil în acești pași, doar potențialul de agravare. O modalitate alternativă de a rezolva această problemă este prezentată în linia 250 din Tabelul 8-3. Dacă partea reală este zero, schimbați-o cu un număr neglijabil de mic pentru a menține procesorul de matematică fericit pe durata împărțirii.

Necazul 3: Arctan incorectă

Să considerăm un eșantion din domeniu frecvență în care ReX[k] = 1 și ImX[k] = 1. Ecuația 8-6 furnizează valorile polare corespunzătoare Mag X[k] = 1,414 și Phase X[k] = 45°. Acum considerați un alt eșantion unde ReX[k] = -1 și ImX[k] = -1. Din nou, Ec. 8-6 furnizează valorile Mag X[k] = 1,414 și Phase X[k] = 45°. Problema este că faza este greșită! Ar trebui să fie -135°. Această eroare apare ori de câte ori partea reală este negativă. Problema poate fi corectată prin testarea părților reală și imaginară după ce faza a fost calculată. Dacă ambele părți reală și imaginară sunt negative, scade 180° (sau π radiani) din faza calculată. Dacă partea reală este negativă și partea imaginară este pozitivă, adăugați 180° (sau π radiani). Liniile 340 și 350 ale programului din Tabelul 8-3 arată cum se procedează. Dacă nu reușiți să prindeți această problemă, valoarea calculată a fazei se va desfășura între -π/2 și π/2, mai degrabă decât între -π și π. Înșurubați asta în mintea voastră. Dacă vedeți că faza se extinde numai la ± 1,5708, ați uitat să corectați ambiguitatea în calculul arctangentei.

Necazul 4: Faza magnitudinilor foarte mici

Imaginați-vă următorul scenariu. Șlefuiți la o anumită sarcină DSP și observați brusc că partea fazei nu arată bine. Ar putea fi zgomotoasă, sărind peste tot, sau pur și simplu greșită. După ce ați petrecut următoarea oră uitându-te prin sute de linii de cod, găsiți răspunsul. Valorile corespunzătoare în magnitudine sunt atât de mici, încât sunt îngropate în zgomotul de rotunjire. Dacă magnitudinea este neglijabil mică, faza nu are nici un înțeles și poate presupune valori neuzuale. Un exemplu în acest sens este prezentat în Figurile 8-11. Este de obicei evident atunci când o amplitudine de semnal este pierdută în zgomot; valorile sunt atât de mici, încât sunteți obligați să suspectați că valorile sunt lipsite de sens. Faza este diferită. Când un semnal polar este contaminat cu zgomot, valorile din fază sunt numere aleatoare între -π și π. Din păcate, acest lucru arată adesea ca un semnal adevărat, mai degrabă decât prostiile pe care le reprezintă.

Necazul 5: Ambiguitatea 2π a fazei

Uitați-vă din nou la fig. 8-10d și observați mai multe discontinuități în date. De fiecare dată când un punct arată ca și cum acesta va scădea sub -3,14592, acesta va reveni la 3,141592. Acesta este rezultatul naturii periodice a sinusoidelor.

Figura 8-11 Faza semnalelor de mică amplitudine.

La frecvențe unde amplitudinea scade la o valoare foarte joasă, zgomotul round-off poate cauza excursii largi de fază. Nu faceți greșeala de a gândi că acesta este un semnal semnificativ.

Figura 8-12 Exemplu de fază neînfășurată.

Curba de sus arată un semnal de fază tipic obținut de la o rutină de conversie dreptunghiular-polară. Fiecare valoare din semnal trebuie să fie între -π și π (-3,14159 și 3,14159).

Cum se arată în curba de mai jos, faza poate fi neînfășurată prin adăugarea și scăderea de multipli întregi de 2π din fiecare eșantion, unde întregul este ales pentru a minimiza discontinuitățile dintre puncte.

De exemplu, un defazaj θ este exact același ca un defazaj θ+2π, θ+4π, θ+6π, etc. Orice sinusoid este neschimbat atunci când adăugați un întreg întreg de 2π la fază. Discontinuitățile aparente ale semnalului sunt un rezultat al algorit-mului calculatorului care își extrage alegerea preferată dintr-un număr infinit de posibilități echivalente. Întotdeauna este aleasă cea mai mică valoare posibilă, menținând faza între -π și π.

Este adesea mai ușor de înțeles faza dacă nu are aceste discontinuități, chiar dacă aceasta înseamnă că faza se extinde mai sus de π sau sub -π. Aceasta se numește desfășurarea fazei, iar un exemplu este prezentat în figura 8-12. După cum arată programul din Tabelul 8-4, se adaugă sau se scade un multiplu de 2π din fiecare valoare a fazei. Valoarea exactă este determinată de un algoritm care minimizează diferența dintre eșantioanele adiacente.

Necazul 6: Magnitudinea este întotdeauna pozitivă (ambiguitatea π a fazei)

Figura 8-13 prezintă un semnal din domeniu frecvență în formă rectangulară și polară. Partea reală este netedă și destul de ușor de înțeles, în timp ce partea imaginară este în întregime zero. În comparație, semnalele polare conțin discontinuități abrupte și colțuri ascuțite. Aceasta deoarece magnitudinea trebuie să fie întotdeauna pozitivă, prin definiție. Ori de câte ori partea reală scade sub zero, magnitudinea rămâne pozitivă prin schimbarea fazei cu π (sau -π, care este același lucru). Deși aceasta nu este o problemă pentru matematică, curbele neregulate pot fi dificil de interpretat.

Figura 8-13 Exemplu de semnale în forma dreptunghiulară și polară.

Deoarece amplitudinea trebuie să fie întotdeauna pozitivă (prin definiție), amplitudinea și faza pot conține discontinuități abrupte și colțuri ascuțite. Figura (d) prezintă și altă pacoste: zgomotul aleatoriu poate provoca oscilații rapide ale fazei între -π și π.

O soluție este aceea de a permite magnitudinii să aibă valori negative. În exemplul din figura 8-13, aceasta ar face ca magnitudinea să pară la fel cu partea reală, în timp ce faza ar fi în întregime zero. Nu este nimic în neregulă cu acest lucru dacă vă ajută înțelegerea. Trebuie doar să aveți grijă să nu apelați un semnal cu "magnitudinea" valori negative, deoarece acest lucru încalcă definiția sa formală. În această lucrare folosim cuvintele șmechere: magnitudinea neînfășurată pentru a indica o "magnitudine" care este permisă să aibă valori negative.

Necazul 7: Vârfuri între π și -π

Deoarece π și -π reprezintă exact aceeași defazare, zgomotul de rotunjire poate cauza puncte adiacente în fază pentru a comuta rapid între cele două valori. Așa cum se arată în (d), aceasta poate produce pauze și vârfuri ascuțite într-o curbă altfel netedă. Nu te lăsa păcălit, faza nu este cu adevărat discontinuă.