<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.if.pw.edu.pl/~majanik/wiki/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.if.pw.edu.pl/~majanik/wiki/index.php?action=history&amp;feed=atom&amp;title=KADD_laboratorium_11</id>
		<title>KADD laboratorium 11 - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.if.pw.edu.pl/~majanik/wiki/index.php?action=history&amp;feed=atom&amp;title=KADD_laboratorium_11"/>
		<link rel="alternate" type="text/html" href="http://www.if.pw.edu.pl/~majanik/wiki/index.php?title=KADD_laboratorium_11&amp;action=history"/>
		<updated>2026-04-06T15:12:28Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.16.5</generator>

	<entry>
		<id>http://www.if.pw.edu.pl/~majanik/wiki/index.php?title=KADD_laboratorium_11&amp;diff=140&amp;oldid=prev</id>
		<title>Majanik: Created page with &quot;== Zadanie == '''Metoda najmniejszych kwadratów''' (5 pkt.)  Korzystając z metody najmniejszych kwadratów, dopasować do otrzymanych danych wielomiany stopnia &lt;code&gt;n=0..5&lt;/co...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.if.pw.edu.pl/~majanik/wiki/index.php?title=KADD_laboratorium_11&amp;diff=140&amp;oldid=prev"/>
				<updated>2012-05-16T09:28:00Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Zadanie == &amp;#39;&amp;#39;&amp;#39;Metoda najmniejszych kwadratów&amp;#39;&amp;#39;&amp;#39; (5 pkt.)  Korzystając z metody najmniejszych kwadratów, dopasować do otrzymanych danych wielomiany stopnia &amp;lt;code&amp;gt;n=0..5&amp;lt;/co...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Zadanie ==&lt;br /&gt;
