fit krivky
Daniel Valuch
daniel.valuch@orange.fr
Pondělí Srpen 6 09:02:13 CEST 2007
Vedel som ze nesklames :-)
Clovek sa uci cely zivot :-) Cely problem ktory riesim je
charakterizacia AD prevodnika s IQ demodulatorom z nasamplovanych dat.
Inymi slovami vykreslit z nameranych dat krivku a zistit ako velmi to
nie je idealna kruznica.
kedze kruznica nie je analyticka (tusim sa to tak vola) funkcia, t.j.
pre jednu hodnotu x ma viacero hodnot y chcem urobit fit jej
komponentov. T.j. mam dve ortogonalne sinusovky nesuce kanal I a kanal Q.
Namerane data maju jednosmerny offset, chybu v amplitude a chybu vo
faze. Toto v konecnom dosledku z kruznice urobi pootocenu splacatewnu
elipsu.
Cez namerane data chcem teda prelozit sinusovku a pomocou metody
najmensich stvorcov zistit jej parametre (amplituda, offset, faza).
Frekvenciu samozrejme poznam. To je linearna regresia?
Pozeral som si priklady ako sa pocita fit pomocou metody najmensich
stvorcov a v principe tam nevidim problem. Urobi sa akurat viac
parcialnych derivacii (lebo je viac premennych) a malo by to vyjst. mam
pravdu alebo som naivny? :-)
Vcera som nasiel tento clanok
http://dvaluch.web.cern.ch/dvaluch/temp/adc/0034_2.pdf ktory sa zaobera
niecim podobnym. Matlab velmi neovladam tak som si len tak narychlo na
par bodoch skusil tu metodu implementovat v exceli a vyzera ze to
funguje http://dvaluch.web.cern.ch/dvaluch/temp/adc/sinfit.xls
Iteracia sa tam robi rucne :-) ale inak to funguje.
Tak sa pozrem ktore z nasich softverov to vedia spravit rovno a ked nie
tak sa pustim do implementacie v matlabe.
Co si o tom myslis?
b.
Marek Peca wrote:
>> viete niekto ako sa robi fit nejakej vseobecnej funkcie? Linearna
>> funkcia je lahka, cisto teoreticky by to malo fungovat aj s inou
>> funkciou. Chcel by som prelozit moje namerane data sinusovkou, robil to
>> uz niekto?
>
> Ted koukam, ze jsem mozna uplne nepochopil zadani. Jde Ti o
> _nelinearni_ regresi, tzn. nelinearni v parametrech, nebo o regresi
> nejakou funkci (napr. sinusovkou), ktera je ale v parametrech
> linearni?
>
> Pokud a), pouzij nelinearni fitovani, napr. gnuplot a fci fit.
>
> Pokud b), pripad je trivialni (aspon pro kriterium ve tvaru
> nejmensich ctvercu), resi se obycejna tzv. normalni soustava rovnic,
> je to temer stejne, jako prokladat primkou nebo trebas i zcela
> obecnou tabulkove danou funkci. Hledej linear regression, v Matlabu
> help lrdivide (myslim, je to "\"). Pripadne nejakou knizku o
> matematice.
>
> Pozn.: pokud menis napr. jen fazi a amplitudu sinusovky, jedna se o
> linearni regresi. Pokud chces menit frekvenci, je to pak uz
> nelinearni. Mimochodem, ta linearni regrese sinusovky je tak nejak
> soucasti DFT ;-). A diky ortogonalite sinusovek ruznych frekvenci
> staci nafitovat kazdou z nich zvlast.
>
>
> MP
Další informace o konferenci Hw-list