Pienimmän Neliösumman Sovitus (PNS)

Samankaltaiset tiedostot
Pienimmän Neliösumman Sovitus (PNS)

Havaitsevan tähtitieteen peruskurssi I. Datan käsittely. Jyri Lehtinen. kevät Helsingin yliopisto, Fysiikan laitos

linux: Prosessit kill PID lopettaa prosessin PID, jos siihen on oikeudet Ctrl + c lopettaa aktiivisen prosessin L7: linux

linux: koneelta toiselle

linux: Prosessit kill PID lopettaa prosessin PID, jos siihen on oikeudet Ctrl + c lopettaa aktiivisen prosessin L7: linux

linux linux: käyttäjän oikeudet + lisää ja - poistaa oikeuksia

L9: Rayleigh testi. Laskuharjoitus

linux: arkistointi jjj

L9: Rayleigh testi. Laskuharjoitus

Sovellettu todennäköisyyslaskenta B

linux linux: käyttäjän oikeudet + lisää ja - poistaa oikeuksia

Johdatus regressioanalyysiin. Heliövaara 1

Sovellettu todennäköisyyslaskenta B

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

ABHELSINKI UNIVERSITY OF TECHNOLOGY

Havaitsevan tähtitieteen peruskurssi I

linux: Ympäristömuuttujat

Regressioanalyysi. Kuusinen/Heliövaara 1

y = 3x2 y 2 + sin(2x). x = ex y + e y2 y = ex y + 2xye y2

Jos havaitaan päivän ylin lämpötila, mittaustuloksissa voi esiintyä seuraavantyyppisiä virheitä:

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 10: Stokesin lause

Todennäköisyyden ominaisuuksia

Harjoitus 3: Regressiomallit (Matlab)

Mat Tilastollisen analyysin perusteet, kevät 2007

Regressioanalyysi. Vilkkumaa / Kuusinen 1

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Yhteenveto, osa I

Matematiikka B3 - Avoin yliopisto

Numeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35

Matemaattinen Analyysi

x n e x dx = n( e x ) nx n 1 ( e x ) = x n e x + ni n 1 x 4 e x dx = x 4 e x +4( x 3 e x +3( x 2 e x +2( xe x e x ))) = e x

031021P Tilastomatematiikka (5 op) viikko 6

Harjoitus 9: Excel - Tilastollinen analyysi

Matematiikan perusteet taloustieteilijöille II Harjoituksia kevät ja B = Olkoon A = a) A + B b) AB c) BA d) A 2 e) A T f) A T B g) 3A

Dynaamiset regressiomallit

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

Kompleksiluvun logaritmi: Jos nyt z = re iθ = re iθ e in2π, missä n Z, niin saadaan. ja siihen vaikuttava

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e) A =

linux: Ympäristömuuttujat

MS-C1340 Lineaarialgebra ja

Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Yhden selittäjän lineaarinen regressiomalli (jatkoa) Ensi viikolla ei pidetä luentoa eikä harjoituksia. Heliövaara 1

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e)

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U

Harjoitus 3: Regressiomallit (Matlab)

Dynaamiset regressiomallit

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

031021P Tilastomatematiikka (5 op) viikko 6

6. Toisen ja korkeamman kertaluvun lineaariset

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

BM20A0300, Matematiikka KoTiB1

Vektoriarvoiset funktiot Vektoriarvoisen funktion jatkuvuus ja derivoituvuus

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

Virhearviointi. Fysiikassa on tärkeää tietää tulosten tarkkuus.

Insinöörimatematiikka D

805324A (805679S) Aikasarja-analyysi Harjoitus 6 (2016)

Kohdeyleisö: toisen vuoden teekkari

Differentiaaliyhtälöryhmä

linux: komennoista linux linux

Pienimmän neliösumman menetelmä

Kuvaajien piirtäminen OriginPro9-ohjelmalla

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 2: Usean muuttujan funktiot

Harha mallin arvioinnissa

Numeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33

1 Rajoittamaton optimointi

MS-A0207 Differentiaali- ja integraalilaskenta 2 (CHEM) Luento 2: Usean muuttujan funktiot

Tilastollisen analyysin perusteet Luento 7: Lineaarinen regressio

y (0) = 0 y h (x) = C 1 e 2x +C 2 e x e10x e 3 e8x dx + e x 1 3 e9x dx = e 2x 1 3 e8x 1 8 = 1 24 e10x 1 27 e10x = e 10x e10x

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Tentti ja välikokeiden uusinta

MS-A0502 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

sin(x2 + y 2 ) x 2 + y 2

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44

Lineaarinen toisen kertaluvun yhtälö

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 3: Osittaisderivaatta

Differentiaali- ja integraalilaskenta 1 Ratkaisut 5. viikolle /

Insinöörimatematiikka D

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python

