From f52a7320ee76b5f64ae572dc8c9bc38f0389ff1a Mon Sep 17 00:00:00 2001
From: Jean-Claude Iehl <jean-claude.iehl@univ-lyon1.fr>
Date: Wed, 20 Mar 2024 14:38:51 +0000
Subject: [PATCH] Update correction.md

---
 code/correction.md | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/code/correction.md b/code/correction.md
index c67b650..7eeac5e 100644
--- a/code/correction.md
+++ b/code/correction.md
@@ -32,7 +32,7 @@ for(i < samples*width*height)
     float x= rng.sample()
     float y= rng.sample()
     // verifie que le ieme sample correspond à un pixel de l'image
-    // genere le rayon pour le point (x * width, y * height)
+    // genere le rayon pour le point (x * width, y * height) sur le plan image
 ```
 
 si l'image est carrée et son coté est une puissance de 2, tous les points correspondent à un pixel. sinon, il faut trouver la puissance de 2 pour se retrouver dans le bon cas et éliminer tous les points qui ne correspondent pas à un pixel.
@@ -64,6 +64,20 @@ bien sur l'estimateur est le même que d'habitude, il convergera vers une image
 
 ## même séquence par pixel 
 
+une solution alternative, est d'utiliser une séquence par pixel. que se passe-t-il si on construit mal les permutations de la séquence, ou si on utilise la séquence directement ?
+
+pour reproduire les exemples, il suffit d'utiliser le sampler Sobol et son contructeur par défaut. par exemple, dans ao.cpp, il suffit de remplacer :
+```
+Sampler rng( seed );
+```
+par
+```
+Sobol rng; // meme sequence par pixel
+```
+
+voila les résultats, sans trop de surprise, c'est moche !!
+
+
 
 ## bilan
 
-- 
GitLab