Skip to content
Snippets Groups Projects
Commit 4c0c8a12 authored by Florian Burgener's avatar Florian Burgener
Browse files

Update rapport.d

parent c13bf61e
No related branches found
No related tags found
No related merge requests found
rapport/assets/results_simulation_pred_1.png

274 KiB | W: | H:

rapport/assets/results_simulation_pred_1.png

97.3 KiB | W: | H:

rapport/assets/results_simulation_pred_1.png
rapport/assets/results_simulation_pred_1.png
rapport/assets/results_simulation_pred_1.png
rapport/assets/results_simulation_pred_1.png
  • 2-up
  • Swipe
  • Onion skin
rapport/assets/results_simulation_pred_2.png

265 KiB

rapport/assets/results_simulation_res_1.png

359 KiB | W: | H:

rapport/assets/results_simulation_res_1.png

495 KiB | W: | H:

rapport/assets/results_simulation_res_1.png
rapport/assets/results_simulation_res_1.png
rapport/assets/results_simulation_res_1.png
rapport/assets/results_simulation_res_1.png
  • 2-up
  • Swipe
  • Onion skin
rapport/assets/results_simulation_res_2.png

489 KiB

rapport/assets/results_simulation_result.png

170 KiB | W: | H:

rapport/assets/results_simulation_result.png

170 KiB | W: | H:

rapport/assets/results_simulation_result.png
rapport/assets/results_simulation_result.png
rapport/assets/results_simulation_result.png
rapport/assets/results_simulation_result.png
  • 2-up
  • Swipe
  • Onion skin
