1_feladat.html
notebookban.markdown
cellájában!markdown
cellákkal magyarázd hogy éppen mit csinál az adott kódrészlet!A mintapéldák között láttunk Felix Baumgartner ugrásával kapcsolatban több példát is. Határozzuk meg $g$ és $\alpha$ értékét a $v(t)$ függvény elejéhez vett lineáris, illetve a $t=210\dots260$ intervallumban illesztett konstans függvényekből! Itt is készítsünk szépen formázott ábrát! A szükséges adatok a ../data/v_vs_t
file-ban találhatóak. A file első oszlopa az esés ideje s-ban, a második oszlop a sebesség km/h-ban.
Egy egyenletesen $g$-vel gyorsuló test sebessége az idő függvényében az egyszerű $$ v(t)=gt $$ kifejezés szerint változik.
Az $\alpha$ közegellenállási együttható pedig a $$ \alpha=\frac{mg}{v^2} $$ kifejezésből kapható meg, ahol a $v$ sebesség a $v(t)$ függvény $t=210\dots260$ időintervallumban vett konstans illesztéséből adódó érték.
Az ../data/ebola.txt
file tartalmazza a legutóbbi ebolajárvány terjedési idősorát országokra lebontva.
Illesszünk az összes bekövetkezett haláleset számára egy exponenciális függvényalakot! $$f(t,A,\beta)=A\mathrm{e}^{\beta t}$$
Becsüljük meg, ha nem tett volna az ENSZ semmit, akkor mikor pusztult volna ki az emberiség!
A ../data/pupos
file tartalmaz egy zajos adatsort.
Illesszük erre az adatsorra két Gauss-görbe összegét! $$ f_{2G}(x)=A_1 \mathrm{e}^{-(x-e_1)^2/s_1^2}+A_2 \mathrm{e}^{-(x-e_2)^2/s_2^2} $$
Illesszük erre az adatsorra két Lorentz-görbe összegét is! $$ f_{2L}(x)=\frac{B_1}{w_1^2+(x-p_1)^2}+\frac{B_2}{w_2^2+(x-p_2)^2} $$
Ábrázoljuk az eredeti adatsort, illetve mind a két esetben ábrázoljuk az illesztés eredményét is! Ha az illesztés során esetleg problémákba ütközünk, akkor próbálkozzunk az illesztési paraméterek kezdeti értékének becslésével!
Vizsgáljuk meg a ../data/zenebona
nevű file-ban található zajos adatsor Fourier-spektrumát. Határozzuk meg azokat a pozitív frekvenciákat, melyek dominánsan szerepelnek ! Az file két oszlopot tartalmaz: az első oszlop az idő, a második pedig a jel.
A ../data/black_hole.npy
binárisan tárolt file-ban a LIGO detektor legfrissebb mérési adatai találhatóak. Az adatsort a detektor 44100 Hz-es mintavételezési frekvenciával vette fel.
Az ifft
fügvény segítségével kaphatjuk meg egy függvény inverz Fourier transzformáltját. Alkalmazva ezt a függvényt, szűrjük ki a ../data/zenebona
fileban található hangmintából a 20Hz-nél magasabb frekvenciájú komponenseket!
Vizsgáljuk meg az ../data/arapaly
fileban található adatokat, melyek egy idilli kis tengerparti angol falu, Heysham, atomerőművének tengerszintmérő berendezésének a méréseit tartalmazza. Az adatsor két oszlopból áll: az első oszlop az idő napban mérve, a második oszlop az aktuális tengerszint méterben.
Generáljunk egy 20s hosszú 2500 Hz mintavételezésű jelet mely:
Készítsük el a jel spektrogramját és ábrázoljuk a két modulációs jelet is!
Mit történik 12s környékén a frekvencia modulált jellel? Diszkutáljuk a jelentséget!
Felhasználva Felix Baumgartner ugrásának adatait, határozzuk meg az atmoszféra sűrűség-magasság profilját! Tételezzük fel, hogy a légellenállás a sebesség négyzetével arányos!
Feladatunkban szeretnénk meghatározni a Hubble-konstans értékét ("az Univezum tágulásának ütemét") az SDSS megfigyelésekől (Sloan Digital Sky Survey).
Tegyük fel, hogy a megfigyelhető Világegyetemben minden időpillanatban megegyező arányban voltak fényes és halvány galaxisok, melyeknek abszolút értelemben vett fényessége az időben nem is változott. Ha ezt elfogadjuk, akkor a távolságtörvény segítségével megbecsülhető egy ismert abszolút fényességű galaxis távolsága. Másképp fogalmazva, ha megadjuk az adott "típusú" galaxisokra jellemző abszolút fényességeket, kiszámolható a távolságuk a megfigyelt magnitúdó fényességükből a következő formulával:
$$ m_{megfigyelt} - M_{abszolút} = 2,5 \cdot (d[pc]/10)^2 $$, ahol d
a távolság "parszek"-ben.
Az SDSS J020953.99-052818.1
nevű galaxis látszó megnitúdója 22,15 mag, és a távolsága 1013 Mpc (Megaparszek, azaz 1 millió parszek), mely tekinthető sztenderd gyertyának. Forrás: itt
Első feladatként adjuk meg mekkora abszólút fényességűek ezek az etalonnak tekinthető óriásgalaxisok.
Azt is tudjuk, hogy a galaxisok mozognak a Tejútrendszerhez képest, így a kibocsájtott fényük vöröseltolódást szenved el mire eljut hozzánk. A megfigyelt vöröseltolódásból megmondható a galaxis hozzánk viszonyított sebessége:
$$ z \approx \frac{v}{c} $$, ahol z
a vöröseltolódás mértéke, v
a galaxis hozzánk viszonyított sebessége, és c
a fénysebesség.
Az itt elérhető hubble.csv
fájlban találhatóak az előbb bemutatott adatok:
Második lépésben ábrázold a korrigált (dered) látszó magnitúdó függvényében a vöröseltolódást!
Majd készíts vöröseltolódás-távolság ($distance=log10(1+z)$) szerint 200 bint a galaxisokra (melyek 0.2-nél kisebb z-vel rendelkeznek). A binek száma csak első körben legyen 200, mivel ügyeljünk arra, hogy minimum 50 galaxis kerüljön a binekbe. Azaz amelyik bin nem tartalmaz 50 galaxist, azt a bint és galaxisait hagyjuk ki a további elemzésből.
Miután megvannak a binek, minden binből vegyük ki a legkisebb magnitúdót mutató galaxisokat (ezek a legfényesebbek fizikailag). Ezek lesznek a sztenderd gyertyák. Ábrázoljuk szintén magnitúdó és vöröseltolódással ábárán ezeket a galaxisokat. Mit látunk? Rövid válaszodat markdown
cellában fejtsd ki!
A következő, hogy az első lépésben meghatározott abszolút fényesség segítségével kiszámoljuk az összes imént megtalált fényes galaxis távolságát. Illetve számoljuk ki a sebességüket is a fent bemutatott módon a vöröseltolódásokból ($ z \approx \frac{v}{c} $). Ábrázoljuk ismét az eredményt!
A kapott adatokra illesszünk egyenest $f(x)=a \cdot x + b$ alakban! A kapott egyenes meredeksége adja meg a Hubble-állandó értékét.
Röviden értelmezzük a kapott eredményt! Mennyire egyezik az irodalmi adatokkal?
Egy kis további segítség:
Megj.: Az adatfájl beolvasása során -999
jelőli a hibás rekordokat.
Segítségként megadjuk az adatfájl beolvasását és beállítjuk a megfelelő elemzési tartományokat.
data=loadtxt("hubble.csv", delimiter=',', skiprows=1)
z=data[(data[:,1]>-999) & (data[:,1] < 20) &(data[:,1] >10) & (data[:,4]>0.) &
(data[:,4]<0.1) & (data[:,3]>0.) & (data[:,3]<0.05)][:,0]
mag=data[(data[:,1]>-999) & (data[:,1] < 20) &(data[:,1] >10) & (data[:,4]>0.) &
(data[:,4]<0.1) & (data[:,3]>0.) & (data[:,3]<0.05)][:,1]
dered=data[(data[:,1]>-999) & (data[:,1] < 20) &(data[:,1] >10) & (data[:,4]>0.) &
(data[:,4]<0.1) & (data[:,3]>0.) & (data[:,3]<0.05)][:,2]