'''Metoda najmniejszych kwadratów''' (5 pkt.)&lt;br /&gt;
&lt;br /&gt;
Korzystając z metody najmniejszych kwadratów, dopasować do otrzymanych danych wielomiany stopnia &amp;lt;code&amp;gt;n=0..5&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* Proszę wczytać dane z [http://hirg.if.pw.edu.pl/~mszymanski/kadd/dane_mnk.dat pliku]. Pochodzą one z eksperymentu zderzeń sprężystych ujemnie naładowanych mezonów K z protonami, przy ustalonej energii mezonu K. W pierwszej kolumnie znajdują się wartości cosinusa kąta rozpraszania w układzie środka masy, a w drugiej kolumnie odpowiadające im liczby zderzeń. Jako błędy pomiarów należy przyjąć pierwiastek kwadratowy z liczby obserwacji. Jeżeli otrzymany rozkład  ma postać wielomianu, to wyznaczenie jego stopnia umożliwia wyznaczenie spinowych liczb kwantowych występujących stanów pośrednich (&amp;quot;Analiza danych&amp;quot;, S.Brandt, Przykład 9.2.).&lt;br /&gt;
&lt;br /&gt;
* Proszę zaimplementować funkcję realizującą procedurę dopasowania metodą najmniejszych kwadratów. W tym celu należy wykorzystać wzory (ich wyprowadzenie znajduje się w [http://if.pw.edu.pl/~kisiel/kadd/Wyklad11.pdf wykładzie 11] oraz w [http://www.if.pw.edu.pl/~majanik/files/wiel.ps instrukcji]):&lt;br /&gt;
&lt;br /&gt;
[[File:wzor1.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:wzor2.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:wzor3.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:wzor4.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:wzor567.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:wzor89.png]]&lt;br /&gt;
&lt;br /&gt;
''Komentarz'': szukamy minimum funkcji M (odpowiednik statystyki chi-kwadrat), wartości &amp;lt;code&amp;gt;t_{j}&amp;lt;/code&amp;gt; to cosinusy kąta rozproszenia (pierwsza kolumna pliku), wartości &amp;lt;code&amp;gt;y_{j}&amp;lt;/code&amp;gt; to liczby obserwacji (druga kolumna). Estymatory &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; to poszukiwane współczynniki wielomianu.&lt;br /&gt;
&lt;br /&gt;
Przykładowy nagłówek funkcji:&lt;br /&gt;
 // Funkcja zwraca wartosc funkcji M&lt;br /&gt;
 // parametry:&lt;br /&gt;
 //  st - stopien dopasowanego wielomianu&lt;br /&gt;
 //  n - liczba pomiarow&lt;br /&gt;
 //  tj - tablica cosinusow kata rozproszenia&lt;br /&gt;
 //  yj - wyniki pomiarow&lt;br /&gt;
 //  sigmaj - bledy pomiarow&lt;br /&gt;
 //  wsp - tablica do ktorej nalezy wpisac wartosci wyznaczonych wspolczynnikow ([[File:wzor10.png]])&lt;br /&gt;
 //  bswp - tablica do ktorej nalezy wpisac bledy wyznaczonych wspolczynnikow (pierwiastki kwadratowe z elementów diagonalnych macierzy  [[File:wzor11.png]])&lt;br /&gt;
 //  wsp_pop - tablica do ktorej nalezy wpisac wartosci wspolczynnikow poprawionych (macierz eta)&lt;br /&gt;
 double dopasuj (int st, int n, double *tj, double *yj, double *sigmaj, double *wsp, double *bwsp, double *wsp_pop);&lt;br /&gt;
&lt;br /&gt;
Do zaimplementowania powyższych wzorów wygodnie jest skorzystać z klasy [http://www.slac.stanford.edu/comp/unix/package/cernroot/30106/TMatrixD.html TMatrixD]. Przykłady jej użycia:&lt;br /&gt;
&lt;br /&gt;
 // utworzenie macierzy o wymiarach n x m&lt;br /&gt;
 TMatrixD *macierzA = new TMatrixD(n,m);&lt;br /&gt;
&lt;br /&gt;
 // dostep do elementu o indeksach i,j macierzy macierzA, np.:&lt;br /&gt;
 (*macierzA)(i,j) = 1;&lt;br /&gt;
&lt;br /&gt;
 // mnozenie macierzy: macierzA = macierzB macierzC&lt;br /&gt;
 TMatrixD *macierzA = new TMatrixD(*macierzB, TMatrix::kMult, *macierzC);&lt;br /&gt;
&lt;br /&gt;
 // transponowanie macierzy&lt;br /&gt;
 TMatrixD *macierzAt = new TMatrixD(TMatrix::kTransposed,*macierzA);&lt;br /&gt;
&lt;br /&gt;
 // odwracanie macierzy&lt;br /&gt;
 macierz-&amp;gt;Invert();&lt;br /&gt;
&lt;br /&gt;
* Proszę zinterpretować otrzymane dopasowania przeprowadzając test chi-kwadrat (korzystając z wyznaczonej wartości funkcji M). Należy określić stopień wielomianu, dla którego dopasowanie jest najlepsze oraz wyznaczyć najmniejszy stopień wielomianu, którego nie możemy odrzucić. Proszę wypisać wartości wyznaczonych współczynników wielomianu.&lt;br /&gt;
&lt;br /&gt;
== Wynik ==&lt;br /&gt;
&lt;br /&gt;
[[File:mnk.png]]&lt;br /&gt;
&lt;br /&gt;
 Output:&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 0&lt;br /&gt;
 M = 833.548&lt;br /&gt;
 wsp[0] = 57.8452 +- 2.4051&lt;br /&gt;
 Liczba stopni swobody=9&lt;br /&gt;
 Wartosc krytyczna=21.666&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 0: odrzucamy&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 1&lt;br /&gt;
 M = 585.449&lt;br /&gt;
 wsp[0] = 82.6551 +- 2.87498&lt;br /&gt;
 wsp[1] = 99.0998 +- 6.29159&lt;br /&gt;
 Liczba stopni swobody=8&lt;br /&gt;
 Wartosc krytyczna=20.0902&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 1: odrzucamy&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 2&lt;br /&gt;
 M = 36.4096&lt;br /&gt;
 wsp[0] = 47.267 +- 3.24753&lt;br /&gt;
 wsp[1] = 185.955 +- 7.30235&lt;br /&gt;
 wsp[2] = 273.612 +- 11.6771&lt;br /&gt;
 Liczba stopni swobody=7&lt;br /&gt;
 Wartosc krytyczna=18.4753&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 2: odrzucamy&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 3&lt;br /&gt;
 M = 2.84989&lt;br /&gt;
 wsp[0] = 37.949 +- 3.62403&lt;br /&gt;
 wsp[1] = 126.546 +- 12.5894&lt;br /&gt;
 wsp[2] = 312.018 +- 13.4278&lt;br /&gt;
 wsp[3] = 137.585 +- 23.7499&lt;br /&gt;
 Liczba stopni swobody=6&lt;br /&gt;
 Wartosc krytyczna=16.8119&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 3: akceptujemy&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 4&lt;br /&gt;
 M = 1.68602&lt;br /&gt;
 wsp[0] = 39.6179 +- 3.94036&lt;br /&gt;
 wsp[1] = 119.102 +- 14.3563&lt;br /&gt;
 wsp[2] = 276.49 +- 35.5643&lt;br /&gt;
 wsp[3] = 151.91 +- 27.2096&lt;br /&gt;
 wsp[4] = 52.5999 +- 48.7566&lt;br /&gt;
 Liczba stopni swobody=5&lt;br /&gt;
 Wartosc krytyczna=15.0863&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 4: akceptujemy&lt;br /&gt;
&lt;br /&gt;
 Dopasowanie wielomianem stopnia 5&lt;br /&gt;
 M = 1.66265&lt;br /&gt;
 wsp[0] = 39.8786 +- 4.29351&lt;br /&gt;
 wsp[1] = 121.384 +- 20.7054&lt;br /&gt;
 wsp[2] = 273.188 +- 41.6103&lt;br /&gt;
 wsp[3] = 136.571 +- 103.954&lt;br /&gt;
 wsp[4] = 56.8995 +- 56.2858&lt;br /&gt;
 wsp[5] = 16.7294 +- 109.424&lt;br /&gt;
 Liczba stopni swobody=4&lt;br /&gt;
 Wartosc krytyczna=13.2767&lt;br /&gt;
 Poziom istotnosci=0.01&lt;br /&gt;
 Stopien 5: akceptujemy&lt;/div&gt;</summary>
		<author><name>Majanik</name></author>	</entry>

	</feed>