Skip to content
Snippets Groups Projects
Verified Commit 5610db20 authored by orestis.malaspin's avatar orestis.malaspin
Browse files

updated last slide

parent 71fcdfde
No related branches found
No related tags found
No related merge requests found
......@@ -813,26 +813,14 @@ Pour calculer la force sur un corps `c`, on parcourt l'arbre en commençant par
```C
rien maj_force_sur_etoile(arbre, e, theta)
si est_vide(arbre) ou !existe(e)
si est_vide(arbre)
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);
}
}
}
si est_feuille(arbre) && contient_etoile(n) && dans_le_quadrant(arbre.q, e.x)
maj_force(e, arbre.e)
sinon si noed_assez_loin(arbre, e, theta)
maj_force(e, arbre.sup_etoile)
sinon
pour enfant dans enfants
maj_force_sur_etoile(enfant, e, theta)
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment