diff --git a/slides/cours_21.md b/slides/cours_21.md
index 8afc677bad2b73ec786e55e06ea0e3c4b4015250..102aaf02ae8da80a31b592039745cf4335cd7652 100644
--- a/slides/cours_21.md
+++ b/slides/cours_21.md
@@ -776,5 +776,59 @@ rien insertion_etoile(arbre, e)
 
 ![](figs/force_6.png)
 
-* Les noeuds sont des feuilles, ils sont acceptés.
+* Les noeuds sont des feuilles, on calcule la force.
 * On ajoute la force qu'ils exercent sur `1`.
+
+# Algorithme pour le calcul de la force
+
+Pour calculer la force sur un corps `c`, on parcourt l'arbre en commençant par la racine:
+
+* Si le noeud `n` est une feuille et n'est pas `c`, on ajoute la force dûe à `n` sur `c`;
+* Sinon si $s/d<\theta$, on traite `n` comme une feuille et on ajoute la force dûe à `n` sur `c`;
+* Sinon on continue sur les enfants récursivement.
+
+
+## Cotinuous notre exemple précédent!
+
+# Calcul de la force
+
+## Calcul de la force sur `1`
+
+![](figs/force_7.png)
+
+* Il y a deux corps dans le quadrant vert.
+* Quel est le critère pour remplacer les étoiles par leur centre de masse?
+
+. . .
+
+* Et oui! $d>2s$ on peut remplacer les étoiles par leur centre de masse!
+
+# Algorithme du calcul de force
+
+## Écrire le psuedo-code du calcul de la force
+
+```C
+rien maj_force_sur_etoile(arbre, e, theta)
+    si est_vide(arbre) ou !existe(e)
+        retourne
+    if (!n || !p) {
+        return;
+    }
+
+    // if the node is a leaf and contains a particle which and the particle is not
+    // in the bounding box of the node (this means that we are at a particle on 
+    // a different leaf).
+    if (node_is_leaf(n) && !node_is_empty(n) && !is_inside(n->b, p->pos)) {
+        update_acceleration(p, n->p);
+    }
+    // else if the node is far enough of the particle
+    else if (node_is_far_enough(n, p, theta)) {
+        update_acceleration(p, n->super_p);
+    }
+    else { // else just update the acceleration recurively
+        for (int i = 0; i < 4; ++i) {
+            update_acceleration_from_node_on_particle(n->children[i], p, theta);
+        }
+    }
+}
+```
diff --git a/slides/figs/force_7.png b/slides/figs/force_7.png
new file mode 100644
index 0000000000000000000000000000000000000000..751ef2e9d7d7a6ed16f5cc7a2e7d9cb48b03efe1
Binary files /dev/null and b/slides/figs/force_7.png differ