MS-A010{3,4,5} (ELEC*, ENG*) Differentiaali- ja integraalilaskenta 1 Luento 11: Lineaarinen differentiaaliyhtälö

Numeeriset menetelmät

linux: komennoista linux linux

Johdatus materiaalimalleihin

BM20A0900, Matematiikka KoTiB3

Aalto-yliopiston perustieteiden korkeakoulu Matematiikan ja systeemianalyysin laitos

Ratkaise tehtävä 1 ilman teknisiä apuvälineitä! 1. a) Yhdistä oikea funktio oikeaan kuvaajaan. (2p)

Mallien avulla yritetään kuvata syy-seuraussuhteita. Perusmallituksessa (tunnetut) syyt selittävät mallitettavia seurauksia

= 9 = 3 2 = 2( ) = = 2

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Tfy Fysiikka IIB Mallivastaukset

b) Määritä/Laske (ei tarvitse tehdä määritelmän kautta). (2p)

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

B-OSA. 1. Valitse oikea vaihtoehto. Vaihtoehdoista vain yksi on oikea.

Korrelaatiokertoinen määrittely 165

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

Tieteellinen laskenta 2 Törmäykset

Numeeriset menetelmät

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 8: Divergenssi ja roottori. Gaussin divergenssilause.

Matemaattisten menetelmien hallinnan tason testi.

Transkriptio:

Pienimmän Neliösumman Sovitus (PNS) n = Havaintojen määrä x i = Havaintojen ajat/paikat/... (i = 1,..., n) y i = y(x i) = Havaintojen arvot (i = 1,..., n) σ i = Havaintojen tarkkuus (i = 1,..., n) w i = σ 2 i = Havaintojen painot (i = 1,..., n) Malli havainnoille ȳ ± σ on g( β) = g(x, β) β = [β1, β 2,..., β Q] = Mallin vapaat parametrit, joita on Q kappaletta ɛ i = y i g(x i, β) = Residuaalit = Havainnot miinus malli PNS etsii parhaat β arvot β 1,...β Q, jotka minimoivat χ 2 ( β) n n [ ] 2 = w iɛ 2 ɛi n [ yi g(t i, i = = β) ] 2. σ i=1 i=1 i σ i=1 i Summattu residuaalit jaettuina virheillään korotettuna toiseen potenssiin. Siitä nimi PNS. Hyvässä mallissa χ 2 n.miksi? Hyvässä mallissa n > Q.Miksi?

Malleista kuva: @www.edupristine.com Malli ḡ on lineaarinen, jos sen kaikki osoittaisderivaatat g/ β i ovat riippumattomia kaikista vapaista parametreista β j. Jos näin ei ole, malli on epälineaarinen. Esimerkki: lineaarinen malli g( β, x) = M + A sin x + B cos x, β = [M, A, B] eli Q = 3 g/ M = 1, g/ A = sin x, g/ B = cos x Esimerkki: epälineearinen malli g = Ae Bx, β = [A, B] eli Q = 2 g/ A = e Bx, g/ B = ABe Bx Lineaarisilla malleilla PNS antaa β:lle yksikäsitteisen ratkaisun β 1. Epälineaarisilla malleilla β:n ratkaisu β 1 riippuu siitä, mikä annetaan (etsitään tavalla tai toisella) ratkaisun alkuarvoksi β 0.

python python: PNS Data: OPpns1.dat (n = 3) 1 2.42 2 5.47 3 7.24 # Kommenttirivi : Python ohjelmani Ppns1. py # Pienimman neliosumman s o v i t u s import os ; os. system ( clear ) # Tyhjennetaan import numpy as np ; import pylab as p l # Importoidaan import scipy ; from scipy import optimize # Miksi outoa? def r e s i d u a l s ( beta, y, x ) : epsilon= y (beta [ 0 ] + beta [1] x ) return e p s i l o n f i l e = OPpns1. dat #Data x=np. loadtxt ( file, skiprows=0, usecols = (0, ) ) #Data y=np. loadtxt ( file, skiprows=0, usecols = (1, ) ) #Data beta0=np. ones (2) ; print ( beta0=, beta0 ) # Alkuarvo tu=optimize. l e a s t s q ( r e s i d u a l s, beta0, args =( y, x ) ) beta1=tu [ 0 ] ; print ( beta1=, beta1 ) # Loppuarvo p l. xlim ( [ 0, 4 ] ) ; p l. y lim ( [ 0, 9 ] ) # xy r a j a t p l. p l o t ( x, y, or ) # Data p l o t xx =0.5+np. arange (21)/20. 3 # M a l l i n xx g =beta1 [0]+ beta1 [1] xx ; pl. plot ( xx, g ) # Malli g ( xx ) p l. s a v e f i g ( Ppns1. jpg ) ; p l. show ( ) # Kuva&Nayta Tulostaa beta0= [ 1. 1.] beta1= [ 0.22333333 2.41 ] python: PNS x = [x 1, x 2, x 3 ] = x = Data ȳ = [y 1, y 2, y 3 ] = y = Data ḡ = g(x, β) = a + bx = g = Malli β = [a, b] = Vapaat parametrit ɛ = ȳ ḡ = epsilon = Residuaalit optimize.leastq tarvitsee aliohjelman residuals β 0 = beta0 = sovituksen alkuarvo β 1 = beta1 = sovituksen loppuarvo Lineaarinen loppuarvo beta1 ei riipu alkuarvosta beta0

