You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Rapport/include/Metod.tex
+9-54Lines changed: 9 additions & 54 deletions
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@
15
15
\chapter{Genomförande}
16
16
17
17
Projektets genomförande bestod av fyra delar. Den största delen var
18
-
konstruktionen av själva läromaterialet i vilken det ingick sökande efter fysikaliska
18
+
konstruktionen av själva läromaterialet i vilken det ingick sökande efter lämpliga
19
19
områden, implementation av domänspecifika språk och skrivande av lärotext. De
20
20
tre andra delarna var publicering av läromaterialet på en hemsida, utvärdering
21
21
av läromaterialet med en testgrupp samt möten med Åke Fäldt, examinator och
@@ -24,54 +24,14 @@ \chapter{Genomförande}
24
24
25
25
\section{Konstruktion av läromaterialet}\label{sec:konstruktion}
26
26
27
-
Läromaterialet består av fem kapitel som vardera behandlar separata
28
-
områden. Skapandet av varje kapitel skedde därför till största delen fristående
29
-
från andra kapitel. Konstruktionen av kapitlen bestod i sin tur av tre faser,
30
-
som såg likadana ut för alla kapitel. Dessa faser var sökande efter område,
31
-
implementation av domänspecifika språk för området samt skrivande av lärotext. Denna skapandeprocess kan delas upp i en graf med två axlar: en utefter kapitel
32
-
och en utefter fas. Det här illustreras i figur~\ref{fig:oversiktA}. Figuren
33
-
visar att varje kombination av kapitel och fas är en del i projektet som
\caption{Delarna visas med gränsöverskridande överlapp. Notera att
48
-
implementation och skrivande \textit{alltid} var överlappande medan
49
-
sökande \textit{ofta men inte alltid} var det.}~\label{fig:oversiktB}
50
-
\end{subfigure}
51
-
\caption{Översikt över hur skapandeprocessen för läromaterialet såg ut.
52
-
Processen delas upp utefter två axlar: kapitel och fas. Varje kombination
53
-
är en del som arbetats med och är gråmarkerad.}
54
-
\end{figure}
55
-
56
-
Även om detta sätt att dela upp processen är översiktligt är det inte helt
57
-
verklighetstroget. I praktiken fanns det överlapp mellan de olika delarna, både
58
-
med avseende på kapitel och fas. Det här illustereras i
59
-
figur~\ref{fig:oversiktB}. Där ses att sökandet av områden skedde för flera
60
-
kapitel samtidigt. Detta då arbetet med att hitta ett område ofta gav flera
61
-
områden samtidigt. I figuren syns också att implementationen av domänspecifika
62
-
språk och skrivande av lärotext skedde samtidigt. Eftersom de i resultatet är
63
-
sammanvävda var det också högst naturligt att även processerna med att skapa dem var sammanvävda.
64
-
65
-
De tre följande avsnitten beskriver i detalj hur de tre faserna, sökande,
66
-
implementation och skrivande, såg ut. Det är värt att minnas att det, som
67
-
nämndes ovan, fanns överlapp mellan både faserna och kapitlen.
27
+
Läromaterialet består av fem kapitel som vardera behandlar separata områden. Skapandet av dem skedde fristående men de innehöll alla de tre faserna sökande, implementation och skrivande, som såg likartade ut för dem alla. Det fanns dock visst överlapp mellan de fristående processerna. Sökandet gav ofta flera områden samtidigt och implementation och skrivande genomfördes ofta parallellt. För att tydliggöra processerna är de dock beskrivna separat.
68
28
69
29
\subsection{Sökande efter områden att behandla}\label{sec:valet}
70
30
71
31
Ett domänspecifikt språk modellerar ett specifikt och avgränsat område. Därför
72
32
var det naturligt att söka och tänka i termer av avgränsade områden inom
73
33
fysiken. För att rent praktiskt hitta områden att behandla kontaktades Åke
74
-
Fäldt, examinator för Fysik för ingenjörer~\cite{tif085}. Dessutom studerades kursens bok (University
34
+
Fäldt. Dessutom studerades kursens bok (University
75
35
Physics~\cite{UP}) och dess övriga material.
76
36
77
37
Denna sökandeprocess innefattade inte bara att \textit{hitta} fysikaliska
@@ -115,9 +75,7 @@ \subsubsection*{Studerande av kursbok och kursmaterial}
115
75
varje område för att se huruvida det lämpade sig att göra ett domänspecifikt
116
76
språk av och hur det skulle kunna se ut. Experimenten visade att enbart vissa
117
77
områden, till exempel vektorer, fungerade bra att göra ett domänspecifikt språk
118
-
av. Andra områden, till exempel lutande plan, var mindre lämpliga. Förenklat
119
-
sagt var enbart områden med tydliga data och operationer lämpade. Detta
120
-
diskuteras utförligare i avsnitt~\ref{sec:lampligt}. Det framgick också att det
78
+
av. Andra områden, till exempel lutande plan, var mindre lämpliga. Vad som skiljer dem åt är att vektorer har tydliga data och operationer (till exempel skalärprodukt) medan lutande plan har egenskaper (till exemel friktionskoefficienter och vinklar) som är relaterade till varandra med ekvationer. Det här diskuteras utförligare i avsnitt~\ref{sec:lampligt}. Det framgick också att det
121
79
blev ett överlapp mellan olika domänspecifika språk trots att områdena var fristående.
122
80
Ett exempel var det domänspecifika språk för partikelmekanik som till stor del
123
81
liknade de domänspecifika språken för matematisk analys och vektorer.
@@ -131,8 +89,7 @@ \subsubsection*{Studerande av kursbok och kursmaterial}
131
89
\subsubsection*{Områden som valdes ut}
132
90
133
91
När kunskap inhämtats om olika områden kunde ett urval göras. De områden som
134
-
identifierades som grundläggande och som hade en väl lämpad struktur (se
135
-
avsnitt~\ref{sec:lampligt}) valdes ut. Med detta som grund blev områdena som valdes ut fysikaliska dimensioner, matematisk analys och vektorer. Här följer en kortfattad motivering av valet av dem.
92
+
identifierades som grundläggande och som hade en väl lämpad struktur enligt avsnittet innan valdes ut. Med detta som grund blev områdena som valdes ut fysikaliska dimensioner, matematisk analys och vektorer. Här följer en kortfattad motivering av valet av dem.
136
93
137
94
\textit{Dimensioner} eftersom det är viktigt för studenter att förstå
138
95
hur dimensioner påverkas av algebraiska operationer. Det kan också vara
mellan programkod och förklaringar. För att läromaterialet skulle vara
211
168
lättförståeligt var det också viktigt att presentera materialet i den ordning
212
169
som en mänsklig läsare, och inte datorn, tyckte var enklast. Avsnitt \ref{sec:lhs} beskriver hur litterat programmering fungerar i allmänhet och ger
213
-
en bra bild hur det såg ut även i detta projekt.
170
+
en bra bild av hur det såg ut även i detta projekt.
214
171
215
172
Under skrivandet av lärotexten lades övningar till. Dessa skapades genom att
216
173
modifiera befintlig lärotext, istället för att förklara allting uppmanar den
217
174
läsaren då och då att göra nästa steg i implementationen själv. När ett kapitel
218
175
var avslutat lades dessutom extra övningar till i slutet, dessa övningar var
219
176
ofta vidareutvecklingar av det domänspecifika språk som redan implementerats.
220
177
221
-
Skrivandet av lärotexten till de grundläggande och komposita områden var
178
+
Skrivandet av lärotexten till de grundläggande och komposita områdena var
222
179
övergripande likadana. Skillnaden låg i balansen mellan Haskell och fysik. För
223
180
de grundläggande områdena fokuserade lärotexten mer på Haskell eftersom det var
224
181
ett helt nytt domänspecifikt språk som skulle konstrueras. Hur det fungerade var
225
-
därför viktigt att förklara. I kontrast står lärotexten för de komposita
226
-
områdena, där ett större fokus låg på fysik. För dessa områden visades hur de
182
+
därför viktigt att förklara. För de komposita områdena låg däremot ett större fokus på fysik. För dessa områden visades hur de
227
183
domänspecifika språken var praktiskt användbara och då förklarades fysiken, för
228
184
att sedan visa hur den fysiken kunde representeras i de domänspecifika
229
185
språken.
230
186
231
187
Ett exempel på ovanstående är kapitlet kring det komposita området partikelmekanik. Dess implementation var en sammanslagning av området vektorer och
232
-
matematisk analys, där istället för att visa och förklara hur områdena kunde
233
-
implementeras i Haskell visade hur det direkt gick att översätta de
188
+
matematisk analys där fokus flyttats till att visa hur det direkt gick att översätta de
234
189
fysikaliska formlerna som beskriver partiklars rörelse och energier till
235
190
Haskell-kod med hjälp av de grundläggande områdena. Beskrivning av relationen arbete-energi (engelska \textit{Work-Energy theorem}) gick då till som i figur \ref{fig:komposit-ex}.
0 commit comments