Skip to content

Commit 1f86caa

Browse files
committed
2 parents 47a28a4 + 7c59e10 commit 1f86caa

File tree

26 files changed

+33
-27
lines changed

26 files changed

+33
-27
lines changed

Physics/src/Examples/Box_incline.lhs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ Improvmenet:
22
notation
33
formulas
44
tests
5-
6-
7-
5+
english
86

97
Box on an incline
108
=================

Physics/src/Examples/Teeter.lhs

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Known values:
1717
> d = 0.75 # length
1818
> beam_L = 5.0 # length
1919
> two = 2.0 # one
20+
> g = 9.0 # acceleration
2021

2122
![Teeter](teeter.png){.float-img-left}
2223

@@ -31,22 +32,24 @@ A torque (sv. vridmoment) is defined as:
3132

3233
$$ \tau = distance\ from\ turning\ point \cdot force $$
3334

34-
Since all force values will be composited of a mass and the gravitation, we can ignore the gravitation.
35+
(soon not to be) Since all force values will be composited of a mass and the gravitation, we can ignore the gravitation.
3536

36-
$$ \tau = distance\ from\ turning\ point \cdot mass $$
37+
$$ \tau = distance\ from\ turning\ point \cdot mass \cdot gravitation $$
3738

3839

39-
> m1_torq = m1 *# beam_left_L
40+
> m1_torq = m1 *# (g *# beam_left_L)
4041

4142
To get the beams torque on one side, we need to divide by 2 because the beam's torque is spread out linearly (the density of the beam is equal everywhere), which means the left parts mass centrum is \emph{half the distance} of the left parts total length.
4243

43-
$$ beamL_{\tau} = beamL_{M} \cdot \frac{distance}{2} $$
44+
$$ beamL_{\tau} = beamL_{M} \cdot gravity \cdot \frac{distance}{2} $$
4445

45-
$$ beamL_{\tau} = \frac{beam\ left\ length}{beam\ length} \cdot beam_M \cdot \frac{beam\ left\ length}{2} $$
46+
where
4647

47-
> beamL_torq = ((beam_left_L /# beam_L) *# beam_M) *# (beam_left_L /# two)
48+
$$ beamL_{M} = \frac{beam\ left\ length}{beam\ length} \cdot beam_M $$
4849

49-
> beamR_torq = ((beam_right_L /# beam_L) *# beam_M) *# (beam_right_L /# two)
50+
> beamL_torq = ((beam_left_L /# beam_L) *# (beam_M *# g)) *# (beam_left_L /# two)
51+
52+
> beamR_torq = ((beam_right_L /# beam_L) *# (beam_M *# g)) *# (beam_right_L /# two)
5053

5154
We make an expression for $m2_{\tau}$, which involves our unknown distance x.
5255

Rapport/include/Diskussion.tex

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -190,11 +190,7 @@ \subsection{Domänspecifika språk, fysik och pedagogiska aspekter}\label{sec:ba
190190
detta~\cite{kandidat2016}. Det kandidatarbetet resulterade också i ett
191191
läromaterial, skillnaden är att det arbetet behandlade signallära. Grundidén är
192192
dock densamma: att använda domänspecifika språk för att ge struktur till ett
193-
annat område.
194-
195-
\textbf{TODO: Hur fick det för den gruppen?}
196-
197-
Detta tycker vi visar på att det finns ett
193+
annat område. Dessutom finns kursen \textit{Classical Mechanics: A Computational Approach}~\cite{classical-mechanics-course-mit-2008} som också använde domänspecifika språk till att ge struktur till fysik. Detta tycker vi visar på att det finns ett
198194
akademiskt intresse för att använda domänspecifika språk i syfte att lära ut,
199195
och att idén som vi presenterar i denna rapport även går att applicera på
200196
andra områden. Nyttan att strukturera upp områden i väl avgränsade och

Rapport/include/Introduktion.tex

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -61,17 +61,22 @@ \section{Bakgrund}
6161
DSLsofMath, tidigare givits som berör både fysik och
6262
domänspecifika språk.
6363
%funktionell programmering.
64-
\textit{Classical Mechanics: A Computational Approach} gavs av Gerald Sussman
65-
och Jack Wisdom senast år 2008~\cite{classical-mechanics-course-mit-2008}.
66-
Denna kurs på avancerad nivå behandlar de fundamentala principerna för klassisk
67-
mekanik med hjälp av beräkningsidéer för att precist formulera principerna av
68-
mekanik, med början i Lagranges ekvationer och avslut i perturbationsteori
69-
(teori för approximationer av matematiska lösningar). I kursens bok~\cite{SICM}
70-
förklaras fysikaliska fenomen genom att visa datorprogram för att simulera dem,
71-
skrivna i språket Scheme. Denna typ av kurs är ovanlig och är, till
72-
projektgruppens kännedom, den enda kursen bortsett från DSLsofMath som knyter
73-
samman fysik, programmering och matematik på en symbolisk nivå för att förklara
74-
koncepten.
64+
\textit{Classical Mechanics: A Computational Approach} gavs av Gerald
65+
Sussman och Jack Wisdom senast år
66+
2008~\cite{classical-mechanics-course-mit-2008}. Denna kurs på
67+
avancerad nivå behandlar de fundamentala principerna för klassisk
68+
mekanik med hjälp av beräkningsidéer för att precist formulera
69+
principerna av mekanik, med början i Lagranges ekvationer och avslut i
70+
perturbationsteori (teori för approximationer av matematiska
71+
lösningar). I kursens bok~\cite{SICM} förklaras fysikaliska fenomen
72+
genom att visa datorprogram för att simulera dem, skrivna i språket
73+
Scheme. Denna typ av kurs är ovanlig och är, till projektgruppens
74+
kännedom, den enda kursen bortsett från DSLsofMath som knyter samman
75+
fysik, programmering och matematik på en symbolisk nivå för att
76+
förklara koncepten. Skillnaden mot vårt projekt är att vi använder
77+
Haskell istället för Scheme, enbart behandlar fysik från Fysik för
78+
ingenjörer samt gör det på en nivå anpassad för datastudenter på
79+
Chalmers.
7580

7681
Även tidigare har det genomförts ett kandidatarbete på Chalmers med anknytning till DSLsofMath.
7782
Vårterminen 2016 genomfördes kandidatarbetet \textit{Programmering som
@@ -85,7 +90,7 @@ \section{Bakgrund}
8590
programmeringsspråk, vilket utfördes av Scott N. Walck vid Lebanon Valley
8691
College~\cite{lebanon-physics}. Syftet med det projektet var att fördjupa
8792
studenters förståelse av fysik, med fokus på elektromagnetisk teori, genom att
88-
uttrycka fysiken med hjälp av funktionell programmering.
93+
uttrycka fysiken med hjälp av funktionell programmering. Skillnaden är att detta projekt ska förklara fysik från grunden medan~\cite{lebanon-physics} fördjupar kunskaper i fysik.
8994

9095
\section{Projektets mål}
9196

21.1 KB
Binary file not shown.
48.8 KB
Binary file not shown.
75.7 KB
Binary file not shown.
120 KB
Binary file not shown.
109 KB
Binary file not shown.
106 KB
Binary file not shown.

0 commit comments

Comments
 (0)