python octave: PNS Data: OPpns1.dat (n = 3) 1 2.42 2 5.47 3 7.24 # Kommenttirivi : Octave ohjelmani Opns1.m # Pienimman neliosumman s o v i t u s clear ; clc # Poistetaan... Tyhjennetaan... function y=ffun (x, beta ) ; # y=beta (1)+ beta (2) x ; # Ilman " ; " tulostaa! endfunction ; # pkg load optim ; # Added s p r i ng 2017 filename= OPpns1. dat ; f i d =fopen ( filename, r ) ; # Data [ z ]= fscanf ( f i d, %g%g, [ 2, I n f ] ) ; # " x=z ( 1, : ) ; y=z ( 2, : ) ; # " beta0=[1 1 ] ; p r i n t f ( " beta0=%6.2f%6.2f \ n ", beta0 ) # Alkuarvo [ y f i t beta1 ] = l e a s q r ( x, y, beta0, " f f u n " ) ; # PNS p r i n t f ( " beta1=%6.2f%6.2f \ n ", beta1 ) # Loppuarvo axis ( [ 0, 4, 0, 9 ] ) ; # xy r a j a t hold on ; plot (x, y, or ) ; xx =0.5+((0:21)/20.) 3; # M a l l i n xx g =beta1 (1)+ beta1 (2) xx ; plot ( xx, g ) ; # M a l l i g ( xx ) hold o f f ; p r i n t ( Opns1. jpg, djpg ) # Kuva Tulostaa beta0= 1.00 1.00 beta1= 0.22 2.41 Sovitus ilman painoja. Paljon vaihtoehtoja www Lauri Varokaa Jetsu, Fysiikan mustaa laitos, Helsingin laatikkoa yliopisto octave: PNS x = [x 1, x 2, x 3 ] = x = Data ȳ = [y 1, y 2, y 3 ] = y = Data ḡ = g(x, β) = a + bx = g = Malli β = [a, b] = Vapaat parametrit ɛ = ȳ ḡ = epsilon = Residuaalit leasqr tarvitsee aliohjelman function tunnuksella ffun β 0 = beta0 = sovituksen alkuarvo β 1 = beta1 = sovituksen loppuarvo Lineaarinen loppuarvo beta1 ei riipu alkuarvosta beta0

