Commit 3decddd7 authored by gawen.ackerman's avatar gawen.ackerman
Browse files

html doc

parent 6749737e
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>Untitled</title>
<style>
html {
line-height: 1.5;
font-family: Georgia, serif;
font-size: 20px;
color: #1a1a1a;
background-color: #fdfdfd;
}
body {
margin: 0 auto;
max-width: 36em;
padding-left: 50px;
padding-right: 50px;
padding-top: 50px;
padding-bottom: 50px;
hyphens: auto;
overflow-wrap: break-word;
text-rendering: optimizeLegibility;
font-kerning: normal;
}
@media (max-width: 600px) {
body {
font-size: 0.9em;
padding: 1em;
}
h1 {
font-size: 1.8em;
}
}
@media print {
body {
background-color: transparent;
color: black;
font-size: 12pt;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3, h4 {
page-break-after: avoid;
}
}
p {
margin: 1em 0;
}
a {
color: #1a1a1a;
}
a:visited {
color: #1a1a1a;
}
img {
max-width: 100%;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
h6 {
font-weight: normal;
}
ol, ul {
padding-left: 1.7em;
margin-top: 1em;
}
li > ol, li > ul {
margin-top: 0;
}
blockquote {
margin: 1em 0 1em 1.7em;
padding-left: 1em;
border-left: 2px solid #e6e6e6;
color: #606060;
}
code {
font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;
font-size: 85%;
margin: 0;
}
pre {
margin: 1em 0;
overflow: auto;
}
pre code {
padding: 0;
overflow: visible;
overflow-wrap: normal;
}
.sourceCode {
background-color: transparent;
overflow: visible;
}
hr {
background-color: #1a1a1a;
border: none;
height: 1px;
margin: 1em 0;
}
table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
overflow-x: auto;
display: block;
font-variant-numeric: lining-nums tabular-nums;
}
table caption {
margin-bottom: 0.75em;
}
tbody {
margin-top: 0.5em;
border-top: 1px solid #1a1a1a;
border-bottom: 1px solid #1a1a1a;
}
th {
border-top: 1px solid #1a1a1a;
padding: 0.25em 0.5em 0.25em 0.5em;
}
td {
padding: 0.125em 0.5em 0.25em 0.5em;
}
header {
margin-bottom: 4em;
text-align: center;
}
#TOC li {
list-style: none;
}
#TOC ul {
padding-left: 1.3em;
}
#TOC > ul {
padding-left: 0;
}
#TOC a:not(:hover) {
text-decoration: none;
}
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<script
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js"
type="text/javascript"></script>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<h1 id="travail-pratique-de-programmation-séquentielle-en-c">Travail
pratique de programmation séquentielle en C</h1>
<h2 id="élèves-concernés-participants">Élèves concernés /
Participants</h2>
<ul>
<li>Ackermann Gawen</li>
<li>Dymarczyk Dawid</li>
<li>Moscheni Romain</li>
<li>Ho William</li>
<li>Rüegger Yann</li>
</ul>
<h2 id="énoncé">Énoncé</h2>
<h3 id="nom-du-projet">Nom du projet</h3>
<p>Galaxie</p>
<h3 id="mise-en-contexte">Mise en contexte</h3>
<p>De nos jours, à l’aide de simulateur d’orbite, nous pouvons prédire
les mouvements d’objets célestes. Par conséquent, anticiper les dangers
qu’une collision entre deux corps pourrait engendrer.</p>
<figure>
<img src="img/galaxy.jpg" title="Voie Lactée" alt="Voie Lactée" />
<figcaption aria-hidden="true">Voie Lactée</figcaption>
</figure>
<h3 id="objectif">Objectif</h3>
<p>Le but de ce projet est de mettre en application les lois
fondamentales de Newton ainsi que l’algorithme de Barnes-Hut dans une
simulation de la galaxie en 2 dimensions, ce qui nous permettera de
mettre en place de l’approximation de calculs.</p>
<h4 id="les-lois-fondamentales-de-newton">Les lois fondamentales de
Newton</h4>
<p>Les lois fondamentales de Newton se décomposent en 3 parties
disctinctes.</p>
<h5 id="inertie">Inertie</h5>
<p>L’inertie est le comportement naturel d’un corps se déplaçant en
ligne droite à vitesse constante. En l’absence d’influences extérieures,
le mouvement d’un corps préserve est inchangé.</p>
<h5 id="dynamique">Dynamique</h5>
<p>La dynamique représente le momentum, dépendant de sa masse, sa
vitesse et sa direction.</p>
<p><span class="math display">\[F = m \vec{a}\]</span></p>
<h5 id="réciproque-action-réaction">Réciproque / Action-réaction</h5>
<p>La réciproque, comme son nom l’indique, va exercer une force opposée
strictement équivalente à celle subit.</p>
<p><span class="math display">\[F_{ab} \rArr -F_{ba}\]</span></p>
<h4 id="lalgorithme-de-barnes-hut">L’algorithme de Barnes-Hut</h4>
<p>L’algorithme de Barnes-Hut est utilisé afin d’approximer des
simulations à <span class="math inline">\(n\)</span> corps. Il utilise
le principe de subdivisions utilisé par les arbres quaternaires. Chaque
cellule sera une approximation moyenne des éléments présent. Si cette
valeur est plus petite qu’une valeur arbitraire, on rassemble l’ensemble
des valeurs présentent dans les cellules pour n’en former plus qu’une,
afin de réduire les calculs à effectuer.</p>
<figure>
<img src="img/bh_tree.png" title="Un arbre de Barnes-Hut"
alt="Arbre de Barnes-Hut" />
<figcaption aria-hidden="true">Arbre de Barnes-Hut</figcaption>
</figure>
<h3 id="condition-initiale">Condition initiale</h3>
<p>En son centre il y aura un objet célèste avec une immense masse
solaire et tous les objets célèstes autre seront placés de manières
éparses sur l’écran avec des vitesses et masses aléatoires.</p>
<h3 id="cahier-des-charges">Cahier des charges</h3>
<h4 id="simulation-de-galaxie">Simulation de galaxie</h4>
<ul>
<li>Pour chaque objets célestes
<ul>
<li>Calculer les forces et accélérations
<ul>
<li><span class="math display">\[\frac{Gm_am_b}{r²}\]</span>
<ul>
<li><span class="math inline">\(G\)</span> étant la constante de
gravitation,</li>
<li><span class="math inline">\(m\)</span> la masse de l’objet
céleste</li>
<li><span class="math inline">\(r\)</span> est la distance entre <span
class="math inline">\(a\)</span> et <span
class="math inline">\(b\)</span></li>
</ul></li>
</ul></li>
<li><span class="math display">\[F=m\vec{a}\]</span></li>
<li>Déplacer les objets célestes
<ul>
<li>Additionner l’accélération multipliée à l’interval (<span
class="math inline">\(\Delta t\)</span>) au carré à la position
courante</li>
<li>Augmenter le <span class="math inline">\(\Delta t\)</span></li>
</ul></li>
</ul></li>
<li>Afficher</li>
</ul>
<h4 id="arbre-quaternaire">Arbre quaternaire</h4>
<h5 id="fonctions-de-base">Fonctions de base</h5>
<ul>
<li>Implémenter l’arbre quaternaire
<ul>
<li>Création</li>
<li>Insertion</li>
<li>Parcours</li>
<li>Suppression</li>
</ul></li>
</ul>
<h5 id="algorithme-général-dinsertion-dobjets-célèstes">Algorithme
général d’insertion d’objets célèstes</h5>
<ul>
<li>Initialiser les objets célestes</li>
<li>Tant la liste des objets célestes n’est pas finie
<ul>
<li>Si le noeud est vide
<ul>
<li>Placer l’objet céleste</li>
<li>Sinon, subdiviser en 4
<ul>
<li>Créer un noeud et placer la racine en tant qu</li>
</ul></li>
</ul></li>
</ul></li>
</ul>
</body>
</html>
\ No newline at end of file
......@@ -48,7 +48,7 @@ $$F_{ab} \rArr -F_{ba}$$
L'algorithme de Barnes-Hut est utilisé afin d'approximer des simulations à $n$ corps. Il utilise le principe de subdivisions utilisé par les arbres quaternaires. Chaque cellule sera une approximation moyenne des éléments présent. Si cette valeur est plus petite qu'une valeur arbitraire, on rassemble l'ensemble des valeurs présentent dans les cellules pour n'en former plus qu'une, afin de réduire les calculs à effectuer.
![Arbre de Barnes-Hut](img/bh_tree.svg "Un arbre de Barnes-Hut")
![Arbre de Barnes-Hut](img/bh_tree.png "Un arbre de Barnes-Hut")
### Condition initiale
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment