diff --git a/Examples/demo_2D_real-time.py b/Examples/demo_2D_real-time.py
index 43160e11d9f4fbd9dc444a259e3bf6c23ccfd2c2..9c480995c5df0fb281e90b0876b6469a26e1b391 100755
--- a/Examples/demo_2D_real-time.py
+++ b/Examples/demo_2D_real-time.py
@@ -70,14 +70,17 @@ def run(nb=257):
 
     ## Setting solver to Problem
     pb.setUp(finalTime, timeStep)
-    scalar_initial = np.copy(scal.discreteField[0].data)
+    ## We copy the first discretisation of scalar 
+    scalar_initial = np.copy(scal.discreteFields.keys()[0].data)
 
     ## Solve problem
     pb.solve()
 
-    scal.discreteField[0].toHost()
-    print 'Erreur : ', np.max(np.abs(scalar_initial - scal.discreteField[0].data))/np.max(scalar_initial)
-    print np.linalg.norm(scalar_initial - scal.discreteField[0].data, ord=2)/np.linalg.norm(scalar_initial, ord=2)
+    scal_disc = scal.discreteFields.keys()[0]
+    scal_disc.toHost()
+    print 'Erreur : ', np.max(np.abs(scalar_initial -
+                                     scal_disc.data)) / np.max(scalar_initial)
+    print np.linalg.norm(scalar_initial - scal_disc.data, ord=2)/np.linalg.norm(scalar_initial, ord=2)
 
     pb.finalize()