---
title: Rapport lignes de champ électrique
author: Gawen Ackermann et Florian Burgener
---
# Rapport sur la création d'une simulation de lignes de champ électrique # Rapport sur la création d'une simulation de lignes de champ électrique
Gawen Ackermann et Florian Burgener <center>Gawen Ackermann et Florian Burgener</center>
## Introduction ## Introduction
...@@ -52,13 +57,13 @@ Afin de pouvoir dessiner les lignes de champ des diverses charges présentent da ...@@ -52,13 +57,13 @@ Afin de pouvoir dessiner les lignes de champ des diverses charges présentent da
On commence d'abord par calculer le point suivant avec le point courant (il faut utiliser le point d'origine lors de la première itération) et le champ électrique en ce point. Lors du calcul du champ électrique, si la norme de la distance entre le champ électrique et la charge est inférieure à une valeur arbitraire, alors la fonction qui s'occupe de ce calcul retourne faux, ce qui nous permet de savoir qu'il faut quitter la boucle car on considère que le point est trop proche de la particule. On commence d'abord par calculer le point suivant avec le point courant (il faut utiliser le point d'origine lors de la première itération) et le champ électrique en ce point. Lors du calcul du champ électrique, si la norme de la distance entre le champ électrique et la charge est inférieure à une valeur arbitraire, alors la fonction qui s'occupe de ce calcul retourne faux, ce qui nous permet de savoir qu'il faut quitter la boucle car on considère que le point est trop proche de la particule.
Dans un second temps, on vérifie que le point suivant se situe bel et bien dans l'univers, s'il n'y est pas on arrête le dessin de la ligne de champ car le bord de l'univers a été atteint. Finalement, on dessine une ligne entre le point courant et le nouveau point, puis on recommence depuis le début en en modifiant la valeur du point courant par la valeur du point suivant. Dans un second temps, on vérifie que le point suivant se situe bel et bien dans l'univers, s'il n'y est pas on arrête le dessin de la ligne de champ car le bord de l'univers a été atteint. Finalement, on dessine une ligne entre le point courant et le nouveau point, puis on recommence depuis le début en modifiant la valeur du point courant par la valeur du point suivant.
La ligne de champ est dessiné dans un sens puis dans l'autre, car sinon nous n'obtenons que la moitié de la ligne ! Les formules ci-dessous décrivent la façon dont le point suivant est calculé, la première formule permet de dessiner la ligne de champ dans un sens et la seconde formule dans l'autre. La ligne de champ est dessiné dans un sens puis dans l'autre, car sinon nous n'obtenons que la moitié de la ligne ! Les formules ci-dessous décrivent la façon dont le point suivant est calculé, la première formule permet de dessiner la ligne de champ dans un sens et la seconde formule dans l'autre.
$$ $$
P_{suivant} = P_{courant} + \delta x * \frac{\vec{E}}{\lvert\lvert \vec{E} \rvert\rvert}\\ P_{suivant} = P_{courant} + \delta x \cdot \frac{\vec{E}}{\lvert\lvert \vec{E} \rvert\rvert}\\
P_{suivant} = P_{courant} - \delta x * \frac{\vec{E}}{\lvert\lvert \vec{E} \rvert\rvert} P_{suivant} = P_{courant} - \delta x \cdot \frac{\vec{E}}{\lvert\lvert \vec{E} \rvert\rvert}
$$ $$
où $\vec{E}$ est le champ électrique au point $P_{courant}$. où $\vec{E}$ est le champ électrique au point $P_{courant}$.
...@@ -71,7 +76,11 @@ où ${width}$ et ${height}$ correspondant à la largeur et hauteur de la fenêtr ...@@ -71,7 +76,11 @@ où ${width}$ et ${height}$ correspondant à la largeur et hauteur de la fenêtr
## Résultats ## Résultats
Dans cette partie, nous allons détailler comment nous sommes arrivés à créer notre simulation de lignes de champ et pourquoi nous pensons que notre résultat est une bonne représentation du phénomène physique. Ci-dessous, vous pouvez observer le résultat de notre simulation avec deux particules. La première particule est chargée positivement et placée à la position x=0.25 et y=0.5, la deuxième particule est chargée négativement et placée à la position x=0.75 et y=0.5. Il est important de noter que notre univers est de taille [0, 1] x [0, 1], le point (0, 0) étant en haut à gauche et le point (1, 1) en bas à droite de l'écran. Dans cette partie, nous allons détailler comment nous sommes arrivés à créer notre simulation de lignes de champ et pourquoi nous pensons que notre résultat est une bonne représentation du phénomène physique. Nous allons commencer par quelques explications concernant la définition de la simulation. Cette dernière existe seulement dans un univers de taille ${[}0,1{]} \times {[}0,1{]}$, si nous affichons cet univers sur un écran le point $\begin{pmatrix} 0 \\ 0 \end{pmatrix}$ est en haut à gauche et le point $\begin{pmatrix} 1 \\ 1 \end{pmatrix}$ se situe en bas à droite. Tout ce qui pourrait exister en dehors de cette limite n'est pas calculé et par conséquent ni affiché.
Avant de discuter du résultat de la simulation, parlons d'abord des algorithmes que nous avons implémenté pour le dessin des lignes et le dessin des cercles. La fonction `gfx_draw_circle` dans notre code est une implémentation de [l'algorithme de tracé d'arc de cercle de Bresenham](https://fr.wikipedia.org/wiki/Algorithme_de_trac%C3%A9_d%27arc_de_cercle_de_Bresenham). En ce qui concerne le dessin de ligne notre fonction `gfx_draw_line` est une implémentation de [l'algorithme de tracé de segment de Bresenham](https://fr.wikipedia.org/wiki/Algorithme_de_trac%C3%A9_de_segment_de_Bresenham). À noter que ce dernier est très performant car il n'utilise pas de nombres flottants.
Nous allons maintenant démontrer que notre simulation est fidèle au phénomène physique du champ électrique. Ci-dessous, vous pouvez observer le résultat de notre simulation avec deux particules. La première particule est chargée négativement (d'une fois la charge élémentaire) et placée à la position $x=0.25$ et $y=0.5$, la deuxième particule est chargée positivement (d'une fois la charge élémentaire) et placée à la position $x=0.75$ et $y=0.5$.
| Résultat souhaité | Résultat obtenu | | Résultat souhaité | Résultat obtenu |
| :---------------------------------------: | :---------------------------------------: | | :---------------------------------------: | :---------------------------------------: |
...@@ -79,18 +88,21 @@ Dans cette partie, nous allons détailler comment nous sommes arrivés à créer ...@@ -79,18 +88,21 @@ Dans cette partie, nous allons détailler comment nous sommes arrivés à créer
En comparant l'image décrivant la théorie et le résultat de notre simulation, on observe que celle-ci ce comporte comme prédite. Cependant, nous allons créer deux configurations différentes supplémentaires afin de nous assuré que notre simulation est représentative du phénomène physique et cohérente par rapport à la théorie. En comparant l'image décrivant la théorie et le résultat de notre simulation, on observe que celle-ci ce comporte comme prédite. Cependant, nous allons créer deux configurations différentes supplémentaires afin de nous assuré que notre simulation est représentative du phénomène physique et cohérente par rapport à la théorie.
Afin de pouvoir valider notre simulation, nous avons utilisé ce site internet https://academo.org/demos/electric-field-line-simulator qui nous permet de créer des prédictions et de les comparer à notre simulation. Le site academo.org est un site gratuit qui met à disposition des resources sur de sujets comme les mathématiques, la physique, etc. Nous avons estimé qu'il était suffisament de confiance afin de pouvoir se baser dessus. Au dessus de chaque image est décris l'état de la particule de la façon suivante : (charge électrique, position). Afin de pouvoir valider notre simulation, nous avons utilisé ce site internet https://alienkevin.github.io/electric-fields/ qui nous permet de créer des prédictions et de les comparer à notre simulation. Ci-dessous se trouve notre résultat que vous comparez à la prédiction.
| Prédiction | Notre simulation |
| :---------------------------------------------------------: | :------------------------------------------------------: |
| Prédiction 1<br />![](assets/results_simulation_pred_1.png) | Résultat 1<br />![](assets/results_simulation_res_1.png) |
| Prédiction 2<br />![](assets/results_simulation_pred_2.png) | Résultat 2<br />![](assets/results_simulation_res_2.png) |
| Prédiction | Notre simulation | Ces deux cas ci-dessus étant beaucoup plus complexes que le résultat initial souhaité, s'ils sont justes, démontre que notre simulation l'est probablement aussi avec une haute certitude. Si l'on compare attentivement la prédiction 1 (celle-ci générer par le site) et le résultat 1 (celui de notre simulation) on voit qu'ils sont quasiment similaire et pareillement pour la deuxième situation. À ce stade nous concluons que notre simulation correspond bel et bien au modèle physique des lignes du champ électrique.
| :--------------------------: | :--------------------------: |
|Particule 1 (Q = 1, inconnue), Particule 2 (Q = -5, inconnue)![](assets/results_simulation_pred_1.png)| Particule 1 (Q = 1, (0.25, 0.8)), Particule 2 (Q = -5, (0.85, 0.2))![](assets/results_simulation_res_1.png) |
## Conclusion ## Conclusion
L'objectif de ce travail était de réaliser une simulation de lignes de champ électrique. Pour y arriver, nous avons utilisé la formule du champ électrique qui est une transformation de loi de Coulomb et nous avons également créer un algorithme permettant d'effectuer le dessin des lignes de champ en fonction de plusieurs charges placé aléatoirement dans univers discrétisé. L'objectif de ce travail était de réaliser une simulation de lignes de champ électrique. Pour y arriver, nous avons utilisé la formule du champ électrique qui est une transformation de loi de Coulomb et nous avons également créer un algorithme permettant d'effectuer le dessin des lignes de champ en fonction de plusieurs charges placées aléatoirement dans univers discrétisé.
Nous avons démontré par le biais de divers exemples dans la partie "Résultats" de ce rapport que notre simulation est fidèle au phénomène physique du champ électrique. Nous avons démontré par le biais de divers exemples dans la partie "Résultats" de ce rapport que notre simulation est fidèle au phénomène physique du champ électrique.
Bien évidemment, ce travail peut-être amélioré de diverses manières et nous allons décrire ci-après 3 améliorations que nous aimerions lui apporter. La première amélioration serait l'ajout du déplacement des particules en temps réel. Les particules devraient s'attirer et se répulser comme dans la réalité et nous devrions pouvoir observer l'évolution des ligne de champ. La deuxième amélioration serait l'affichage de flèches directionnels sur les ligne de champ qui indiqueraient leur direction comme sur la figure 1 dans l'introduction de ce rapport. La dernière amélioration serait une extension du temps réel en ajoutant la possibilité de pouvoir se déplacer dans le temps et de revenir à un état précédent de la simulation. Par exemple de retourner de 3 secondes dans le passé de la simulation. Bien évidemment, ce travail peut-être amélioré de diverses manières et nous allons décrire ci-après 3 améliorations que nous aimerions lui apporter. La première amélioration serait l'ajout du déplacement des particules en temps réel. Les particules devraient s'attirer et se répulser comme dans la réalité et nous devrions pouvoir observer l'évolution des lignes de champ. La deuxième amélioration serait l'affichage de flèches directionnelles sur les lignes de champ qui indiqueraient leur direction comme sur la figure 1 dans l'introduction de ce rapport. La dernière amélioration serait une extension du temps réel en ajoutant la possibilité de pouvoir se déplacer dans le temps et de revenir à un état précédent de la simulation. Par exemple de retourner de 3 secondes dans le passé de la simulation.
Finalement, nous considérons avoir atteint l'objectif fixé et par conséquent ceci conclu ce rapport. Finalement, nous considérons avoir atteint l'objectif fixé et par conséquent ceci conclu ce rapport.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment