Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
U
uva
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Taddeüs Kroes
uva
Commits
596700c1
Commit
596700c1
authored
Apr 10, 2011
by
Taddeüs Kroes
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ModSim ass3 report: Added part about test functions.
parent
bf524d64
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
96 additions
and
0 deletions
+96
-0
modsim/ass3/report/report.tex
modsim/ass3/report/report.tex
+96
-0
No files found.
modsim/ass3/report/report.tex
View file @
596700c1
\documentclass
[10pt,a4paper]
{
article
}
\usepackage
[dutch]
{
babel
}
\usepackage
[utf8]
{
inputenc
}
\usepackage
{
booktabs,graphicx,float,hyperref
}
% Paragraph indentation
\setlength
{
\parindent
}{
0pt
}
\setlength
{
\parskip
}{
1ex plus 0.5ex minus 0.2ex
}
% Disable hyperref border
\hypersetup
{
pdfstartview=
{
FitH
}
,
% fits the width of the page to the window
colorlinks=false,
% false: boxed links; true: colored links
}
\title
{
Modelleren, Simuleren
\&
Contin
\"
ue Wiskunde
\\
Opdracht 3: Euler, Runge-Kutta, ODE's
}
\author
{
Tadde
\"
us Kroes (6054129)
\and
Sander van Veen (6167969)
}
\begin{document}
\maketitle
\section
{
De opdracht
}
De opdracht bestaat uit twee delen: het eerste deel betreft het implementeren
van de Euler- en Runge-Kutta-methoden, in het tweede deel worden deze methoden
vergeleken en gebruikt om enkele ODE's te benaderen.
\section
{
Implementatie
}
We hebben de drie methoden volgens de gegeven functievoorschriften
ge
\"
implementeerd in C (zie het bestand
\emph
{
integration.c
}
). We hebben daarbij
een ``logger'' gemaakt die een rij waardes naar
\texttt
{
stdout
}
print. We
gebruiken dit als invoer voor het python-script
\emph
{
plot.py
}
, dat deze waarden
in een grafiek zet. Een voorbeelduitvoer is:
\begin{verbatim}
$
.
/
main
5
| .
/
plot.py gilpin.svg
\end
{
verbatim
}
Dit voert de integratie van ODE nr.
5
(
Gilpin's model
)
uit en plot de resultaten
in een grafiek welke wordt opgeslagen als de afbeelding
\emph
{
gilpin.svg
}
.
De implementatie van de integratiemethoden zelf is gedaan met behulp van de
pseudocode in het boek. Deze is volgens ons vrij duidelijk en daarom zullen we
er hier niet dieper op ingaan.
\section
{
Testfuncties
}
De testfuncties kunnen worden uitgevoerd met het programma
\texttt
{
.
/
test
}
(
bestand
\emph
{
test.c
}
)
. Dit bestand schrijft de log data naar
\texttt
{
/
dev
/
null
}
waardoor alleen de ``custom'' output wordt geprint. De data
op zich vinden we namelijk weinig interessant, we willen vooral weten wat de
waarden op
\texttt
{
t
1
}
zijn.
Van vier van de vijf functies berekenen we de beoogde waarden exact en
vergelijken deze met de waarden die het programma berekent, dit kan omdat de
functies redelijk eenvoudig zijn. Alle methoden benaderen de beoogde waarden
steeds beter naarmate we
\texttt
{
DT
}
kleiner kiezen, dus concluderen we dat de
methoden correct zijn ge
\"
implementeerd.
Een apart geval is de vierde testfunctie
(
\emph
{
``f
=
y
*
y, with t
0
starting at
-
1
and y
0
at
1
, integrating to t
=
1
(
this should not work, why?
)
''
}
)
. Deze
integratie lever voor alle methoden
\texttt
{
INFINITY
}
op, dit wordt veroorzaakt
door een verkeerd gekozen startwaarde y
0
.
We zien dat, vooral bij een grote
\texttt
{
DT
}
,
dat Euler verschilt van RK
2
en RK
4
. RK
2
ligt redelijk dicht bij RK
4
, ook bij
niet al te kleine waarden van
\texttt
{
DT
}
. RK
4
ligt het dichtst bij de exacte
waardes, we kunnen dus concluderen dat deze het meest nauwkeurig is
(
niet
verassend, want RK
4
voert de meeste operaties uit
)
.
\section
{
ODE's
}
\subsection
{
Harmonische oscillator
}
\subsection
{
Damped, forced harmonic oscillator
}
\subsection
{
Lottka
-
Voltera
}
\subsection
{
Modified predator
-
prey model
}
\subsection
{
PID controller
}
\subsection
{
Gilpin's Model
}
\end
{
document
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment