<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://efwiki.bozack.dk/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://efwiki.bozack.dk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ostfeldt</id>
		<title>Eksperimentel Fysik WIKI - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://efwiki.bozack.dk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ostfeldt"/>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=Special:Contributions/Ostfeldt"/>
		<updated>2026-06-14T20:37:28Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.18.1</generator>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=opgaver:Uge3</id>
		<title>opgaver:Uge3</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=opgaver:Uge3"/>
				<updated>2015-05-01T14:38:01Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I denne opgave skal I arbejde med fitning som forklaret i Barlow kapitel 6&amp;lt;!--Taylor kapitel 8--&amp;gt;. I skal her selv lave et datasæt, og lærer derfor også hvordan man genererer tilfældige tal i MATLAB. Opgave 2 og 3 er uafhængige, og kan laves i den rækkefølge I har lyst til.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opgave 1 - Fitning ==&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 1 - Lineær model ===&lt;br /&gt;
&lt;br /&gt;
Antag at I har en lineær model som i Barlow afsnit 6.2&amp;lt;!--Taylor afsnit 8.2--&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
:$y = A + B x .$&lt;br /&gt;
&lt;br /&gt;
Vælg passende værdier af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og lav en vektor &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; med målepunkter, f.eks. &amp;lt;code&amp;gt;A = 0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B = 1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x = -2:0.1:2&amp;lt;/code&amp;gt;. Lav nu en vektor med den &amp;quot;sande&amp;quot; &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; ud fra modellen. Vælg en usikkerhed for målingerne, og læg en normalfordelt støj til hver måling - brug MATLAB funktionen &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt;. Plot målingerne (med usikkerhederne) og den &amp;quot;sande&amp;quot; model i samme plot. &lt;br /&gt;
&lt;br /&gt;
Beregn lineær regression ud fra Barlow og find de estimerede værdier for &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og beregn den fittede modelværdi, &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt;. Plot &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt; oveni det forrige plot og se hvor godt fittet er. Beregn den reducerede $\chi^2$, givet ved&lt;br /&gt;
&lt;br /&gt;
:$\dfrac{\chi^2}{N-P} ,$&lt;br /&gt;
&lt;br /&gt;
hvor $N$ er antal datapunkter og $P$ er antal fit-parametre. &lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at udregne selve den teoretiske linie &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt;, ved at definere &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse. Definér derefter en &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du vil bruge som din usikkerhed. Så kan din $y$ udregnes som &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; plus en vektor der består af Gaussisk fordelte tal med spredning &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; og centrum nul.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at definere de to konstanter, din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse og den usikkerhed du gerne vil have på punkterne, her f.eks.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;A_model = 0;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_model = 1;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;sigma = 0.5;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;x = -2:0.1:2;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du udregne modellens &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;-værdi direkte ved&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model = A_model + B_model*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Du kan nu lave en model med støj på punkterne med spredning givet ved &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du definerede tidligere, ved at bruge &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt; funktionen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du plotte din model sammen med dine &amp;quot;målepunkter&amp;quot; (bemærk at for at få errorbars på er man nødt til at lave en vektor med samme længde som $x$ og $y$, som indeholder $\sigma$ for hver $y$-værdi - men da $\sigma$ er den samme for alle punkterne kan man bare bruge &amp;lt;code&amp;gt;ones()&amp;lt;/code&amp;gt; funktionen),&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig1.png|frame|Modellen vist som en linie, sammen med genererede data med støj.]]&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y_model)),'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;     'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En sådan figur er vist her til højre.&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig2.png|frame|Modellen og datapunkterne med støj, nu med en fit-linie (grøn).]]&lt;br /&gt;
Regressionsparametrene kan udregnes med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N = length(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sy = sum(y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sx = sum(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxx = sum(x.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxy = sum(x.*y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Delta = N*Sxx-Sx^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_fit = ( Sxx*Sy - Sx*Sxy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_fit = ( N*Sxy - Sx*Sy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og fit-linien er så fundet til at være&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne linie plottes oven på model-linien og punkterne med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og så får man figuren til højre. Den reducerede $\chi^2$ findes til sidst med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2 = sum((y-y_fit).^2 ./ (sigma*ones(size(y)).^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red = chi2/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
==== 1b - Andenordenskorrektion ====&lt;br /&gt;
&lt;br /&gt;
Lav ny en ny serie af datapunkter ud fra forskriften&lt;br /&gt;
&lt;br /&gt;
:$ y = A + B x + C x^2$&lt;br /&gt;
&lt;br /&gt;
Vælg &amp;lt;code&amp;gt;C = 0.3&amp;lt;/code&amp;gt;, for samme interval af x-værdier. Udregn nu det reducerede $\chi^2$ mellem det gamle fit og de nye data. Bliver det værre eller bedre?&lt;br /&gt;
&lt;br /&gt;
Lav nu et plot af residuals, Residuals er afvigelsen mellem data- og fitværdier for hvert målepunkt. Disse kan bruges til at opdage systematisk afvigelser, hvilket kan indikere at fitmodellen er utilstrækkelig.&lt;br /&gt;
&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Først laves en ny serie y-modelværdier:&lt;br /&gt;
:&amp;lt;code&amp;gt;C_model = 0.3;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model_ny = A_model + B_model*x + C_model*x.^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
Dernæst laves nye værdier med støj:&lt;br /&gt;
:&amp;lt;code&amp;gt;y_ny = y_model_ny + sigma_y.*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vi kan derefter plotte de nye værdier sammen med de gamle samt både den gamle og nye model samt fittet til de lineære data. Du kan evt. supplere med et lineært fit til de nye data.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y_ny,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.4],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.4])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model_ny,'k-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold off&amp;lt;/code&amp;gt;&lt;br /&gt;
Herefter udregnes det nye reducerede $\chi^2$-værdi.&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_ny    = sum((y_ny-y_fit).^2 ./ sigma_y.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red_ny = chi2_ny/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Til sidst plottes residuals.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y_ny-y_fit)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y-y_fit,'r','BarWidth',0.5)&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 2 - Gentagelse ===&lt;br /&gt;
Gentag dette &amp;quot;numeriske forsøg&amp;quot; et antal gange (f.eks. 100) og gem for hver gang fittets parametre. Brug &amp;lt;code&amp;gt;hist()&amp;lt;/code&amp;gt; til at finde fordelingen af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og reduceret $\chi^2$. Sammenlign med den estimerede usikkerhed på &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og undersøg evt. korrelationen mellem &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; (plot f.eks. &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;).&lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at bruge den kode du lavede til spørgsmål a, og lav så et loop uden om det hele. I slutningen af loopet skal du gemme &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din reducerede $\chi^2$ i et array - så du kan plotte alle værdierne bagefter. &lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Man kan genbruge al sin kode fra spørgsmål a til at lave sit loop. Definitionen af &amp;lt;code&amp;gt;A_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; får lov til at blive, og så skal man forberede sit loop med antal gange man vil køre det, og tre lister til at gemme de resultater man får,&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N_iter = 100;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Herefter starter man sit loop lige før udregningen af &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;, således at hvert loop laver en ny række punkter med anderledes støj. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;for i = 1:N_iter&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Udregningen af regressionsparametrene er helt som før. Til sidst skal man gemme sine resultater i sine arrays,&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;A_liste(i) = A_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;B_liste(i) = B_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;chi2_liste(i) = chi2red;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;end&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Disse arrays kan man nu se lidt på. F.eks. kan man lave histogrammer eller korrelationsplots med &amp;lt;code&amp;gt;hist&amp;lt;/code&amp;gt; eller &amp;lt;code&amp;gt;scatter&amp;lt;/code&amp;gt;.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 3 - Automatisk fitning i MATLAB ===&lt;br /&gt;
Prøv at anvende MATLABs fittefunktion &amp;lt;code&amp;gt;fit(x,y,'funktion')&amp;lt;/code&amp;gt; og sammenlign med jeres egen lineære regression.&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
[[File:uge3fig3.png|frame|Modellen og datapunkterne med støj, plottet med fit-linien (grøn).]]&lt;br /&gt;
Den automatiske fitning i MATLAB kan bruges med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;[res good] = fit(x',y','poly1')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
her er &amp;lt;code&amp;gt;poly1&amp;lt;/code&amp;gt; den indbyggede lineære funktion, men man kan også selv skrive sin funktion ind (se på MATLAB hjælp siden for &amp;lt;code&amp;gt;fit&amp;lt;/code&amp;gt;). Fittet kan nu plottes sammen med datapunkterne og model-linien med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y),'ro')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'b-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,res(x),'g-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne figur kan ses til højre.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Samlede løsninger ==&lt;br /&gt;
* Et samlet dokument med MATLAB kode til at løse alle opgaverne ovenfor kan hentes her: [[Media:opgaver_uge3_fits_ny.m|opgaver_uge3_fits_ny.m]]&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=File:Opgaver_uge3_fits_ny.m</id>
		<title>File:Opgaver uge3 fits ny.m</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=File:Opgaver_uge3_fits_ny.m"/>
				<updated>2015-05-01T14:37:32Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: Opgave 1b tilføjet.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Opgave 1b tilføjet.&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=opgaver:Uge3</id>
		<title>opgaver:Uge3</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=opgaver:Uge3"/>
				<updated>2015-05-01T14:36:23Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I denne opgave skal I arbejde med fitning som forklaret i Barlow kapitel 6&amp;lt;!--Taylor kapitel 8--&amp;gt;. I skal her selv lave et datasæt, og lærer derfor også hvordan man genererer tilfældige tal i MATLAB. Opgave 2 og 3 er uafhængige, og kan laves i den rækkefølge I har lyst til.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opgave 1 - Fitning ==&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 1 - Lineær model ===&lt;br /&gt;
&lt;br /&gt;
Antag at I har en lineær model som i Barlow afsnit 6.2&amp;lt;!--Taylor afsnit 8.2--&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
:$y = A + B x .$&lt;br /&gt;
&lt;br /&gt;
Vælg passende værdier af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og lav en vektor &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; med målepunkter, f.eks. &amp;lt;code&amp;gt;A = 0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B = 1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x = -2:0.1:2&amp;lt;/code&amp;gt;. Lav nu en vektor med den &amp;quot;sande&amp;quot; &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; ud fra modellen. Vælg en usikkerhed for målingerne, og læg en normalfordelt støj til hver måling - brug MATLAB funktionen &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt;. Plot målingerne (med usikkerhederne) og den &amp;quot;sande&amp;quot; model i samme plot. &lt;br /&gt;
&lt;br /&gt;
Beregn lineær regression ud fra Barlow og find de estimerede værdier for &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og beregn den fittede modelværdi, &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt;. Plot &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt; oveni det forrige plot og se hvor godt fittet er. Beregn den reducerede $\chi^2$, givet ved&lt;br /&gt;
&lt;br /&gt;
:$\dfrac{\chi^2}{N-P} ,$&lt;br /&gt;
&lt;br /&gt;
hvor $N$ er antal datapunkter og $P$ er antal fit-parametre. &lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at udregne selve den teoretiske linie &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt;, ved at definere &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse. Definér derefter en &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du vil bruge som din usikkerhed. Så kan din $y$ udregnes som &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; plus en vektor der består af Gaussisk fordelte tal med spredning &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; og centrum nul.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at definere de to konstanter, din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse og den usikkerhed du gerne vil have på punkterne, her f.eks.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;A_model = 0;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_model = 1;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;sigma = 0.5;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;x = -2:0.1:2;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du udregne modellens &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;-værdi direkte ved&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model = A_model + B_model*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Du kan nu lave en model med støj på punkterne med spredning givet ved &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du definerede tidligere, ved at bruge &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt; funktionen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du plotte din model sammen med dine &amp;quot;målepunkter&amp;quot; (bemærk at for at få errorbars på er man nødt til at lave en vektor med samme længde som $x$ og $y$, som indeholder $\sigma$ for hver $y$-værdi - men da $\sigma$ er den samme for alle punkterne kan man bare bruge &amp;lt;code&amp;gt;ones()&amp;lt;/code&amp;gt; funktionen),&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig1.png|frame|Modellen vist som en linie, sammen med genererede data med støj.]]&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y_model)),'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;     'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En sådan figur er vist her til højre.&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig2.png|frame|Modellen og datapunkterne med støj, nu med en fit-linie (grøn).]]&lt;br /&gt;
Regressionsparametrene kan udregnes med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N = length(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sy = sum(y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sx = sum(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxx = sum(x.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxy = sum(x.*y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Delta = N*Sxx-Sx^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_fit = ( Sxx*Sy - Sx*Sxy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_fit = ( N*Sxy - Sx*Sy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og fit-linien er så fundet til at være&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne linie plottes oven på model-linien og punkterne med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og så får man figuren til højre. Den reducerede $\chi^2$ findes til sidst med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2 = sum((y-y_fit).^2 ./ (sigma*ones(size(y)).^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red = chi2/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
==== 1b - Andenordenskorrektion ====&lt;br /&gt;
&lt;br /&gt;
Lav ny en ny serie af datapunkter ud fra forskriften&lt;br /&gt;
&lt;br /&gt;
:$ y = A + B x + C x^2$&lt;br /&gt;
&lt;br /&gt;
Vælg &amp;lt;code&amp;gt;C = 0.3&amp;lt;/code&amp;gt;, for samme interval af x-værdier. Udregn nu det reducerede $\chi^2$ mellem det gamle fit og de nye data. Bliver det værre eller bedre?&lt;br /&gt;
&lt;br /&gt;
Lav nu et plot af residuals, Residuals er afvigelsen mellem data- og fitværdier for hvert målepunkt. Disse kan bruges til at opdage systematisk afvigelser, hvilket kan indikere at fitmodellen er utilstrækkelig.&lt;br /&gt;
&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Først laves en ny serie y-modelværdier:&lt;br /&gt;
:&amp;lt;code&amp;gt;C_model = 0.3;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model_ny = A_model + B_model*x + C_model*x.^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
Dernæst laves nye værdier med støj:&lt;br /&gt;
:&amp;lt;code&amp;gt;y_ny = y_model_ny + sigma_y.*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vi kan derefter plotte de nye værdier sammen med de gamle samt både den gamle og nye model samt fittet til de lineære data. Du kan evt. supplere med et lineært fit til de nye data.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y_ny,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.4],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.4])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model_ny,'k-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold off&amp;lt;/code&amp;gt;&lt;br /&gt;
Herefter udregnes det nye reducerede $\chi^2$-værdi.&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_ny    = sum((y_ny-y_fit).^2 ./ sigma_y.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red_ny = chi2_ny/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Til sidst plottes residuals.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y_ny-y_fit)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y-y_fit,'r','BarWidth',0.5)&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 2 - Gentagelse ===&lt;br /&gt;
Gentag dette &amp;quot;numeriske forsøg&amp;quot; et antal gange (f.eks. 100) og gem for hver gang fittets parametre. Brug &amp;lt;code&amp;gt;hist()&amp;lt;/code&amp;gt; til at finde fordelingen af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og reduceret $\chi^2$. Sammenlign med den estimerede usikkerhed på &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og undersøg evt. korrelationen mellem &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; (plot f.eks. &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;).&lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at bruge den kode du lavede til spørgsmål a, og lav så et loop uden om det hele. I slutningen af loopet skal du gemme &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din reducerede $\chi^2$ i et array - så du kan plotte alle værdierne bagefter. &lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Man kan genbruge al sin kode fra spørgsmål a til at lave sit loop. Definitionen af &amp;lt;code&amp;gt;A_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; får lov til at blive, og så skal man forberede sit loop med antal gange man vil køre det, og tre lister til at gemme de resultater man får,&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N_iter = 100;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Herefter starter man sit loop lige før udregningen af &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;, således at hvert loop laver en ny række punkter med anderledes støj. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;for i = 1:N_iter&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Udregningen af regressionsparametrene er helt som før. Til sidst skal man gemme sine resultater i sine arrays,&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;A_liste(i) = A_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;B_liste(i) = B_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;chi2_liste(i) = chi2red;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;end&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Disse arrays kan man nu se lidt på. F.eks. kan man lave histogrammer eller korrelationsplots med &amp;lt;code&amp;gt;hist&amp;lt;/code&amp;gt; eller &amp;lt;code&amp;gt;scatter&amp;lt;/code&amp;gt;.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 3 - Automatisk fitning i MATLAB ===&lt;br /&gt;
Prøv at anvende MATLABs fittefunktion &amp;lt;code&amp;gt;fit(x,y,'funktion')&amp;lt;/code&amp;gt; og sammenlign med jeres egen lineære regression.&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
[[File:uge3fig3.png|frame|Modellen og datapunkterne med støj, plottet med fit-linien (grøn).]]&lt;br /&gt;
Den automatiske fitning i MATLAB kan bruges med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;[res good] = fit(x',y','poly1')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
her er &amp;lt;code&amp;gt;poly1&amp;lt;/code&amp;gt; den indbyggede lineære funktion, men man kan også selv skrive sin funktion ind (se på MATLAB hjælp siden for &amp;lt;code&amp;gt;fit&amp;lt;/code&amp;gt;). Fittet kan nu plottes sammen med datapunkterne og model-linien med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y),'ro')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'b-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,res(x),'g-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne figur kan ses til højre.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Samlede løsninger ==&lt;br /&gt;
* Et samlet dokument med MATLAB kode til at løse alle opgaverne ovenfor kan hentes her: [[Media:opgaver_uge3_fits.m|opgaver_uge3_fits.m]]&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=opgaver:Uge3</id>
		<title>opgaver:Uge3</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=opgaver:Uge3"/>
				<updated>2015-05-01T14:31:10Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: TIlføjet opgave 1b: Andenordensled, residuals.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I denne opgave skal I arbejde med fitning som forklaret i Barlow kapitel 6&amp;lt;!--Taylor kapitel 8--&amp;gt;. I skal her selv lave et datasæt, og lærer derfor også hvordan man genererer tilfældige tal i MATLAB. Opgave 2 og 3 er uafhængige, og kan laves i den rækkefølge I har lyst til.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Opgave 1 - Fitning ==&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 1 - Lineær model ===&lt;br /&gt;
&lt;br /&gt;
Antag at I har en lineær model som i Barlow afsnit 6.2&amp;lt;!--Taylor afsnit 8.2--&amp;gt;,&lt;br /&gt;
&lt;br /&gt;
:$y = A + B x .$&lt;br /&gt;
&lt;br /&gt;
Vælg passende værdier af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og lav en vektor &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; med målepunkter, f.eks. &amp;lt;code&amp;gt;A = 0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B = 1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x = -2:0.1:2&amp;lt;/code&amp;gt;. Lav nu en vektor med den &amp;quot;sande&amp;quot; &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; ud fra modellen. Vælg en usikkerhed for målingerne, og læg en normalfordelt støj til hver måling - brug MATLAB funktionen &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt;. Plot målingerne (med usikkerhederne) og den &amp;quot;sande&amp;quot; model i samme plot. &lt;br /&gt;
&lt;br /&gt;
Beregn lineær regression ud fra Barlow og find de estimerede værdier for &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og beregn den fittede modelværdi, &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt;. Plot &amp;lt;code&amp;gt;y_fit&amp;lt;/code&amp;gt; oveni det forrige plot og se hvor godt fittet er. Beregn den reducerede $\chi^2$, givet ved&lt;br /&gt;
&lt;br /&gt;
:$\dfrac{\chi^2}{N-P} ,$&lt;br /&gt;
&lt;br /&gt;
hvor $N$ er antal datapunkter og $P$ er antal fit-parametre. &lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at udregne selve den teoretiske linie &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt;, ved at definere &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse. Definér derefter en &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du vil bruge som din usikkerhed. Så kan din $y$ udregnes som &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; plus en vektor der består af Gaussisk fordelte tal med spredning &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; og centrum nul.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at definere de to konstanter, din &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;-akse og den usikkerhed du gerne vil have på punkterne, her f.eks.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;A_model = 0;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_model = 1;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;sigma = 0.5;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;x = -2:0.1:2;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du udregne modellens &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;-værdi direkte ved&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model = A_model + B_model*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Du kan nu lave en model med støj på punkterne med spredning givet ved &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt; du definerede tidligere, ved at bruge &amp;lt;code&amp;gt;randn()&amp;lt;/code&amp;gt; funktionen&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nu kan du plotte din model sammen med dine &amp;quot;målepunkter&amp;quot; (bemærk at for at få errorbars på er man nødt til at lave en vektor med samme længde som $x$ og $y$, som indeholder $\sigma$ for hver $y$-værdi - men da $\sigma$ er den samme for alle punkterne kan man bare bruge &amp;lt;code&amp;gt;ones()&amp;lt;/code&amp;gt; funktionen),&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig1.png|frame|Modellen vist som en linie, sammen med genererede data med støj.]]&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y_model)),'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;     'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En sådan figur er vist her til højre.&lt;br /&gt;
&lt;br /&gt;
[[File:uge3fig2.png|frame|Modellen og datapunkterne med støj, nu med en fit-linie (grøn).]]&lt;br /&gt;
Regressionsparametrene kan udregnes med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N = length(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sy = sum(y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sx = sum(x);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxx = sum(x.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Sxy = sum(x.*y);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;Delta = N*Sxx-Sx^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_fit = ( Sxx*Sy - Sx*Sxy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_fit = ( N*Sxy - Sx*Sy )/Delta;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og fit-linien er så fundet til at være&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne linie plottes oven på model-linien og punkterne med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
og så får man figuren til højre. Den reducerede $\chi^2$ findes til sidst med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2 = sum((y-y_fit).^2 ./ (sigma*ones(size(y)).^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red = chi2/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
==== 1b - Andenordenskorrektion ====&lt;br /&gt;
&lt;br /&gt;
Lav ny en ny serie af datapunkter ud fra forskriften&lt;br /&gt;
&lt;br /&gt;
:$ y = A + B x + C x^2$&lt;br /&gt;
&lt;br /&gt;
Vælg &amp;lt;code&amp;gt;C = 0.1&amp;lt;/code&amp;gt;, for samme interval af x-værdier. Udregn nu det reducerede $\chi^2$ mellem det gamle fit og de nye data. Bliver det værre eller bedre?&lt;br /&gt;
&lt;br /&gt;
Lav nu et plot af residuals, Residuals er afvigelsen mellem data- og fitværdier for hvert målepunkt. Disse kan bruges til at opdage systematisk afvigelser, hvilket kan indikere at fitmodellen er utilstrækkelig.&lt;br /&gt;
&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Først laves en ny serie y-modelværdier:&lt;br /&gt;
:&amp;lt;code&amp;gt;C_model = 0.3;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_model_ny = A_model + B_model*x + C_model*x.^2;&amp;lt;/code&amp;gt;&lt;br /&gt;
Dernæst laves nye værdier med støj:&lt;br /&gt;
:&amp;lt;code&amp;gt;y_ny = y_model_ny + sigma_y.*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vi kan derefter plotte de nye værdier sammen med de gamle samt både den gamle og nye model samt fittet til de lineære data. Du kan evt. supplere med et lineært fit til de nye data.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.8],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.8])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y_ny,sigma_y,'bo','MarkerFaceColor', [0.4 0.4 0.4],...&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;'MarkerEdgeColor',[0.4 0.4 0.4])&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'r-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model_ny,'k-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;y_fit = A_fit + B_fit*x;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_fit,'g-','LineWidth',2)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold off&amp;lt;/code&amp;gt;&lt;br /&gt;
Herefter udregnes det nye reducerede $\chi^2$-værdi.&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_ny    = sum((y_ny-y_fit).^2 ./ sigma_y.^2);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2red_ny = chi2_ny/(N-2);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Til sidst plottes residuals.&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y_ny-y_fit)&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;bar(x,y-y_fit,'r','BarWidth',0.5)&amp;lt;/code&amp;gt;&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 2 - Gentagelse ===&lt;br /&gt;
Gentag dette &amp;quot;numeriske forsøg&amp;quot; et antal gange (f.eks. 100) og gem for hver gang fittets parametre. Brug &amp;lt;code&amp;gt;hist()&amp;lt;/code&amp;gt; til at finde fordelingen af &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og reduceret $\chi^2$. Sammenlign med den estimerede usikkerhed på &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;, og undersøg evt. korrelationen mellem &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; (plot f.eks. &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt; vs. &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt;).&lt;br /&gt;
{{hidden begin|toggle=right|title=Hint|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Start med at bruge den kode du lavede til spørgsmål a, og lav så et loop uden om det hele. I slutningen af loopet skal du gemme &amp;lt;code&amp;gt;A&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B&amp;lt;/code&amp;gt; og din reducerede $\chi^2$ i et array - så du kan plotte alle værdierne bagefter. &lt;br /&gt;
{{hidden end}}&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
Man kan genbruge al sin kode fra spørgsmål a til at lave sit loop. Definitionen af &amp;lt;code&amp;gt;A_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B_model&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sigma&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; og &amp;lt;code&amp;gt;y_model&amp;lt;/code&amp;gt; får lov til at blive, og så skal man forberede sit loop med antal gange man vil køre det, og tre lister til at gemme de resultater man får,&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;N_iter = 100;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;A_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;B_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;chi2_liste = zeros(1,N_iter);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Herefter starter man sit loop lige før udregningen af &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;, således at hvert loop laver en ny række punkter med anderledes støj. &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;for i = 1:N_iter&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;y = y_model + sigma*randn(size(y_model));&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Udregningen af regressionsparametrene er helt som før. Til sidst skal man gemme sine resultater i sine arrays,&lt;br /&gt;
&lt;br /&gt;
::&amp;lt;code&amp;gt;...&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;A_liste(i) = A_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;B_liste(i) = B_fit;&amp;lt;/code&amp;gt;&lt;br /&gt;
::&amp;lt;code&amp;gt;chi2_liste(i) = chi2red;&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;end&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Disse arrays kan man nu se lidt på. F.eks. kan man lave histogrammer eller korrelationsplots med &amp;lt;code&amp;gt;hist&amp;lt;/code&amp;gt; eller &amp;lt;code&amp;gt;scatter&amp;lt;/code&amp;gt;.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
=== Spørgsmål 3 - Automatisk fitning i MATLAB ===&lt;br /&gt;
Prøv at anvende MATLABs fittefunktion &amp;lt;code&amp;gt;fit(x,y,'funktion')&amp;lt;/code&amp;gt; og sammenlign med jeres egen lineære regression.&lt;br /&gt;
{{hidden begin|toggle=right|title=Løsning|titlestyle=background:#ccccff|bg2=#eeeeee}}&lt;br /&gt;
[[File:uge3fig3.png|frame|Modellen og datapunkterne med støj, plottet med fit-linien (grøn).]]&lt;br /&gt;
Den automatiske fitning i MATLAB kan bruges med koden&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;[res good] = fit(x',y','poly1')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
her er &amp;lt;code&amp;gt;poly1&amp;lt;/code&amp;gt; den indbyggede lineære funktion, men man kan også selv skrive sin funktion ind (se på MATLAB hjælp siden for &amp;lt;code&amp;gt;fit&amp;lt;/code&amp;gt;). Fittet kan nu plottes sammen med datapunkterne og model-linien med&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;code&amp;gt;figure&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;errorbar(x,y,sigma*ones(size(y),'ro')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;hold on&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,y_model,'b-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;plot(x,res(x),'g-')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;xlabel('Datapunkter x')&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ylabel('Datapunkter y')&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Denne figur kan ses til højre.&lt;br /&gt;
{{hidden end}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Samlede løsninger ==&lt;br /&gt;
* Et samlet dokument med MATLAB kode til at løse alle opgaverne ovenfor kan hentes her: [[Media:opgaver_uge3_fits.m|opgaver_uge3_fits.m]]&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=Forside</id>
		<title>Forside</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=Forside"/>
				<updated>2015-04-21T08:32:34Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTITLE__&lt;br /&gt;
Velkommen til Eksperimentel Fysik 2015 wikien! Denne side er under løbende udvikling, men du kan allerede nu finde et udkast til de opgaver der skal laves i løbet af kurset. Senere vil der muligvis også komme lidt hjælp til LaTeX og MATLAB.&lt;br /&gt;
&lt;br /&gt;
Du skal selvfølgelig også holde øje med kursets hoved-side, der ligger på Absalon, [https://absalon.itslearning.com/ContentArea/ContentArea.aspx?LocationID=59082&amp;amp;LocationType=1].&lt;br /&gt;
&lt;br /&gt;
== Statistik- og MATLAB-opgaver ==&lt;br /&gt;
Nedenfor er der links til sider med opgaver, hvor du kan få hints og løsninger samtidig med at du laver opgaverne. Opgaverne opfylder to formål: De træner statistik, som er en del af kursets pensum, og derudover giver det jer øvelse i at bruge MATLAB til databehandling og -visualisering.&lt;br /&gt;
&lt;br /&gt;
Før du kan lave disse opgaver, skal du selvfølgelig have installeret MATLAB, og helst i den nyeste version 2015a (se evt. nedenfor). Der er en guide til dette på Absalon. Derefter kan det være en god idé at kigge igennem den korte (men gode) introduktion som kan findes her: [http://computerfysik.dk/programmering/matlab-introduktion/]&lt;br /&gt;
&lt;br /&gt;
Før vi starter kurset rigtigt forventer vi at alle har installeret MATLAB samt kigget på [[opgaver:uge1mandag|MATLAB-introduktionsopgaverne]]. For de fleste af jer vil disse opgaver være meget hurtigt overstået, men er de ikke det, så anbefaler vi at i giver jer god tid til at løse dem, da i ellers vil få svært ved at løse de efterfølgende opgaver.&lt;br /&gt;
&lt;br /&gt;
Torsdagslabholdene har MATLAB-øvelser tirsdage 10-12 startende allerede 21/4, og derefter hver tirsdag. Tirsdagslabholdene har MATLAB-øvelser torsdag 10-12 og derefter hver torsdag. Der er planlagt i alt 5 gange øvelser, på en sådan måde at hvis man laver 1 sæt øvelser pr. uge vil man nogenlunde følge pensum i forelæsningerne samt nå det nødvendige niveau af MATLAB-kunskab. Bliver i hurtigere færdige med ét sæt øvelser er der dog intet i vejen for at i springer direkte videre til de næste opgaver.&lt;br /&gt;
&lt;br /&gt;
* Øvelser 1: [[opgaver:uge1|Opgaver]] om indledende statistik&lt;br /&gt;
* Øvelser 2: [[opgaver:uge2|Opgaver]] om indlæsning af data og plotning&lt;br /&gt;
* Øvelser 3: [[opgaver:uge3|Opgaver]] om fitning af data&lt;br /&gt;
* Øvelser 4: [[opgaver:uge4|Opgaver]] om mere fitning af data&lt;br /&gt;
* Øvelser 5: [[opgaver:uge5|Opgaver]] om avanceret statistik&lt;br /&gt;
&lt;br /&gt;
I enden af hver af opgavesiderne kan I desuden hente en MATLAB &amp;lt;code&amp;gt;.m&amp;lt;/code&amp;gt; fil, der indeholder løsninger til alle opgaverne. Koden i løsningerne skrevet under hver opgave er indeholdt samlet i denne fil, som bare kan køres fra en ende af.&lt;br /&gt;
&lt;br /&gt;
== Programmer ==&lt;br /&gt;
I kurset skal I benytte programmet MATLAB til at lave dataanalyse og -præsentation, og LaTeX til at skrive jeres rapporter og artikler ind. I denne wiki kan du få lidt start-hjælp til at indstallere de to programmer, og til at komme i gang med dem.&lt;br /&gt;
&lt;br /&gt;
Vi anbefaler at I som minimum benytter MATLAB 2014b, men helst MATLAB 2015a, som er den nyeste funktion. Specielt er det smart hvis alle i den samme gruppe benytter samme version af MATLAB, da der skete et ret stort skift i hvordan MATLAB laver plots mellem version 2014a og 2014b. &lt;br /&gt;
&lt;br /&gt;
* [[MATLAB hjælp|MATLAB hjælp side]]&lt;br /&gt;
** [[MATLAB figur handles|Introduktion til handles]]&lt;br /&gt;
* [[LaTeX hjælp|LaTeX hjælp side]]&lt;br /&gt;
** [[Nemme LaTeX tabeller|Nem måde at lave tabeller på]]&lt;br /&gt;
&lt;br /&gt;
== Andet ==&lt;br /&gt;
Nogle få andre små guides:&lt;br /&gt;
&lt;br /&gt;
* [[At skrive en logbog]]&lt;br /&gt;
* [[At lave en præsentation]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=Forside</id>
		<title>Forside</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=Forside"/>
				<updated>2015-04-16T14:51:21Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTITLE__&lt;br /&gt;
Velkommen til Eksperimentel Fysik 2015 wikien! Denne side er under løbende udvikling, men du kan allerede nu finde et udkast til de opgaver der skal laves i løbet af kurset. Senere vil der muligvis også komme lidt hjælp til LaTeX og MATLAB.&lt;br /&gt;
&lt;br /&gt;
Du skal selvfølgelig også holde øje med kursets hoved-side, der ligger på Absalon, [https://absalon.itslearning.com/ContentArea/ContentArea.aspx?LocationID=53172&amp;amp;LocationType=1]. OPDATER MED RIGTIGT LINK&lt;br /&gt;
&lt;br /&gt;
== Statistik- og MATLAB-opgaver ==&lt;br /&gt;
Nedenfor er der links til sider med opgaver, hvor du kan få hints og løsninger samtidig med at du laver opgaverne. Opgaverne opfylder to formål: De træner statistik, som er en del af kursets pensum, og derudover giver det jer øvelse i at bruge MATLAB til databehandling og -visualisering.&lt;br /&gt;
&lt;br /&gt;
Før du kan lave disse opgaver, skal du selvfølgelig have installeret MATLAB, og helst i den nyeste version 2015a (se evt. nedenfor). Der er en guide til dette på Absalon. Derefter kan det være en god idé at kigge igennem den korte (men gode) introduktion som kan findes her: [http://computerfysik.dk/programmering/matlab-introduktion/]&lt;br /&gt;
&lt;br /&gt;
Før vi starter kurset rigtigt forventer vi at alle har installeret MATLAB samt kigget på [[opgaver:uge1mandag|MATLAB-introduktionsopgaverne]]. For de fleste af jer vil disse opgaver være meget hurtigt overstået, men er de ikke det, så anbefaler vi at i giver jer god tid til at løse dem, da i ellers vil få svært ved at løse de efterfølgende opgaver.&lt;br /&gt;
&lt;br /&gt;
Torsdagslabholdene har MATLAB-øvelser tirsdage 10-12 startende allerede 21/4, og derefter hver tirsdag. Tirsdagslabholdene har MATLAB-øvelser torsdag 10-12 og derefter hver torsdag. Der er planlagt i alt 5 gange øvelser, på en sådan måde at hvis man laver 1 sæt øvelser pr. uge vil man nogenlunde følge pensum i forelæsningerne samt nå det nødvendige niveau af MATLAB-kunskab. Bliver i hurtigere færdige med ét sæt øvelser er der dog intet i vejen for at i springer direkte videre til de næste opgaver.&lt;br /&gt;
&lt;br /&gt;
* Øvelser 1: [[opgaver:uge1|Opgaver]] om indledende statistik&lt;br /&gt;
* Øvelser 2: [[opgaver:uge2|Opgaver]] om indlæsning af data og plotning&lt;br /&gt;
* Øvelser 3: [[opgaver:uge3|Opgaver]] om fitning af data&lt;br /&gt;
* Øvelser 4: [[opgaver:uge4|Opgaver]] om mere fitning af data&lt;br /&gt;
* Øvelser 5: [[opgaver:uge5|Opgaver]] om avanceret statistik&lt;br /&gt;
&lt;br /&gt;
I enden af hver af opgavesiderne kan I desuden hente en MATLAB &amp;lt;code&amp;gt;.m&amp;lt;/code&amp;gt; fil, der indeholder løsninger til alle opgaverne. Koden i løsningerne skrevet under hver opgave er indeholdt samlet i denne fil, som bare kan køres fra en ende af.&lt;br /&gt;
&lt;br /&gt;
== Programmer ==&lt;br /&gt;
I kurset skal I benytte programmet MATLAB til at lave dataanalyse og -præsentation, og LaTeX til at skrive jeres rapporter og artikler ind. I denne wiki kan du få lidt start-hjælp til at indstallere de to programmer, og til at komme i gang med dem.&lt;br /&gt;
&lt;br /&gt;
Vi anbefaler at I som minimum benytter MATLAB 2014b, men helst MATLAB 2015a, som er den nyeste funktion. Specielt er det smart hvis alle i den samme gruppe benytter samme version af MATLAB, da der skete et ret stort skift i hvordan MATLAB laver plots mellem version 2014a og 2014b. &lt;br /&gt;
&lt;br /&gt;
* [[MATLAB hjælp|MATLAB hjælp side]]&lt;br /&gt;
** [[MATLAB figur handles|Introduktion til handles]]&lt;br /&gt;
* [[LaTeX hjælp|LaTeX hjælp side]]&lt;br /&gt;
** [[Nemme LaTeX tabeller|Nem måde at lave tabeller på]]&lt;br /&gt;
&lt;br /&gt;
== Andet ==&lt;br /&gt;
Nogle få andre små guides:&lt;br /&gt;
&lt;br /&gt;
* [[At skrive en logbog]]&lt;br /&gt;
* [[At lave en præsentation]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=Forside</id>
		<title>Forside</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=Forside"/>
				<updated>2015-04-16T14:47:15Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTITLE__&lt;br /&gt;
Velkommen til Eksperimentel Fysik 2015 wikien! Denne side er under løbende udvikling, men du kan allerede nu finde et udkast til de opgaver der skal laves i løbet af kurset. Senere vil der muligvis også komme lidt hjælp til LaTeX og MATLAB.&lt;br /&gt;
&lt;br /&gt;
Du skal selvfølgelig også holde øje med kursets hoved-side, der ligger på Absalon, [https://absalon.itslearning.com/ContentArea/ContentArea.aspx?LocationID=53172&amp;amp;LocationType=1]. OPDATER MED RIGTIGT LINK&lt;br /&gt;
&lt;br /&gt;
== Statistik- og MATLAB-opgaver ==&lt;br /&gt;
Nedenfor er der links til sider med opgaver, hvor du kan få hints og løsninger samtidig med at du laver opgaverne. Opgaverne opfylder to formål: De træner statistik, som er en del af kursets pensum, og derudover giver det jer øvelse i at bruge MATLAB til databehandling og -visualisering.&lt;br /&gt;
&lt;br /&gt;
Før du kan lave disse opgaver, skal du selvfølgelig have installeret MATLAB. Der er en guide til dette på Absalon. Derefter kan det være en god idé at kigge igennem den korte (men gode) introduktion som kan findes her: [http://computerfysik.dk/programmering/matlab-introduktion/]&lt;br /&gt;
&lt;br /&gt;
Før vi starter kurset rigtigt forventer vi at alle har installeret MATLAB samt kigget på [[opgaver:uge1mandag|MATLAB-introduktionsopgaverne]]. For de fleste af jer vil disse opgaver være meget hurtigt overstået, men er de ikke det, så anbefaler vi at i giver jer god tid til at løse dem, da i ellers vil få svært ved at løse de efterfølgende opgaver.&lt;br /&gt;
&lt;br /&gt;
Torsdagslabholdene har MATLAB-øvelser tirsdage 10-12 startende allerede 21/4, og derefter hver tirsdag. Tirsdagslabholdene har MATLAB-øvelser torsdag 10-12 og derefter hver torsdag. Der er planlagt i alt 5 gange øvelser, på en sådan måde at hvis man laver 1 sæt øvelser pr. uge vil man nogenlunde følge pensum i forelæsningerne samt nå det nødvendige niveau af MATLAB-kunskab. Bliver i hurtigere færdige med ét sæt øvelser er der dog intet i vejen for at i springer direkte videre til de næste opgaver.&lt;br /&gt;
&lt;br /&gt;
* Øvelser 1: [[opgaver:uge1|Opgaver]] om indledende statistik&lt;br /&gt;
* Øvelser 2: [[opgaver:uge2|Opgaver]] om indlæsning af data og plotning&lt;br /&gt;
* Øvelser 3: [[opgaver:uge3|Opgaver]] om fitning af data&lt;br /&gt;
* Øvelser 4: [[opgaver:uge4|Opgaver]] om mere fitning af data&lt;br /&gt;
* Øvelser 5: [[opgaver:uge5|Opgaver]] om avanceret statistik&lt;br /&gt;
&lt;br /&gt;
I enden af hver af opgavesiderne kan I desuden hente en MATLAB &amp;lt;code&amp;gt;.m&amp;lt;/code&amp;gt; fil, der indeholder løsninger til alle opgaverne. Koden i løsningerne skrevet under hver opgave er indeholdt samlet i denne fil, som bare kan køres fra en ende af.&lt;br /&gt;
&lt;br /&gt;
== Programmer ==&lt;br /&gt;
I kurset skal I benytte programmet MATLAB til at lave dataanalyse og -præsentation, og LaTeX til at skrive jeres rapporter og artikler ind. I denne wiki kan du få lidt start-hjælp til at indstallere de to programmer, og til at komme i gang med dem.&lt;br /&gt;
&lt;br /&gt;
* [[MATLAB hjælp|MATLAB hjælp side]]&lt;br /&gt;
** [[MATLAB figur handles|Introduktion til handles]]&lt;br /&gt;
* [[LaTeX hjælp|LaTeX hjælp side]]&lt;br /&gt;
** [[Nemme LaTeX tabeller|Nem måde at lave tabeller på]]&lt;br /&gt;
&lt;br /&gt;
== Andet ==&lt;br /&gt;
Nogle få andre små guides:&lt;br /&gt;
&lt;br /&gt;
* [[At skrive en logbog]]&lt;br /&gt;
* [[At lave en præsentation]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	<entry>
		<id>http://efwiki.bozack.dk/index.php?title=Forside</id>
		<title>Forside</title>
		<link rel="alternate" type="text/html" href="http://efwiki.bozack.dk/index.php?title=Forside"/>
				<updated>2015-04-16T14:13:46Z</updated>
		
		<summary type="html">&lt;p&gt;Ostfeldt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTITLE__&lt;br /&gt;
Velkommen til Eksperimentel Fysik 2015 wikien! Denne side er under løbende udvikling, men du kan allerede nu finde et udkast til de opgaver der skal laves i løbet af kurset. Senere vil der muligvis også komme lidt hjælp til LaTeX og MATLAB.&lt;br /&gt;
&lt;br /&gt;
Du skal selvfølgelig også holde øje med kursets hoved-side, der ligger på Absalon, [https://absalon.itslearning.com/ContentArea/ContentArea.aspx?LocationID=53172&amp;amp;LocationType=1]. OPDATER MED RIGTIGT LINK&lt;br /&gt;
&lt;br /&gt;
== Statistikopgaver ==&lt;br /&gt;
Nedenfor er der links til sider med opgaver, hvor du kan få hints og løsninger samtidig med at du laver opgaverne.&lt;br /&gt;
&lt;br /&gt;
Før du kan lave disse opgaver, skal du selvfølgelig have installeret MATLAB. Der er en guide til dette på Absalon. Derefter kan det være en god idé at kigge igennem den korte (men gode) introduktion som kan findes her: [http://computerfysik.dk/programmering/matlab-introduktion/]&lt;br /&gt;
&lt;br /&gt;
Før vi starter kurset rigtigt forventer vi at alle har installeret MATLAB samt kigget på [[opgaver:uge1mandag|MATLAB-introduktionsopgaverne]]. For de fleste af jer vil disse opgaver være meget hurtigt overstået, men er de ikke det, så anbefaler vi at i giver jer god tid til at løse dem, da i ellers vil få svært ved at løse de efterfølgende opgaver.&lt;br /&gt;
&lt;br /&gt;
Torsdagslabholdene har MATLAB-øvelser tirsdage 10-12 startende allerede 21/4, og derefter hver tirsdag. Tirsdagslabholdene har MATLAB-øvelser torsdag 10-12 og derefter hver torsdag. Der er planlagt i alt 5 gange øvelser, på en sådan måde at hvis man laver 1 sæt øvelser pr. uge vil man nogenlunde følge pensum i forelæsningerne samt nå det nødvendige niveau af MATLAB-kunskab. Bliver i hurtigere færdige med ét sæt øvelser er der dog intet i vejen for at i springer direkte videre til de næste opgaver.&lt;br /&gt;
&lt;br /&gt;
* Øvelser 1: [[opgaver:uge1|Opgaver]] om indledende statistik&lt;br /&gt;
* Øvelser 2: [[opgaver:uge2|Opgaver]] om indlæsning af data og plotning&lt;br /&gt;
* Øvelser 3: [[opgaver:uge3|Opgaver]] om fitning af data&lt;br /&gt;
* Øvelser 4: [[opgaver:uge4|Opgaver]] om mere fitning af data&lt;br /&gt;
* Øvelser 5: [[opgaver:uge5|Opgaver]] om avanceret statistik&lt;br /&gt;
&lt;br /&gt;
I enden af hver af opgavesiderne kan I desuden hente en MATLAB &amp;lt;code&amp;gt;.m&amp;lt;/code&amp;gt; fil, der indeholder løsninger til alle opgaverne. Koden i løsningerne skrevet under hver opgave er indeholdt samlet i denne fil, som bare kan køres fra en ende af.&lt;br /&gt;
&lt;br /&gt;
== Programmer ==&lt;br /&gt;
I kurset skal I benytte programmet MATLAB til at lave dataanalyse og -præsentation, og LaTeX til at skrive jeres rapporter og artikler ind. I denne wiki kan du få lidt start-hjælp til at indstallere de to programmer, og til at komme i gang med dem.&lt;br /&gt;
&lt;br /&gt;
* [[MATLAB hjælp|MATLAB hjælp side]]&lt;br /&gt;
** [[MATLAB figur handles|Introduktion til handles]]&lt;br /&gt;
* [[LaTeX hjælp|LaTeX hjælp side]]&lt;br /&gt;
** [[Nemme LaTeX tabeller|Nem måde at lave tabeller på]]&lt;br /&gt;
&lt;br /&gt;
== Andet ==&lt;br /&gt;
Nogle få andre små guides:&lt;br /&gt;
&lt;br /&gt;
* [[At skrive en logbog]]&lt;br /&gt;
* [[At lave en præsentation]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ostfeldt</name></author>	</entry>

	</feed>