opgaver:Uge2

(Difference between revisions)
Jump to: navigation, search
Line 67: Line 67:
 
:<code>end</code>
 
:<code>end</code>
  
Denne kode laver en counter <code>k</code> der tæller hvor mange punkter der er blevet "godkendt" som gode data. Den tjekker nu for hvert datapunkt, <code>n</code, om den overholder kriterierne, og hvis den gør gemmes punktet i det nye data-array <code>DataCorrected</code>. Hvis punktet ikke overholder kriterierne, bliver det ikke gemt.
+
Denne kode laver en counter <code>k</code> der tæller hvor mange punkter der er blevet "godkendt" som gode data. Den tjekker nu for hvert datapunkt, <code>n</code>, om den overholder kriterierne, og hvis den gør gemmes punktet i det nye data-array <code>DataCorrected</code>. Hvis punktet ikke overholder kriterierne, bliver det ikke gemt.
 +
 
 +
For at data skal være nemmere at overskue, kan man også binne dem - altså samle et antal punkter sammen til ét. For at kunne binne data er man først og fremmest nødt til at sortere det i en rækkefølge så punkterne ligger efter hinanden stigende på førstaksen. Dette gøres med
 +
 
 +
:<code>DataCorrectedSorted = sortrows(DataCorrected);</code>
 +
 
 +
Nu kan man så binne sine data, med f.eks. 100 punkter i hvert nyt punkt. Usikkerheden på hvert binnede punkt er SDOM.
 +
 
 +
:<code>bin = 100;</code>
 +
:<code>T(1) = sum( DataCorrectedSorted(1:bin,1) )/bin;</code>
 +
:<code>T_u(1) = std( DataCorrectedSorted(1:bin,1) )/sqrt(bin); </code>
 +
:<code>U(1) = sum( DataCorrectedSorted(1:bin,2) )/bin;</code>
 +
:<code>U_u(1) = std( DataCorrectedSorted(1:bin,2) )/sqrt(bin);</code>
 +
:<code>number_of_datapoints = length( DataCorrectedSorted(1:end,1) );</code>
 +
:<code>number_of_datapoints_fixed = fix( length( DataCorrectedSorted(1:end,2) )/bin );</code>
 +
:<code>for n = 2:number_of_datapoints_fixed - 1</code>
 +
::<code>    T(n)  = sum( DataCorrectedSorted(n*bin+1:(n+1)*bin,1) )/bin;</code>
 +
::<code>    T_u(n) = std( DataCorrectedSorted(n*bin+1:(n+1)*bin,1) )/sqrt(bin);</code>
 +
::<code>    U(n)  = sum( DataCorrectedSorted(n*bin+1:(n+1)*bin,2) )/bin;</code>
 +
::<code>    U_u(n) = std( DataCorrectedSorted(n*bin+1:(n+1)*bin,2) )/sqrt(bin);</code>
 +
:<code>end</code>
 +
 
 +
[[File:uge2fig3.png|frame|Plot af temperatur versus spænding for datafil nummer 97, korrigeret og binnet.]]
 +
Disse binnede data kan, som illustration, plottes oven på de korrigerede data med koden:
 +
 
 +
:<code>figure</code>
 +
:<code>plot( DataCorrected(1:end,1),DataCorrected(1:end,2),'.','MarkerFaceColor', ...</code>
 +
::<code>      [0.4 0.4 0.8],'MarkerEdgeColor',[0.4 0.4 0.8] )</code>
 +
:<code>hold on</code>
 +
:<code>errorbar( T, U, U_u,'.','MarkerFaceColor',[0.1 0.1 0.6],...</code>
 +
::<code>          'MarkerEdgeColor',[0.1 0.1 0.6] )</code>
 +
:<code>title(['Korrigeret data (bin = ' num2str(bin) ')'],'FontWeight','b', ...</code>
 +
::<code>      'FontSize',12)</code>
 +
:<code>xlabel('Temperatur','FontSize',12)</code>
 +
:<code>ylabel('Spænding','FontSize',12)</code>
 +
:<code>axis([0 4.2 9.45e-7 9.8e-7])</code>
 +
 
 +
denne figur er vist her til højre.
 
{{hidden end}}
 
{{hidden end}}
  

Revision as of 15:55, 6 March 2012

Denne uge er der kun en enkelt opgave. I bliver givet nogle data, som I så skal arbejde med. Når I er færdige med nedenstående spørgsmål anbefales det at I leger lidt videre med data, for at vænne jer til at arbejde med større datasæt i MATLAB. I kan også prøve at indlæse nogle af jeres egne data (I har da gemt data fra jeres tidligere kurser, ikke?).


Contents

Opgave 1 - Saras data

Vi skal her arbejde med ægte data, fra Sara Eisenhardts speciale, 2010. Eksperimentet var måling af det magnetiske moment af en prøve af stoffet LiHoF4, som kun er magnetisk ved temperaturer under 1.5 K. Det er jeres opgave at analysere Saras data og producere et godt plot.

Magnetiseringen blev målt med et kraftmoment-magnetometer, en opstilling helt analog til jeres vægt-vippe opstilling. Magnetiseringen i et påtrykt felt giver anledning til et kraftmoment på prøven, $\tau = M B$. Dette giver anledning til en bøjning af en vippe, som igen forårsager ændring af modstanden i en strain gauge. Denne måles som spænding over en Wheatstonebro med en lock-in forstærker.

I dataserierne er bl.a. angivet målt spænding og påtrykt $B$-felt som en tidsserie, der er samplet ofte. Resten er ikke vigtigt her. Se den .m-fil der er vedlagt dataen for tips til hvordan data kan indlæses.

Spørgsmål a

Overvej, hvordan data bedst kan præsenteres. Skal de skaleres, rebinnes, skal nogle af data smides væk, eller transformeres på anden måde? Lav en serie figurer.

Start gerne med at arbejde med temperatur versus spænding for datasæt nummer 97, da det er det sjoveste.

Spørgsmål b

Overvej hvordan man kan udlede den indre støj på de målte data. Antag at der ikke er systematiske fejl, og tilføj dette til figurerne.

Spørgsmål c

Overvej en fortolkning af data.



Personal tools
Namespaces
Variants
Actions
Navigation
Opgaver
Andet
Toolbox
Commercial