python python: PNS Toinen näyttö: kotisivun Ppns2.py Loopin for i in range(4): sisällä Plotattavat käyrät yy ja gg xx = 0 xx 1,..., xx 101 2π = tiheä tasavälinen plottien argumentti yy = g(xx, β 1 ) sovitetty käyrä Kuvat: yy = punainen viiva gg = g(xx, β SIM ) simulointimallin käyrä Kuvat: gg = sininen viiva Varsinaiset plotit pl.axes([z1[i],z2[i],lev,kor]) = plottien paikat pl.xlim([x1,x2]) = x rajat pl.ylim([y1,y2])= y rajat python: PNS Loopin for i in range(4): sisällä pl.plot(x0,g0, ob ) = siniset ympyrät pl.plot(xx,gg, b ) = sin... jatkuva viiva pl.plot(x0,y0, or ) = punaiset ympyrät pl.plot(xx,yy, r ) = pun... jatkuva viiva txt1=... = formatoitu stringi pl.text(x1... = stringin tulostus kuvaan Loopin for i in range(4):jälkeen pl.savefig( Ppns2.jpg ) = kuvan tallennus jpg muodossa Vain n0=n[i], s0=s[i] ja plotin paikka pl.axes([z1[i],z2[i]... muuttuvat loopin sisällä Kuva Ppns2.jpg seuraavalla sivulla

python PNS kuva: Ppns2.jpg

octave octave: PNS Toinen näyttö: kotisivun Opns2.m Loopin for i=1:4 sisällä Plotattavat käyrät yy ja gg xx = 0 xx 1,..., xx 100 2π = tiheä tasavälinen plottien argumentti yy = g(xx, β 1 ) sovitetty käyrä Kuvat: yy = punainen viiva gg = g(xx, β SIM ) simulointimallin käyrä Kuvat: gg = sininen viiva Varsinaiset plotit subplot(8,8,[z1(i),z2(i)]) = plottien paikat axis([x1,x2,y1,y2]) = xy rajat set(gca, fontsize,5) = xy-akselien numeroiden koko octave: PNS Loopin for i=1:4 sisällä hold on ja hold off pari plot(x0,g0, ob, markersize,3) = siniset ympyrät plot(xx,gg, b ) = sin... jatkuva viiva plot(x0,y0, or, markersize,3) = punaiset ympyrät plot(xx,yy, r ) = pun... jatkuva viiva txt1=sprintf... = formatoitu stringi text(x1+... = stringin tulostus kuvaan Loopin for i=1:4 jälkeen print( Opns2.jpg, -djpg ) = kuvan tallennus pdf muodossa Vain n0=n(i), s0=s(i) ja plotin paikka subplot(8,8,[z1(i),z2(i)]) muuttuvat loopin sisällä

python & octave & PNS PNS kuva: Opns2.jpg Mitä opittiin? n = 10, σ = 0.1 Vähän tarkkaa dataa PNS tulos OK n = 10, σ = 1.0 Vähän epätarkkaa dataa PNS tulos sinne päin n = 50, σ = 1.0 Paljon epätarkkaa dataa PNS tulos OK n = 50, σ = 5.0 Paljon huonoa dataa PNS tulos sinne päin Sovita väärä malli tähän dataan (esim. suora) Musta laatikko

Epälineaarisista malleista PNS Epälineaariset mallit Jetsu & Pelt (1999) A&AS 139, 629 TSPA = Three Stage Period Analysis Samalle datalle monta sopivaa mallia Mikä niistä on oikea?

Sinikäyrän sovitus Sinikäyrän sovitus Harjoitustyö: Vaiheet frekvenssillä f best φ i = FRAC[(t i t 0 )f best ], missä t 0 = 0 ja FRAC[x] poistaa argumentin x kokonaislukuosan Esim: FRAC[98.76] = 0.76 Poistaa kokonaiset kierrokset Kaikki kierrokset päällekkäin Havainnot vaiheen funktiona oikealla Sovitetaan malli g(t, β) = M + A cos(2πφ i ) + B sin(2πφ i ), missä vapaat parametrit ovat β = [M, A, B]. Parhaan pienimmän neliösumman mallin M, A ja B arvot annetaan oikealla Sinikäyrän sovitus python ja octave eivät välttämättä anna täsmälleen samoja arvoja. Miksi? 7.76 M = 7.70, A= 0.04, B= -0.03 7.74 7.72 7.70 7.68 7.66 7.64 0.0 0.2 0.4 0.6 0.8 1.0

Malleista Malleista (Kuva: @tamino.wordpress.com) Epälineaarinen malli Malleista Mallien tulkinta on taidelaji g(t, β) = M + A cos(2πft) + B sin(2πft), missä β =[M, A, B, f ], koska esimerkiksi g/ A=cos(2πft) Sovituksen lopputulos β 1 riippuu vahvasti alkuoletuksesta β 0 Ratkaistaan paras f best tehospektrillä 2πf best = vakio Lineaarinen malli g(t, β) = M + A cos(2πf best t) + B sin(2πf best t), missä β =[M, A, B] β 0 ei vaikuta lopputulokseen β 1 = [M 1, A 1, B 1 ] Jetsu & Pelt (1999, A&AS 139, 629): Käytetään lopuksi epälineaarisen mallin alkuarvona β 0 = [M 1, A 1, B 1, f best ]

Malleista Malleista Yleisesti: g(t, β) = K k=0 B k cos(2πkft) + C k sin(2πkft), missä β = [B 0,.., B K, C 1,..., C K, f ] (Huom: C 0 tarpeeton) Tehospektri olettaa sinikäyrän oikeaksi malliksi (K = 1) Todellisuus K on tuntematon Samassa datassa saattaa vaihdella K = 0, 1, 2, 3,...? K = 0 Ei periodisuutta K = 1 1 huippu K = 2 1 tai 2 huippua K = 3 1, 2 tai 3 huippua Paras K arvo mallille voidaan myös ratkaista Esim: Lehtinen et al. (2011: A&A, 527, A136) 7.8 7.6 7.4 7.2 K = 0 0.0 0.2 0.4 0.6 0.8 1.0 14 K = 2 12 10 8 6 4 2 0.0 0.2 0.4 0.6 0.8 1.0 11 10 9 8 7 6 5 K = 1 4 0.0 0.2 0.4 0.6 0.8 1.0 14 12 10 8 6 4 2 K = 3 0 0.0 0.2 0.4 0.6 0.8 1.0

Malleista Signaali kohinan seasta (Kajatkari et al. 2015, A&A) Välillä periodisuutta, välillä ei