diff --git a/parmorceauxMax-git/AAAAAAA.m b/parmorceauxMax-git/AAAAAAA.m
new file mode 100644
index 0000000000000000000000000000000000000000..7fc4b48e6bbd48caaee2c6513fe9c7e692137c77
--- /dev/null
+++ b/parmorceauxMax-git/AAAAAAA.m
@@ -0,0 +1,77 @@
+
+y=load('HTN301.txt');
+i=1;
+Y=zeros(25,1);
+while (i<=25);
+    Y(i,1)=y(i,1)/max(y);
+    i=i+1;
+end
+X=[1:25]';
+y1=load('HTN302.txt');
+i=1;
+Y1=zeros(25,1);
+while (i<=25);
+    Y1(i,1)=y1(i,1)/max(y1);
+    i=i+1;
+end
+y2=load('HTN233.txt');
+i=1;
+Y2=zeros(25,1);
+while (i<=25);
+    Y2(i,1)=y2(i,1)/max(y2);
+    i=i+1;
+end
+y3=load('HTN178.txt');
+i=1;
+Y3=zeros(25,1);
+while (i<=25);
+    Y3(i,1)=y3(i,1)/max(y3);
+    i=i+1;
+end
+y4=load('HTN188.txt');
+i=1;
+Y4=zeros(25,1);
+while (i<=25);
+    Y4(i,1)=y4(i,1)/max(y4);
+    i=i+1;
+end
+y5=load('HTN307.txt');
+i=1;
+Y5=zeros(25,1);
+while (i<=25);
+    Y5(i,1)=y5(i,1)/max(y5);
+    i=i+1;
+end
+y6=load('HTN303.txt');
+i=1;
+Y6=zeros(25,1);
+while (i<=25);
+    Y6(i,1)=y6(i,1)/max(y6);
+    i=i+1;
+end
+y7=load('HTN304.txt');
+i=1;
+Y7=zeros(25,1);
+while (i<=25);
+    Y7(i,1)=y7(i,1)/max(y7);
+    i=i+1;
+end
+y8=load('HTN263.txt');
+i=1;
+Y8=zeros(25,1);
+while (i<=25);
+    Y8(i,1)=y8(i,1)/max(y8);
+    i=i+1;
+end
+
+Y
+Y1
+Y2
+Y3
+Y4
+Y5
+Y6
+Y7
+Y8
+
+plot(X,Y,X,Y1,X,Y2,X,Y3,X,Y4,X,Y5,X,Y6,X,Y7,X,Y8)
diff --git a/parmorceauxMax-git/CSN1.png b/parmorceauxMax-git/CSN1.png
new file mode 100644
index 0000000000000000000000000000000000000000..e8b3b29170960fabfaf602d644091feae6a7930e
Binary files /dev/null and b/parmorceauxMax-git/CSN1.png differ
diff --git a/parmorceauxMax-git/CSN1.txt b/parmorceauxMax-git/CSN1.txt
new file mode 100644
index 0000000000000000000000000000000000000000..fce16abc29fab6847b622375b440d045c43d8f0b
--- /dev/null
+++ b/parmorceauxMax-git/CSN1.txt
@@ -0,0 +1,25 @@
+2.017900000000000000e+04
+1.976600000000000000e+04
+1.977000000000000000e+04
+1.913400000000000000e+04
+1.780200000000000000e+04
+1.588600000000000000e+04
+1.366500000000000000e+04
+1.152300000000000000e+04
+1.003000000000000000e+04
+8.939000000000000000e+03
+8.192000000000000000e+03
+7.745000000000000000e+03
+7.575000000000000000e+03
+8.001000000000000000e+03
+9.417000000000000000e+03
+1.211100000000000000e+04
+1.446000000000000000e+04
+1.609800000000000000e+04
+1.707000000000000000e+04
+1.750200000000000000e+04
+1.775100000000000000e+04
+1.781000000000000000e+04
+1.801400000000000000e+04
+1.836400000000000000e+04
+1.923300000000000000e+04
diff --git a/parmorceauxMax-git/CSN10.png b/parmorceauxMax-git/CSN10.png
new file mode 100644
index 0000000000000000000000000000000000000000..c8ce98efacc7db6b7b9db74f7aa986729d06a870
Binary files /dev/null and b/parmorceauxMax-git/CSN10.png differ
diff --git a/parmorceauxMax-git/CSN10.txt b/parmorceauxMax-git/CSN10.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ab87567ac14d573d50edb8847eadcf6c51229a89
--- /dev/null
+++ b/parmorceauxMax-git/CSN10.txt
@@ -0,0 +1,25 @@
+3.376800000000000000e+04
+3.171500000000000000e+04
+3.075100000000000000e+04
+2.923700000000000000e+04
+2.593200000000000000e+04
+2.261800000000000000e+04
+1.964100000000000000e+04
+1.677100000000000000e+04
+1.454600000000000000e+04
+1.332800000000000000e+04
+1.303400000000000000e+04
+1.384100000000000000e+04
+1.579800000000000000e+04
+1.962600000000000000e+04
+2.428500000000000000e+04
+2.717400000000000000e+04
+2.902500000000000000e+04
+3.026900000000000000e+04
+3.109500000000000000e+04
+3.127400000000000000e+04
+3.144300000000000000e+04
+3.153200000000000000e+04
+3.203500000000000000e+04
+3.225000000000000000e+04
+3.345200000000000000e+04
diff --git a/parmorceauxMax-git/CSN11.png b/parmorceauxMax-git/CSN11.png
new file mode 100644
index 0000000000000000000000000000000000000000..891e085b30f17307f2a61cb7c3085e0612d1e923
Binary files /dev/null and b/parmorceauxMax-git/CSN11.png differ
diff --git a/parmorceauxMax-git/CSN11.txt b/parmorceauxMax-git/CSN11.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9d27265eb52db092c58e73886cc754dbb94d0877
--- /dev/null
+++ b/parmorceauxMax-git/CSN11.txt
@@ -0,0 +1,25 @@
+2.268700000000000000e+04
+2.247200000000000000e+04
+2.212400000000000000e+04
+2.092100000000000000e+04
+1.870700000000000000e+04
+1.602300000000000000e+04
+1.269400000000000000e+04
+1.034000000000000000e+04
+8.903000000000000000e+03
+7.947000000000000000e+03
+7.424000000000000000e+03
+7.323000000000000000e+03
+7.685000000000000000e+03
+9.002000000000000000e+03
+1.196400000000000000e+04
+1.442900000000000000e+04
+1.618700000000000000e+04
+1.727900000000000000e+04
+1.769900000000000000e+04
+1.776000000000000000e+04
+1.781600000000000000e+04
+1.814000000000000000e+04
+1.884200000000000000e+04
+2.003500000000000000e+04
+2.150200000000000000e+04
diff --git a/parmorceauxMax-git/CSN13.png b/parmorceauxMax-git/CSN13.png
new file mode 100644
index 0000000000000000000000000000000000000000..df08874f1adf3e84c14caba97248aeacf8882310
Binary files /dev/null and b/parmorceauxMax-git/CSN13.png differ
diff --git a/parmorceauxMax-git/CSN13.txt b/parmorceauxMax-git/CSN13.txt
new file mode 100644
index 0000000000000000000000000000000000000000..efc8dc75b4ae8b8b2e4e88cb1ed71e6fe390a426
--- /dev/null
+++ b/parmorceauxMax-git/CSN13.txt
@@ -0,0 +1,25 @@
+1.736900000000000000e+04
+1.652300000000000000e+04
+1.634900000000000000e+04
+1.580100000000000000e+04
+1.485800000000000000e+04
+1.337000000000000000e+04
+1.142100000000000000e+04
+9.695000000000000000e+03
+7.768000000000000000e+03
+6.748000000000000000e+03
+6.289000000000000000e+03
+6.200000000000000000e+03
+6.378000000000000000e+03
+6.719000000000000000e+03
+7.334000000000000000e+03
+8.389000000000000000e+03
+1.061000000000000000e+04
+1.222300000000000000e+04
+1.398700000000000000e+04
+1.486200000000000000e+04
+1.549200000000000000e+04
+1.592200000000000000e+04
+1.640500000000000000e+04
+1.671900000000000000e+04
+1.704100000000000000e+04
diff --git a/parmorceauxMax-git/CSN14.png b/parmorceauxMax-git/CSN14.png
new file mode 100644
index 0000000000000000000000000000000000000000..9ee1089d8c557d0a33b90c49218849f6554f66b2
Binary files /dev/null and b/parmorceauxMax-git/CSN14.png differ
diff --git a/parmorceauxMax-git/CSN14.txt b/parmorceauxMax-git/CSN14.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a8263492083335ff7b531548a481bb01ebd39eab
--- /dev/null
+++ b/parmorceauxMax-git/CSN14.txt
@@ -0,0 +1,25 @@
+2.652400000000000000e+04
+2.640600000000000000e+04
+2.540400000000000000e+04
+2.391200000000000000e+04
+2.147700000000000000e+04
+1.926400000000000000e+04
+1.642100000000000000e+04
+1.379600000000000000e+04
+1.226800000000000000e+04
+1.127000000000000000e+04
+1.079500000000000000e+04
+1.068400000000000000e+04
+1.111100000000000000e+04
+1.265200000000000000e+04
+1.498500000000000000e+04
+1.744200000000000000e+04
+2.043600000000000000e+04
+2.228500000000000000e+04
+2.340300000000000000e+04
+2.410900000000000000e+04
+2.462700000000000000e+04
+2.494900000000000000e+04
+2.532000000000000000e+04
+2.581900000000000000e+04
+2.629300000000000000e+04
diff --git a/parmorceauxMax-git/CSN15.png b/parmorceauxMax-git/CSN15.png
new file mode 100644
index 0000000000000000000000000000000000000000..d1d43de1f875c368e1d50072f4aaa1de9fda5827
Binary files /dev/null and b/parmorceauxMax-git/CSN15.png differ
diff --git a/parmorceauxMax-git/CSN15.txt b/parmorceauxMax-git/CSN15.txt
new file mode 100644
index 0000000000000000000000000000000000000000..40ecab7bbae8b34f4d68745e4b8ae17a3b24665d
--- /dev/null
+++ b/parmorceauxMax-git/CSN15.txt
@@ -0,0 +1,25 @@
+2.660500000000000000e+04
+2.531800000000000000e+04
+2.480100000000000000e+04
+2.295800000000000000e+04
+2.064300000000000000e+04
+1.665200000000000000e+04
+1.365800000000000000e+04
+1.103800000000000000e+04
+9.453000000000000000e+03
+8.820000000000000000e+03
+8.845000000000000000e+03
+9.161000000000000000e+03
+1.021800000000000000e+04
+1.425800000000000000e+04
+1.737500000000000000e+04
+1.917800000000000000e+04
+2.030300000000000000e+04
+2.084300000000000000e+04
+2.115400000000000000e+04
+2.122800000000000000e+04
+2.130100000000000000e+04
+2.158400000000000000e+04
+2.229400000000000000e+04
+2.373700000000000000e+04
+2.566600000000000000e+04
diff --git a/parmorceauxMax-git/CSN16.png b/parmorceauxMax-git/CSN16.png
new file mode 100644
index 0000000000000000000000000000000000000000..37584e55422b7772bdd9da9a7a3075cae365177b
Binary files /dev/null and b/parmorceauxMax-git/CSN16.png differ
diff --git a/parmorceauxMax-git/CSN16.txt b/parmorceauxMax-git/CSN16.txt
new file mode 100644
index 0000000000000000000000000000000000000000..976c63cfbcf92308770fd35d5c634c598db1ead8
--- /dev/null
+++ b/parmorceauxMax-git/CSN16.txt
@@ -0,0 +1,25 @@
+2.709200000000000000e+04
+2.706800000000000000e+04
+2.519600000000000000e+04
+2.370600000000000000e+04
+2.103900000000000000e+04
+1.791700000000000000e+04
+1.312300000000000000e+04
+9.875000000000000000e+03
+8.311000000000000000e+03
+8.105000000000000000e+03
+8.931000000000000000e+03
+1.288900000000000000e+04
+1.801300000000000000e+04
+2.191300000000000000e+04
+2.384200000000000000e+04
+2.479900000000000000e+04
+2.516600000000000000e+04
+2.544700000000000000e+04
+2.567700000000000000e+04
+2.582800000000000000e+04
+2.601000000000000000e+04
+2.601200000000000000e+04
+2.610900000000000000e+04
+2.639100000000000000e+04
+2.677800000000000000e+04
diff --git a/parmorceauxMax-git/CSN17.png b/parmorceauxMax-git/CSN17.png
new file mode 100644
index 0000000000000000000000000000000000000000..adfaa0c7a5f647b42ebc3b71a9fba3661d01429c
Binary files /dev/null and b/parmorceauxMax-git/CSN17.png differ
diff --git a/parmorceauxMax-git/CSN17.txt b/parmorceauxMax-git/CSN17.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2fa70da04f69d3124e9546ea7186d0af54a4ab3a
--- /dev/null
+++ b/parmorceauxMax-git/CSN17.txt
@@ -0,0 +1,25 @@
+3.605400000000000000e+04
+3.484400000000000000e+04
+3.421400000000000000e+04
+3.185700000000000000e+04
+2.948100000000000000e+04
+2.687900000000000000e+04
+2.359400000000000000e+04
+2.001800000000000000e+04
+1.770300000000000000e+04
+1.631400000000000000e+04
+1.553600000000000000e+04
+1.533000000000000000e+04
+1.595300000000000000e+04
+1.729700000000000000e+04
+2.052400000000000000e+04
+2.386800000000000000e+04
+2.609400000000000000e+04
+2.758700000000000000e+04
+2.868600000000000000e+04
+2.951300000000000000e+04
+2.996100000000000000e+04
+3.046100000000000000e+04
+3.130100000000000000e+04
+3.286800000000000000e+04
+3.511800000000000000e+04
diff --git a/parmorceauxMax-git/CSN18.png b/parmorceauxMax-git/CSN18.png
new file mode 100644
index 0000000000000000000000000000000000000000..cbd57d878550a724ad25ac83505cf58ace3a29e8
Binary files /dev/null and b/parmorceauxMax-git/CSN18.png differ
diff --git a/parmorceauxMax-git/CSN18.txt b/parmorceauxMax-git/CSN18.txt
new file mode 100644
index 0000000000000000000000000000000000000000..661a529e7c85f22333dfb4fb777d268cadcdbf9d
--- /dev/null
+++ b/parmorceauxMax-git/CSN18.txt
@@ -0,0 +1,25 @@
+3.408500000000000000e+04
+3.201200000000000000e+04
+3.125700000000000000e+04
+2.990300000000000000e+04
+2.747100000000000000e+04
+2.287100000000000000e+04
+1.871000000000000000e+04
+1.541500000000000000e+04
+1.241400000000000000e+04
+1.118600000000000000e+04
+1.103600000000000000e+04
+1.201600000000000000e+04
+1.533400000000000000e+04
+2.024100000000000000e+04
+2.562000000000000000e+04
+2.824300000000000000e+04
+2.945100000000000000e+04
+3.022500000000000000e+04
+3.083100000000000000e+04
+3.111400000000000000e+04
+3.143500000000000000e+04
+3.159700000000000000e+04
+3.210700000000000000e+04
+3.293500000000000000e+04
+3.363500000000000000e+04
diff --git a/parmorceauxMax-git/CSN19.png b/parmorceauxMax-git/CSN19.png
new file mode 100644
index 0000000000000000000000000000000000000000..4ad68e69f021a512871626aaf17f997d6cd4eddf
Binary files /dev/null and b/parmorceauxMax-git/CSN19.png differ
diff --git a/parmorceauxMax-git/CSN19.txt b/parmorceauxMax-git/CSN19.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f749193af1130f2f2db405ed210bca95543ab0b1
--- /dev/null
+++ b/parmorceauxMax-git/CSN19.txt
@@ -0,0 +1,25 @@
+4.594800000000000000e+04
+4.275500000000000000e+04
+4.029700000000000000e+04
+3.518600000000000000e+04
+3.160000000000000000e+04
+2.690200000000000000e+04
+2.273600000000000000e+04
+2.007000000000000000e+04
+1.909400000000000000e+04
+1.637800000000000000e+04
+1.719600000000000000e+04
+1.959900000000000000e+04
+2.504400000000000000e+04
+3.037400000000000000e+04
+3.373900000000000000e+04
+3.646800000000000000e+04
+3.795000000000000000e+04
+3.880600000000000000e+04
+3.928900000000000000e+04
+3.991600000000000000e+04
+4.074800000000000000e+04
+4.103900000000000000e+04
+4.169200000000000000e+04
+4.325400000000000000e+04
+4.536500000000000000e+04
diff --git a/parmorceauxMax-git/CSN2.png b/parmorceauxMax-git/CSN2.png
new file mode 100644
index 0000000000000000000000000000000000000000..229682efd05052ac828c311055f0c4b801d2b3f9
Binary files /dev/null and b/parmorceauxMax-git/CSN2.png differ
diff --git a/parmorceauxMax-git/CSN2.txt b/parmorceauxMax-git/CSN2.txt
new file mode 100644
index 0000000000000000000000000000000000000000..6e137b66486dc4fd7b24d53abb5fb12537a66418
--- /dev/null
+++ b/parmorceauxMax-git/CSN2.txt
@@ -0,0 +1,25 @@
+4.595000000000000000e+04
+4.366700000000000000e+04
+4.311500000000000000e+04
+4.153000000000000000e+04
+3.887800000000000000e+04
+3.541100000000000000e+04
+3.127400000000000000e+04
+2.777600000000000000e+04
+2.468400000000000000e+04
+2.226200000000000000e+04
+2.044700000000000000e+04
+1.927200000000000000e+04
+1.943300000000000000e+04
+1.979900000000000000e+04
+2.048000000000000000e+04
+2.146100000000000000e+04
+2.429300000000000000e+04
+2.818800000000000000e+04
+3.126500000000000000e+04
+3.430900000000000000e+04
+3.675500000000000000e+04
+3.941300000000000000e+04
+4.223500000000000000e+04
+4.408400000000000000e+04
+4.511000000000000000e+04
diff --git a/parmorceauxMax-git/CSN20.png b/parmorceauxMax-git/CSN20.png
new file mode 100644
index 0000000000000000000000000000000000000000..22c155ae233319f2a00f73406784cfdd6beee2d5
Binary files /dev/null and b/parmorceauxMax-git/CSN20.png differ
diff --git a/parmorceauxMax-git/CSN20.txt b/parmorceauxMax-git/CSN20.txt
new file mode 100644
index 0000000000000000000000000000000000000000..4366df34f0a668a17d68d7052945156c8d1cc62a
--- /dev/null
+++ b/parmorceauxMax-git/CSN20.txt
@@ -0,0 +1,25 @@
+2.803600000000000000e+04
+2.691200000000000000e+04
+2.683100000000000000e+04
+2.627300000000000000e+04
+2.509800000000000000e+04
+2.303000000000000000e+04
+2.048200000000000000e+04
+1.818400000000000000e+04
+1.537200000000000000e+04
+1.354900000000000000e+04
+1.234300000000000000e+04
+1.138500000000000000e+04
+1.035600000000000000e+04
+1.000900000000000000e+04
+1.007100000000000000e+04
+1.071700000000000000e+04
+1.262400000000000000e+04
+1.486100000000000000e+04
+1.764100000000000000e+04
+1.927100000000000000e+04
+2.083100000000000000e+04
+2.232500000000000000e+04
+2.393300000000000000e+04
+2.564500000000000000e+04
+2.706900000000000000e+04
diff --git a/parmorceauxMax-git/CSN4.png b/parmorceauxMax-git/CSN4.png
new file mode 100644
index 0000000000000000000000000000000000000000..749a816e9f41bbf0ad0449a8572a272aec610aef
Binary files /dev/null and b/parmorceauxMax-git/CSN4.png differ
diff --git a/parmorceauxMax-git/CSN4.txt b/parmorceauxMax-git/CSN4.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0667d90006169c6c0b2a6553624711a4d4ba7914
--- /dev/null
+++ b/parmorceauxMax-git/CSN4.txt
@@ -0,0 +1,25 @@
+2.857200000000000000e+04
+2.741300000000000000e+04
+2.722200000000000000e+04
+2.608300000000000000e+04
+2.408000000000000000e+04
+2.122600000000000000e+04
+1.778300000000000000e+04
+1.440000000000000000e+04
+1.178500000000000000e+04
+1.016900000000000000e+04
+9.667000000000000000e+03
+9.852000000000000000e+03
+1.038700000000000000e+04
+1.164100000000000000e+04
+1.421300000000000000e+04
+1.697100000000000000e+04
+1.935800000000000000e+04
+2.095900000000000000e+04
+2.213600000000000000e+04
+2.331000000000000000e+04
+2.418400000000000000e+04
+2.476700000000000000e+04
+2.544300000000000000e+04
+2.648700000000000000e+04
+2.760900000000000000e+04
diff --git a/parmorceauxMax-git/CSN5.png b/parmorceauxMax-git/CSN5.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec9b4c6953a8ddeeb751afa76f9c6e63834a2c62
Binary files /dev/null and b/parmorceauxMax-git/CSN5.png differ
diff --git a/parmorceauxMax-git/CSN5.txt b/parmorceauxMax-git/CSN5.txt
new file mode 100644
index 0000000000000000000000000000000000000000..240e2a3afc086315bed8efc4ce5599acc3f5db11
--- /dev/null
+++ b/parmorceauxMax-git/CSN5.txt
@@ -0,0 +1,25 @@
+3.557800000000000000e+04
+3.383600000000000000e+04
+3.209400000000000000e+04
+3.097800000000000000e+04
+2.880700000000000000e+04
+2.446700000000000000e+04
+2.124500000000000000e+04
+1.777900000000000000e+04
+1.452600000000000000e+04
+1.136000000000000000e+04
+1.076000000000000000e+04
+1.119700000000000000e+04
+1.426500000000000000e+04
+1.824900000000000000e+04
+2.230700000000000000e+04
+2.583100000000000000e+04
+2.742300000000000000e+04
+2.868300000000000000e+04
+2.933400000000000000e+04
+2.987000000000000000e+04
+3.035000000000000000e+04
+3.100800000000000000e+04
+3.223000000000000000e+04
+3.323900000000000000e+04
+3.525700000000000000e+04
diff --git a/parmorceauxMax-git/CSN6.png b/parmorceauxMax-git/CSN6.png
new file mode 100644
index 0000000000000000000000000000000000000000..9fb5850b7896b41201a07ec2f2e80e7d3eee4fac
Binary files /dev/null and b/parmorceauxMax-git/CSN6.png differ
diff --git a/parmorceauxMax-git/CSN6.txt b/parmorceauxMax-git/CSN6.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c167a44e9208e0219be379403e35ebdb618835b5
--- /dev/null
+++ b/parmorceauxMax-git/CSN6.txt
@@ -0,0 +1,25 @@
+2.554000000000000000e+04
+2.484400000000000000e+04
+2.363100000000000000e+04
+2.222000000000000000e+04
+2.035200000000000000e+04
+1.797300000000000000e+04
+1.536700000000000000e+04
+1.330700000000000000e+04
+1.196400000000000000e+04
+1.133500000000000000e+04
+1.131500000000000000e+04
+1.201900000000000000e+04
+1.351200000000000000e+04
+1.578100000000000000e+04
+1.858300000000000000e+04
+2.038400000000000000e+04
+2.158600000000000000e+04
+2.231800000000000000e+04
+2.268500000000000000e+04
+2.290300000000000000e+04
+2.306500000000000000e+04
+2.335100000000000000e+04
+2.370300000000000000e+04
+2.419500000000000000e+04
+2.484700000000000000e+04
diff --git a/parmorceauxMax-git/CSN7.png b/parmorceauxMax-git/CSN7.png
new file mode 100644
index 0000000000000000000000000000000000000000..80139354a9efb193316293dd43add8c31bbdf28a
Binary files /dev/null and b/parmorceauxMax-git/CSN7.png differ
diff --git a/parmorceauxMax-git/CSN7.txt b/parmorceauxMax-git/CSN7.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0793b551b483e1a0c808824c05acabaae0cf1169
--- /dev/null
+++ b/parmorceauxMax-git/CSN7.txt
@@ -0,0 +1,25 @@
+3.495200000000000000e+04
+3.148600000000000000e+04
+3.100600000000000000e+04
+3.025500000000000000e+04
+2.911200000000000000e+04
+2.772700000000000000e+04
+2.518900000000000000e+04
+2.091400000000000000e+04
+1.764800000000000000e+04
+1.578100000000000000e+04
+1.463400000000000000e+04
+1.407400000000000000e+04
+1.436000000000000000e+04
+1.531400000000000000e+04
+1.749200000000000000e+04
+2.173900000000000000e+04
+2.448200000000000000e+04
+2.652500000000000000e+04
+2.787100000000000000e+04
+2.880500000000000000e+04
+2.971900000000000000e+04
+3.056900000000000000e+04
+3.164900000000000000e+04
+3.288800000000000000e+04
+3.442000000000000000e+04
diff --git a/parmorceauxMax-git/CSN8.png b/parmorceauxMax-git/CSN8.png
new file mode 100644
index 0000000000000000000000000000000000000000..ce7f4d591c6dd0402f129a2ec1d41f209cbfb7c3
Binary files /dev/null and b/parmorceauxMax-git/CSN8.png differ
diff --git a/parmorceauxMax-git/CSN8.txt b/parmorceauxMax-git/CSN8.txt
new file mode 100644
index 0000000000000000000000000000000000000000..859218edb2e92be37a9cfe5b73c7d8af4d7f218c
--- /dev/null
+++ b/parmorceauxMax-git/CSN8.txt
@@ -0,0 +1,25 @@
+4.747500000000000000e+04
+4.420200000000000000e+04
+4.366500000000000000e+04
+4.231700000000000000e+04
+3.969300000000000000e+04
+3.738800000000000000e+04
+3.514200000000000000e+04
+3.266200000000000000e+04
+2.837900000000000000e+04
+2.429100000000000000e+04
+2.121800000000000000e+04
+1.986100000000000000e+04
+1.945500000000000000e+04
+2.024800000000000000e+04
+2.238800000000000000e+04
+2.602000000000000000e+04
+3.097000000000000000e+04
+3.429200000000000000e+04
+3.586500000000000000e+04
+3.845000000000000000e+04
+4.040700000000000000e+04
+4.343400000000000000e+04
+4.511300000000000000e+04
+4.658000000000000000e+04
+4.716400000000000000e+04
diff --git a/parmorceauxMax-git/CSN9.png b/parmorceauxMax-git/CSN9.png
new file mode 100644
index 0000000000000000000000000000000000000000..0be8de3a91f6d0bdda5c9bc5c743fa5f5cc14a96
Binary files /dev/null and b/parmorceauxMax-git/CSN9.png differ
diff --git a/parmorceauxMax-git/CSN9.txt b/parmorceauxMax-git/CSN9.txt
new file mode 100644
index 0000000000000000000000000000000000000000..00d704165aab3cacf77f2dbb104d462cf9ce80c1
--- /dev/null
+++ b/parmorceauxMax-git/CSN9.txt
@@ -0,0 +1,25 @@
+4.773200000000000000e+04
+4.456400000000000000e+04
+4.379100000000000000e+04
+4.038100000000000000e+04
+3.804300000000000000e+04
+3.593300000000000000e+04
+3.325000000000000000e+04
+2.881200000000000000e+04
+2.282100000000000000e+04
+2.012000000000000000e+04
+1.976800000000000000e+04
+2.125000000000000000e+04
+2.523000000000000000e+04
+3.277700000000000000e+04
+3.625900000000000000e+04
+3.852800000000000000e+04
+4.051400000000000000e+04
+4.378500000000000000e+04
+4.428500000000000000e+04
+4.465800000000000000e+04
+4.492500000000000000e+04
+4.528800000000000000e+04
+4.545400000000000000e+04
+4.588300000000000000e+04
+4.692700000000000000e+04
diff --git a/parmorceauxMax-git/Dynamics_Model.m b/parmorceauxMax-git/Dynamics_Model.m
new file mode 100644
index 0000000000000000000000000000000000000000..07f2f6196bbfff946a538fe552c5264c856f7107
--- /dev/null
+++ b/parmorceauxMax-git/Dynamics_Model.m
@@ -0,0 +1,396 @@
+classdef Dynamics_Model < matlab.mixin.Copyable %handle
+    properties
+        num_dim_Y
+                
+        interpolant_XY
+        
+        sigma_estimation
+        sigma_test
+        alpha_initial
+        initial_estimate_X
+        
+        X
+        T
+        Y
+        previous_N_fixed
+        N_fixed
+        nb_times_fixed
+        
+        current_alpha
+        alpha_variable
+        confidence
+        window_size
+        
+        display_screen
+        marginal_X_Yi
+        limits_Yi
+    end
+    methods
+        function obj = Dynamics_Model(filename_interpolant, display_screen)
+            obj.display_screen = display_screen;
+            if obj.display_screen ~= -1
+                figure(display_screen)
+                clf(display_screen)
+            end
+            
+            structure = load(filename_interpolant);
+
+            obj.interpolant_XY = structure.interpolant_XY;
+            
+            obj.num_dim_Y = size(structure.interpolant_Y.GridVectors,2);
+            
+            N = size(structure.interpolant_Y.GridVectors{1}, 2);
+            for i=1:obj.num_dim_Y
+                obj.limits_Yi(i,1) = structure.interpolant_Y.GridVectors{i}(1);
+                obj.limits_Yi(i,2) = structure.interpolant_Y.GridVectors{i}(N);
+            end
+            
+            for i=1:obj.num_dim_Y
+                obj.marginal_X_Yi(:,:,i) = flipdim(structure.P_Yi_knowing_X(:,:,i),1);
+            end
+        end
+        function initialise(obj, initial_X, alpha_ini, sigma_estimation, sigma_test)
+            obj.T = [];
+            obj.X = [];
+            obj.Y = [];
+            obj.N_fixed = 0;
+            obj.current_alpha = alpha_ini;
+            obj.alpha_variable = [];
+            obj.window_size = [];
+            obj.confidence = [];
+            obj.nb_times_fixed = [];
+            
+            obj.initial_estimate_X = initial_X;
+            obj.alpha_initial = alpha_ini;
+            obj.sigma_estimation = sigma_estimation;
+            obj.sigma_test = sigma_test;
+        end
+        function process_new_frame(obj, Yt, Tt)
+            obj.T = [obj.T; Tt];
+            obj.Y = [obj.Y; Yt(:,1:obj.num_dim_Y)];
+            frame = size(obj.T,1);
+            
+            % estimate alpha and adjust the window size
+            alpha = obj.estimate_alpha();
+            sprintf('estimated alpha_variable: %f', alpha);
+            obj.current_alpha = alpha;
+            obj.window_size = [obj.window_size, frame - obj.N_fixed];
+            
+            % estimate X inside the window (and update N_fixed)
+            obj.previous_N_fixed = obj.N_fixed;
+            obj.estimate_X(alpha);
+            sprintf('"normalised" log likelihood of X (or confidence): %f', obj.confidence(frame));
+            if obj.display_screen ~= -1
+                obj.plot_estimated_X();
+            end
+            
+            % save the value of alpha for the frames that have converged
+            if obj.previous_N_fixed < obj.N_fixed
+                for i=obj.previous_N_fixed+1:obj.N_fixed
+                    obj.alpha_variable(i) = alpha;
+                end
+            end
+        end
+        function alpha = estimate_alpha(obj)
+            N = size(obj.X,1);
+            
+            if N < 5
+                alpha = obj.alpha_initial;
+                return
+            end
+            
+            first_index = max(obj.N_fixed, 1);
+            nb_points = N - first_index + 1;
+            
+            if nb_points < 3 % we need at least 2 intervals to compute the mean
+                alpha = obj.alpha_initial;
+            else
+                X_2_to_N = obj.X(first_index+1:N);
+                X_1_to_Nminus1 = obj.X(first_index:N-1);
+                T_2_to_N = obj.T(first_index+1:N);
+                T_1_to_Nminus1 = obj.T(first_index:N-1);
+
+                delta_X = X_2_to_N - X_1_to_Nminus1;
+                delta_T = T_2_to_N - T_1_to_Nminus1;
+
+                factors = delta_X ./ delta_T;
+
+                alpha = mean(factors);
+
+                if alpha <= 0.9 * obj.alpha_initial; %0.75 %0.015  0.75%0.85%0.9
+                    alpha = 0.9 * obj.alpha_initial; %0.75%0.015;%0.85%0.9
+                end
+                if alpha >= 1.1 * obj.alpha_initial; %1.25%0.015  1.25%1.15%1.1
+                    alpha = 1.1 * obj.alpha_initial; %1.25%0.015;%1.15%1.1
+                end
+%                     if alpha <= 0.015
+%                         alpha = 0.015;
+%                     end
+                    
+%                     if alpha > 0.025
+%                         alpha = 0.025;
+%                     end
+            end
+        end
+        function estimate_X(obj, alpha)
+            if obj.N_fixed > 0
+                last_fixed_X = obj.X(obj.N_fixed);
+            else
+                last_fixed_X = obj.initial_estimate_X;
+            end
+
+            %function to be minimised over new_X, with extra parameters Y, alpha and T
+            f = @(variable_X)(-obj.logP_x_knowing_y_partialUpdate(last_fixed_X,variable_X,alpha,obj.sigma_estimation));
+
+            N = size(obj.X,1);
+
+            if N > obj.N_fixed
+                X_ini = obj.X(obj.N_fixed+1:N);
+            else
+                X_ini = [];
+            end
+
+            if N == 0
+                new_X_ini = obj.initial_estimate_X;
+            elseif N == 1
+                new_X_ini = obj.X(N) + alpha;
+            else
+                new_X_ini = obj.X(N) + alpha * (obj.T(N+1) - obj.T(N));
+            end
+% voir pb donc effacer X_ini=obj.normalise_X(X_ini)
+            X_ini = [X_ini; new_X_ini];
+            X_ini=obj.normalise_X(X_ini)
+
+            [new_X_variable,loglikelihood] = fminunc(f,X_ini);
+            obj.confidence = [obj.confidence, -loglikelihood / size(new_X_variable,1)];
+            
+            new_X_variable = obj.normalise_X(new_X_variable);
+
+            new_X = [obj.X(1:obj.N_fixed); new_X_variable];
+
+            % comparer X_estimated et X_0 et noter ceux qui ne bougent plus
+            % et ceux qui bougent encore
+
+            candidates_new_N_fixed = [];
+
+            for i = obj.N_fixed + 1 : N
+                while i > size(obj.nb_times_fixed,1)
+                    obj.nb_times_fixed = [obj.nb_times_fixed; 0];
+                end
+                
+                if abs(obj.X(i) - new_X(i)) < 1e-3
+                    obj.nb_times_fixed(i) = obj.nb_times_fixed(i)+1;
+                else
+                    obj.nb_times_fixed(i) = 0;
+                end
+
+                if obj.nb_times_fixed(i) >= 2
+                    candidates_new_N_fixed = [candidates_new_N_fixed i];
+                end
+            end
+
+            new_N_fixed = obj.N_fixed;
+            i = obj.N_fixed + 1;
+            for j=1:size(candidates_new_N_fixed,2)
+                if i ~= candidates_new_N_fixed(j)
+                    break;
+                end
+                new_N_fixed = i;
+                i = i+1;
+            end
+
+            if new_N_fixed > N-3
+                new_N_fixed = N-3;
+            end
+
+            if new_N_fixed < 0
+                new_N_fixed = 0;
+            end
+
+            if new_N_fixed < N-13
+                new_N_fixed = N-13;
+            end
+            
+            if size(new_X, 1) < 12
+                new_N_fixed = size(new_X, 1) - 2;
+                if new_N_fixed < 0
+                    new_N_fixed = 0;
+                end
+            elseif size(new_X, 1) == 12
+                new_N_fixed = 0;
+            end
+
+            obj.N_fixed = new_N_fixed;
+            obj.X = new_X;
+        end
+        function loglikelihood = logP_x_knowing_y_partialUpdate(obj, last_fixed_X, variable_X, alpha, sigma)
+            N_variable = size(variable_X,1);
+
+            % if N == 1, we only maximise P_cond_y(Y(1),X(1))
+            % if N == 2, we maximise P_cond_y(Y(2),X(2)) * P_x_Markov_simple(X(2),X(1)) * P_cond_y(Y(1),X(1)) with P_x_Markov_simple(X(2),X(1)) = 0 if delta_X is negative, and uniform proba otherwise
+
+            if obj.N_fixed == 0
+                loglikelihood = obj.logP_cond_y(obj.Y(1,:),variable_X(1));
+            else
+                loglikelihood = obj.logP_cond_y(obj.Y(obj.N_fixed+1,:),variable_X(1)) + obj.logP_x_Markov(variable_X(1),last_fixed_X,obj.T(obj.N_fixed+1),obj.T(obj.N_fixed),alpha,sigma);
+            end
+
+            if N_variable > 1
+                Y_2_to_N = obj.Y(obj.N_fixed+2:obj.N_fixed+N_variable,:);
+                X_2_to_N = variable_X(2:N_variable);
+                X_1_to_Nminus1 = variable_X(1:N_variable-1);
+                T_2_to_N = obj.T(obj.N_fixed+2:obj.N_fixed+N_variable);
+                T_1_to_Nminus1 = obj.T(obj.N_fixed+1:obj.N_fixed+N_variable-1);
+
+                ll_proba_cond_y = obj.logP_cond_y(Y_2_to_N, X_2_to_N);
+                ll_proba_x_Markov = obj.logP_x_Markov(X_2_to_N,X_1_to_Nminus1,T_2_to_N,T_1_to_Nminus1,alpha,sigma);
+                vect_tmp = ll_proba_cond_y + ll_proba_x_Markov;
+
+                loglikelihood = loglikelihood + sum(vect_tmp);
+            end
+        end
+        function loglikelihood = logP_cond_y(obj, Yi, Xi)
+            s = size(Yi,1);
+            comp_small = repmat(obj.limits_Yi(:,1)',s,1);
+            comp_big = repmat(obj.limits_Yi(:,2)',s,1);
+            
+            too_small = Yi < comp_small;
+            too_big = Yi > comp_big;
+            
+            Yi(too_small) = comp_small(too_small);
+            Yi(too_big) = comp_big(too_big);
+            
+            xy = [obj.normalise_X(Xi) Yi];
+            
+            if isempty(xy)
+                loglikelihood = [];
+                return;
+            end
+            
+            loglikelihood = log(obj.interpolant_XY(xy));
+        end
+        function loglikelihood = logP_x_Markov(obj, Xi, Xim, Ti, Tim, alpha, sigma)
+            
+            difference = (Xi - Xim) - alpha .* (Ti - Tim);
+
+            % penalise negative and null dX
+            indexes = Xi - Xim < 0;
+            if length(alpha) > 1
+                difference(indexes) = 5 * (Xi(indexes) - Xim(indexes)) - alpha(indexes) .* (Ti(indexes) - Tim(indexes));
+            else
+                difference(indexes) = 5 * (Xi(indexes) - Xim(indexes)) - alpha .* (Ti(indexes) - Tim(indexes));
+            end
+
+            if isempty(difference)
+                loglikelihood = -100;
+            else
+                loglikelihood = log(normpdf(difference,0,sigma));
+            end
+        end
+        function llh_dynamics = compute_loglikelihood_dynamics_inwindow(obj)
+            N = size(obj.X,1);
+            start_frame = obj.N_fixed + 1;
+            nb_points = N - start_frame + 1;
+            
+            terme1 = sum( obj.logP_cond_y(obj.Y(start_frame:N,:), obj.X(start_frame:N)) );
+            
+            if nb_points == 1
+                llh_dynamics = terme1 + obj.logP_x_Markov(obj.alpha_initial, 0, 2, 1, obj.alpha_initial, obj.sigma_test);
+                return
+            end
+            
+            X_2_to_N = obj.X(start_frame+1:N);
+            X_1_to_Nminus1 = obj.X(start_frame:N-1);
+            T_2_to_N = obj.T(start_frame+1:N);
+            T_1_to_Nminus1 = obj.T(start_frame:N-1);
+            
+            
+            terme2 = sum( obj.logP_x_Markov(X_2_to_N,X_1_to_Nminus1,T_2_to_N,T_1_to_Nminus1,obj.current_alpha,obj.sigma_test) );
+            llh_dynamics = (terme1 + terme2) / nb_points;
+        end
+        function list_frames = get_converged_frames(obj)
+            if obj.previous_N_fixed < obj.N_fixed
+                list_frames = [obj.previous_N_fixed+1:obj.N_fixed];
+            else
+                list_frames = [];
+            end
+        end
+        function llh_dynamics = compute_loglikelihood_dynamics(obj, frames)
+            indexes_float = frames > obj.N_fixed;
+            if sum(indexes_float) ~= 0
+                sprintf('compute_loglikelihood_dynamics() warning: the following frames have not converged yet:')
+                frames(indexes_float)
+                
+                llh_dynamics(indexes_float) = nan;
+            end
+            
+            %llh_dynamics(frames <= 1) = nan;
+            
+            indexes = frames > 1 & frames <= obj.N_fixed;
+            
+            terme1 = obj.logP_cond_y(obj.Y(frames(indexes),:), obj.X(frames(indexes)));
+            terme2 = obj.logP_x_Markov(obj.X(frames(indexes)),obj.X(frames(indexes)-1),obj.T(frames(indexes)),obj.T(frames(indexes)-1),obj.alpha_variable(frames(indexes))',obj.sigma_test);
+            llh_dynamics(indexes) = terme1 + terme2;
+            
+            indexes = frames <= 1;
+            terme1 = obj.logP_cond_y(obj.Y(frames(indexes),:), obj.X(frames(indexes)));
+            llh_dynamics(frames <= 1) = terme1 + obj.logP_x_Markov(obj.alpha_initial, 0, 2, 1, obj.alpha_initial, obj.sigma_test);
+        end
+        function llh_dynamics = compute_loglikelihood_dynamics_forced(obj, frames)
+            %llh_dynamics(frames <= 1) = nan;
+            
+            indexes = frames > 1 & frames <= length(obj.T);
+            
+%             if ~isempty(obj.alpha_variable)
+%                 alpha = obj.alpha_variable(end);
+%             else
+%                 alpha = obj.current_alpha;
+%             end
+            alpha = obj.current_alpha;
+            
+            terme1 = obj.logP_cond_y(obj.Y(frames(indexes),:), obj.X(frames(indexes)));
+            terme2 = obj.logP_x_Markov(obj.X(frames(indexes)),obj.X(frames(indexes)-1),obj.T(frames(indexes)),obj.T(frames(indexes)-1),alpha,obj.sigma_test);
+            llh_dynamics(indexes) = terme1 + terme2;
+            
+            indexes = frames <= 1
+            frames(indexes)
+            terme1 = obj.logP_cond_y(obj.Y(frames(indexes),:), obj.X(frames(indexes)));
+            llh_dynamics(frames <= 1) = terme1 + obj.logP_x_Markov(obj.alpha_initial, 0, 2, 1, obj.alpha_initial, obj.sigma_test);
+        end
+        function plot_estimated_X(obj)
+            if obj.display_screen ~= -1
+                N = size(obj.X,1);
+                start_frame = max(N - 50, 1);
+                
+                figure(obj.display_screen)
+                
+                
+                for i=1:obj.num_dim_Y
+                    subplot(obj.num_dim_Y,1,i)
+                    hold off
+                    imagesc([0 1],[obj.limits_Yi(i,1) obj.limits_Yi(i,2)],obj.marginal_X_Yi(:,:,i),'CDataMapping','scaled')
+                    set(gca,'YDir','normal')
+                    title(['Likelihood of (X,Y_' i ') to be normal (color plot) and estimated (X,Y_' i ') (black crosses)'])
+                    xlabel('Percentage of movement completion X')
+                    ylabel(['Manifold coordinate Y_' i])
+                    hold on
+                    plot(obj.normalise_X(obj.X(start_frame:N)),obj.Y(start_frame:N,i),'kx')
+                end
+                %pour faire des gifs
+                %saveas(obj.display_screen, strcat('estimatedX_frame', int2str(N), '.png'))
+            end
+        end
+        function X = normalise_X(obj, X)
+            X(X<0) = 0;
+            X(X>1) = 1;
+        end
+        function periodic = is_periodic(obj)
+            periodic = 0;
+        end
+    end
+    
+    %methods (Abstract)
+    %    X = normalise_X(obj, X)
+    %    periodic = is_periodic(obj)
+    %end
+end
diff --git a/parmorceauxMax-git/Dynamics_Model_Periodic.m b/parmorceauxMax-git/Dynamics_Model_Periodic.m
new file mode 100644
index 0000000000000000000000000000000000000000..2f2df13ec752a506ee17c0fc26f932e495bbea1a
--- /dev/null
+++ b/parmorceauxMax-git/Dynamics_Model_Periodic.m
@@ -0,0 +1,13 @@
+classdef Dynamics_Model_Periodic < Dynamics_Model
+    methods
+        function obj = Dynamics_Model_Periodic(filename_interpolant, display_screen)
+            obj = obj@Dynamics_Model(filename_interpolant, display_screen);
+        end
+        function X = normalise_X(obj, X)
+            X = mod(X, 1);
+        end
+        function periodic = is_periodic(obj)
+            periodic = 1;
+        end
+    end
+end
\ No newline at end of file
diff --git a/parmorceauxMax-git/HTN178.txt b/parmorceauxMax-git/HTN178.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8876fdb0459f19ae4202e09d43df6cd381e885d8
--- /dev/null
+++ b/parmorceauxMax-git/HTN178.txt
@@ -0,0 +1,25 @@
+3.248000000000000000e+04
+3.229500000000000000e+04
+3.129900000000000000e+04
+2.880500000000000000e+04
+2.564100000000000000e+04
+2.131700000000000000e+04
+1.725100000000000000e+04
+1.288600000000000000e+04
+1.114100000000000000e+04
+1.056800000000000000e+04
+1.060600000000000000e+04
+1.098200000000000000e+04
+1.156200000000000000e+04
+1.269100000000000000e+04
+1.432900000000000000e+04
+1.687100000000000000e+04
+1.931400000000000000e+04
+2.197600000000000000e+04
+2.363000000000000000e+04
+2.514100000000000000e+04
+2.624600000000000000e+04
+2.768300000000000000e+04
+2.918300000000000000e+04
+3.026600000000000000e+04
+3.134000000000000000e+04
diff --git a/parmorceauxMax-git/HTN187.txt b/parmorceauxMax-git/HTN187.txt
new file mode 100644
index 0000000000000000000000000000000000000000..68d81a1035534686235e895330d5b093b6225149
--- /dev/null
+++ b/parmorceauxMax-git/HTN187.txt
@@ -0,0 +1,25 @@
+2.111400000000000000e+04
+1.725900000000000000e+04
+1.658700000000000000e+04
+1.323300000000000000e+04
+1.161100000000000000e+04
+9.127000000000000000e+03
+7.882000000000000000e+03
+7.667000000000000000e+03
+6.569000000000000000e+03
+6.588000000000000000e+03
+6.942000000000000000e+03
+8.169000000000000000e+03
+9.715000000000000000e+03
+1.252100000000000000e+04
+1.371600000000000000e+04
+1.445500000000000000e+04
+1.488600000000000000e+04
+1.511900000000000000e+04
+1.526700000000000000e+04
+1.544900000000000000e+04
+1.541900000000000000e+04
+1.558700000000000000e+04
+1.595900000000000000e+04
+1.841100000000000000e+04
+1.853400000000000000e+04
diff --git a/parmorceauxMax-git/HTN188.txt b/parmorceauxMax-git/HTN188.txt
new file mode 100644
index 0000000000000000000000000000000000000000..786e68a6ed4f9b903c503df89a9cd545a9525295
--- /dev/null
+++ b/parmorceauxMax-git/HTN188.txt
@@ -0,0 +1,25 @@
+1.926700000000000000e+04
+1.902000000000000000e+04
+1.874400000000000000e+04
+1.815700000000000000e+04
+1.702000000000000000e+04
+1.368000000000000000e+04
+1.148600000000000000e+04
+9.703000000000000000e+03
+8.250000000000000000e+03
+7.261000000000000000e+03
+6.785000000000000000e+03
+6.931000000000000000e+03
+7.017000000000000000e+03
+7.391000000000000000e+03
+8.095000000000000000e+03
+9.878000000000000000e+03
+1.243700000000000000e+04
+1.421700000000000000e+04
+1.539900000000000000e+04
+1.631200000000000000e+04
+1.698000000000000000e+04
+1.761900000000000000e+04
+1.825400000000000000e+04
+1.882700000000000000e+04
+1.920400000000000000e+04
diff --git a/parmorceauxMax-git/HTN192.txt b/parmorceauxMax-git/HTN192.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f56bc2b4690d1478ea11222c8ff0572776617422
--- /dev/null
+++ b/parmorceauxMax-git/HTN192.txt
@@ -0,0 +1,25 @@
+1.784800000000000000e+04
+1.487500000000000000e+04
+1.314900000000000000e+04
+1.080300000000000000e+04
+8.763000000000000000e+03
+6.782000000000000000e+03
+5.317000000000000000e+03
+5.169000000000000000e+03
+4.353000000000000000e+03
+4.167000000000000000e+03
+4.743000000000000000e+03
+5.302000000000000000e+03
+6.121000000000000000e+03
+7.106000000000000000e+03
+7.989000000000000000e+03
+8.748000000000000000e+03
+9.315000000000000000e+03
+9.776000000000000000e+03
+1.019700000000000000e+04
+1.061100000000000000e+04
+1.119800000000000000e+04
+1.183600000000000000e+04
+1.278700000000000000e+04
+1.540100000000000000e+04
+1.518100000000000000e+04
diff --git a/parmorceauxMax-git/HTN209.txt b/parmorceauxMax-git/HTN209.txt
new file mode 100644
index 0000000000000000000000000000000000000000..edd380339d4983a4c2ab363b1fe63734e3af84be
--- /dev/null
+++ b/parmorceauxMax-git/HTN209.txt
@@ -0,0 +1,25 @@
+4.157500000000000000e+04
+3.737500000000000000e+04
+3.612300000000000000e+04
+3.401800000000000000e+04
+3.120000000000000000e+04
+2.862100000000000000e+04
+2.682600000000000000e+04
+2.705000000000000000e+04
+2.580000000000000000e+04
+2.580700000000000000e+04
+2.649500000000000000e+04
+2.818900000000000000e+04
+2.988300000000000000e+04
+3.155800000000000000e+04
+3.283800000000000000e+04
+3.390000000000000000e+04
+3.452000000000000000e+04
+3.484900000000000000e+04
+3.534300000000000000e+04
+3.558800000000000000e+04
+3.569600000000000000e+04
+3.599400000000000000e+04
+3.655500000000000000e+04
+3.917000000000000000e+04
+3.995400000000000000e+04
diff --git a/parmorceauxMax-git/HTN210.txt b/parmorceauxMax-git/HTN210.txt
new file mode 100644
index 0000000000000000000000000000000000000000..36465215aa8ad9f2f7cc3a08a9181d23ac9b1eea
--- /dev/null
+++ b/parmorceauxMax-git/HTN210.txt
@@ -0,0 +1,25 @@
+2.997000000000000000e+04
+2.709900000000000000e+04
+2.610600000000000000e+04
+2.396400000000000000e+04
+1.991100000000000000e+04
+1.799900000000000000e+04
+1.583100000000000000e+04
+1.383600000000000000e+04
+1.123800000000000000e+04
+1.038700000000000000e+04
+1.022900000000000000e+04
+1.091400000000000000e+04
+1.139000000000000000e+04
+1.430700000000000000e+04
+1.770100000000000000e+04
+2.082700000000000000e+04
+2.235200000000000000e+04
+2.299100000000000000e+04
+2.348100000000000000e+04
+2.393000000000000000e+04
+2.435200000000000000e+04
+2.446000000000000000e+04
+2.668500000000000000e+04
+2.779200000000000000e+04
+2.819800000000000000e+04
diff --git a/parmorceauxMax-git/HTN221.txt b/parmorceauxMax-git/HTN221.txt
new file mode 100644
index 0000000000000000000000000000000000000000..22b25662886f441ee5fb4d04a2c3d1cb2865467a
--- /dev/null
+++ b/parmorceauxMax-git/HTN221.txt
@@ -0,0 +1,25 @@
+3.359400000000000000e+04
+3.322600000000000000e+04
+3.159800000000000000e+04
+2.864900000000000000e+04
+2.586400000000000000e+04
+2.159000000000000000e+04
+1.759400000000000000e+04
+1.438000000000000000e+04
+1.202400000000000000e+04
+1.103300000000000000e+04
+1.172100000000000000e+04
+1.125600000000000000e+04
+1.195200000000000000e+04
+1.344200000000000000e+04
+1.623400000000000000e+04
+2.025400000000000000e+04
+2.347400000000000000e+04
+2.521900000000000000e+04
+2.705200000000000000e+04
+2.818300000000000000e+04
+2.920200000000000000e+04
+2.997800000000000000e+04
+3.052100000000000000e+04
+3.134000000000000000e+04
+3.243500000000000000e+04
diff --git a/parmorceauxMax-git/HTN225.txt b/parmorceauxMax-git/HTN225.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c4221b1fa74a66245c9d27d118ef920a9676aa26
--- /dev/null
+++ b/parmorceauxMax-git/HTN225.txt
@@ -0,0 +1,25 @@
+4.679900000000000000e+04
+4.024700000000000000e+04
+3.472500000000000000e+04
+2.771500000000000000e+04
+2.275900000000000000e+04
+1.877800000000000000e+04
+1.385100000000000000e+04
+1.299000000000000000e+04
+1.630200000000000000e+04
+1.347900000000000000e+04
+1.638400000000000000e+04
+2.416000000000000000e+04
+2.759800000000000000e+04
+3.037800000000000000e+04
+3.206300000000000000e+04
+3.279700000000000000e+04
+3.311300000000000000e+04
+3.392800000000000000e+04
+3.399100000000000000e+04
+3.575600000000000000e+04
+3.553600000000000000e+04
+3.571000000000000000e+04
+3.768500000000000000e+04
+3.957900000000000000e+04
+4.121700000000000000e+04
diff --git a/parmorceauxMax-git/HTN229.txt b/parmorceauxMax-git/HTN229.txt
new file mode 100644
index 0000000000000000000000000000000000000000..95026f83d74c72b000dc2f632e2712a8072c2679
--- /dev/null
+++ b/parmorceauxMax-git/HTN229.txt
@@ -0,0 +1,25 @@
+3.473200000000000000e+04
+3.396500000000000000e+04
+3.289300000000000000e+04
+3.147300000000000000e+04
+2.930600000000000000e+04
+2.710600000000000000e+04
+2.464600000000000000e+04
+2.291600000000000000e+04
+2.157500000000000000e+04
+2.152000000000000000e+04
+2.062500000000000000e+04
+2.035500000000000000e+04
+2.089200000000000000e+04
+2.193600000000000000e+04
+2.341300000000000000e+04
+2.462600000000000000e+04
+2.609500000000000000e+04
+2.810000000000000000e+04
+3.004400000000000000e+04
+3.206000000000000000e+04
+3.351000000000000000e+04
+3.435500000000000000e+04
+3.351000000000000000e+04
+3.394800000000000000e+04
+3.443400000000000000e+04
diff --git a/parmorceauxMax-git/HTN232.txt b/parmorceauxMax-git/HTN232.txt
new file mode 100644
index 0000000000000000000000000000000000000000..230a7ededaa965a81af0e882cf7c7e829ed0c2bd
--- /dev/null
+++ b/parmorceauxMax-git/HTN232.txt
@@ -0,0 +1,25 @@
+3.463900000000000000e+04
+3.340200000000000000e+04
+3.115300000000000000e+04
+2.931900000000000000e+04
+2.726300000000000000e+04
+2.545700000000000000e+04
+2.358000000000000000e+04
+2.214700000000000000e+04
+2.027900000000000000e+04
+1.912200000000000000e+04
+1.937900000000000000e+04
+1.997500000000000000e+04
+2.139400000000000000e+04
+2.208300000000000000e+04
+2.303400000000000000e+04
+2.470200000000000000e+04
+2.631100000000000000e+04
+2.730800000000000000e+04
+2.844700000000000000e+04
+2.920200000000000000e+04
+3.062100000000000000e+04
+3.153300000000000000e+04
+3.295100000000000000e+04
+3.398300000000000000e+04
+3.377000000000000000e+04
diff --git a/parmorceauxMax-git/HTN233.txt b/parmorceauxMax-git/HTN233.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b335704480c6a6f0b255a0f24a0bc1388aa15b03
--- /dev/null
+++ b/parmorceauxMax-git/HTN233.txt
@@ -0,0 +1,25 @@
+2.546800000000000000e+04
+2.375600000000000000e+04
+2.247900000000000000e+04
+2.126900000000000000e+04
+1.786500000000000000e+04
+1.531700000000000000e+04
+1.293300000000000000e+04
+1.088500000000000000e+04
+9.403000000000000000e+03
+7.464000000000000000e+03
+7.145000000000000000e+03
+6.830000000000000000e+03
+7.131000000000000000e+03
+7.753000000000000000e+03
+9.038000000000000000e+03
+1.164200000000000000e+04
+1.388900000000000000e+04
+1.594000000000000000e+04
+1.882700000000000000e+04
+1.994100000000000000e+04
+2.100600000000000000e+04
+2.153600000000000000e+04
+2.216800000000000000e+04
+2.267400000000000000e+04
+2.325300000000000000e+04
diff --git a/parmorceauxMax-git/HTN234.txt b/parmorceauxMax-git/HTN234.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2c847a277a72cb22cc0904f1ba5b1aec173fd57e
--- /dev/null
+++ b/parmorceauxMax-git/HTN234.txt
@@ -0,0 +1,25 @@
+2.864000000000000000e+04
+2.675300000000000000e+04
+2.544200000000000000e+04
+2.460600000000000000e+04
+2.298600000000000000e+04
+2.083200000000000000e+04
+1.780300000000000000e+04
+1.401400000000000000e+04
+1.159200000000000000e+04
+1.031200000000000000e+04
+1.127400000000000000e+04
+1.027100000000000000e+04
+1.078700000000000000e+04
+1.141500000000000000e+04
+1.213700000000000000e+04
+1.373100000000000000e+04
+1.497300000000000000e+04
+1.693200000000000000e+04
+1.938700000000000000e+04
+2.055200000000000000e+04
+2.182900000000000000e+04
+2.167800000000000000e+04
+2.305200000000000000e+04
+2.631100000000000000e+04
+2.786800000000000000e+04
diff --git a/parmorceauxMax-git/HTN238.txt b/parmorceauxMax-git/HTN238.txt
new file mode 100644
index 0000000000000000000000000000000000000000..efdd0a081c8b7cd9c573556e871d88c428d9a376
--- /dev/null
+++ b/parmorceauxMax-git/HTN238.txt
@@ -0,0 +1,25 @@
+2.154700000000000000e+04
+1.970800000000000000e+04
+1.900600000000000000e+04
+1.719400000000000000e+04
+1.605100000000000000e+04
+1.448700000000000000e+04
+1.262900000000000000e+04
+1.100800000000000000e+04
+9.219000000000000000e+03
+9.089000000000000000e+03
+7.992000000000000000e+03
+7.907000000000000000e+03
+8.091000000000000000e+03
+8.476000000000000000e+03
+1.030800000000000000e+04
+1.196200000000000000e+04
+1.256800000000000000e+04
+1.326300000000000000e+04
+1.408300000000000000e+04
+1.461800000000000000e+04
+1.527600000000000000e+04
+1.582700000000000000e+04
+1.752000000000000000e+04
+1.843300000000000000e+04
+2.020700000000000000e+04
diff --git a/parmorceauxMax-git/HTN239.txt b/parmorceauxMax-git/HTN239.txt
new file mode 100644
index 0000000000000000000000000000000000000000..92462d826b0a94c5fcf4ddb23b3ffddee665cefb
--- /dev/null
+++ b/parmorceauxMax-git/HTN239.txt
@@ -0,0 +1,25 @@
+3.439000000000000000e+04
+3.264200000000000000e+04
+3.142000000000000000e+04
+3.040200000000000000e+04
+2.863900000000000000e+04
+2.515600000000000000e+04
+2.160200000000000000e+04
+1.608900000000000000e+04
+1.375300000000000000e+04
+1.154700000000000000e+04
+1.013400000000000000e+04
+1.334500000000000000e+04
+9.609000000000000000e+03
+1.001800000000000000e+04
+1.052000000000000000e+04
+1.183400000000000000e+04
+1.373800000000000000e+04
+1.651000000000000000e+04
+2.313900000000000000e+04
+2.558700000000000000e+04
+2.747700000000000000e+04
+2.916000000000000000e+04
+3.073000000000000000e+04
+3.167700000000000000e+04
+3.356900000000000000e+04
diff --git a/parmorceauxMax-git/HTN240.txt b/parmorceauxMax-git/HTN240.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5d967e9df0d10856180df1fad3926248d43e90a5
--- /dev/null
+++ b/parmorceauxMax-git/HTN240.txt
@@ -0,0 +1,25 @@
+2.117900000000000000e+04
+1.816000000000000000e+04
+1.756000000000000000e+04
+1.510300000000000000e+04
+1.157000000000000000e+04
+9.053000000000000000e+03
+8.088000000000000000e+03
+1.066700000000000000e+04
+7.750000000000000000e+03
+7.964000000000000000e+03
+8.549000000000000000e+03
+9.475000000000000000e+03
+1.137000000000000000e+04
+1.262500000000000000e+04
+1.369100000000000000e+04
+1.423100000000000000e+04
+1.457400000000000000e+04
+1.477700000000000000e+04
+1.474700000000000000e+04
+1.468900000000000000e+04
+1.494100000000000000e+04
+1.489300000000000000e+04
+1.538700000000000000e+04
+1.640800000000000000e+04
+1.753300000000000000e+04
diff --git a/parmorceauxMax-git/HTN241.txt b/parmorceauxMax-git/HTN241.txt
new file mode 100644
index 0000000000000000000000000000000000000000..dbaf22844fb82d2112a66d6ef61e2986c77bd8d7
--- /dev/null
+++ b/parmorceauxMax-git/HTN241.txt
@@ -0,0 +1,25 @@
+2.163700000000000000e+04
+1.804500000000000000e+04
+1.839600000000000000e+04
+1.878900000000000000e+04
+1.517800000000000000e+04
+1.375100000000000000e+04
+1.200000000000000000e+04
+1.040900000000000000e+04
+9.332000000000000000e+03
+9.682000000000000000e+03
+9.296000000000000000e+03
+9.940000000000000000e+03
+1.015600000000000000e+04
+1.024000000000000000e+04
+1.074500000000000000e+04
+1.157100000000000000e+04
+1.227300000000000000e+04
+1.375700000000000000e+04
+1.443800000000000000e+04
+1.507700000000000000e+04
+1.559700000000000000e+04
+1.641400000000000000e+04
+1.733300000000000000e+04
+1.793800000000000000e+04
+1.841100000000000000e+04
diff --git a/parmorceauxMax-git/HTN242.txt b/parmorceauxMax-git/HTN242.txt
new file mode 100644
index 0000000000000000000000000000000000000000..bb52a4b7ebf01a5aba5b471a3de4525944643da9
--- /dev/null
+++ b/parmorceauxMax-git/HTN242.txt
@@ -0,0 +1,25 @@
+2.762100000000000000e+04
+2.599100000000000000e+04
+2.514500000000000000e+04
+2.368700000000000000e+04
+2.171400000000000000e+04
+1.924100000000000000e+04
+1.649400000000000000e+04
+1.407400000000000000e+04
+1.079000000000000000e+04
+1.015400000000000000e+04
+9.727000000000000000e+03
+1.017200000000000000e+04
+1.063400000000000000e+04
+1.148300000000000000e+04
+1.408000000000000000e+04
+1.612000000000000000e+04
+1.662200000000000000e+04
+1.794200000000000000e+04
+1.916300000000000000e+04
+2.213200000000000000e+04
+2.281500000000000000e+04
+2.352100000000000000e+04
+2.190200000000000000e+04
+2.547300000000000000e+04
+2.619100000000000000e+04
diff --git a/parmorceauxMax-git/HTN243.txt b/parmorceauxMax-git/HTN243.txt
new file mode 100644
index 0000000000000000000000000000000000000000..12d03f54832310ced6d470fe03565fe9c398a470
--- /dev/null
+++ b/parmorceauxMax-git/HTN243.txt
@@ -0,0 +1,25 @@
+2.927900000000000000e+04
+2.734100000000000000e+04
+2.651600000000000000e+04
+2.460200000000000000e+04
+2.253000000000000000e+04
+1.962000000000000000e+04
+1.707400000000000000e+04
+1.522500000000000000e+04
+1.224500000000000000e+04
+9.189000000000000000e+03
+8.420000000000000000e+03
+1.005600000000000000e+04
+8.954000000000000000e+03
+9.653000000000000000e+03
+1.041800000000000000e+04
+1.135500000000000000e+04
+1.289600000000000000e+04
+1.796800000000000000e+04
+1.942400000000000000e+04
+2.083600000000000000e+04
+2.052200000000000000e+04
+2.166700000000000000e+04
+2.307600000000000000e+04
+2.458500000000000000e+04
+2.817100000000000000e+04
diff --git a/parmorceauxMax-git/HTN245.txt b/parmorceauxMax-git/HTN245.txt
new file mode 100644
index 0000000000000000000000000000000000000000..368ef67b1062cfca177080b538b672743c057769
--- /dev/null
+++ b/parmorceauxMax-git/HTN245.txt
@@ -0,0 +1,25 @@
+2.684200000000000000e+04
+2.606200000000000000e+04
+2.545500000000000000e+04
+2.518200000000000000e+04
+2.423200000000000000e+04
+2.230900000000000000e+04
+2.004600000000000000e+04
+1.781000000000000000e+04
+1.493000000000000000e+04
+1.284500000000000000e+04
+1.108200000000000000e+04
+9.077000000000000000e+03
+8.385000000000000000e+03
+9.176000000000000000e+03
+8.407000000000000000e+03
+8.785000000000000000e+03
+9.428000000000000000e+03
+1.086200000000000000e+04
+1.491900000000000000e+04
+1.757500000000000000e+04
+1.996800000000000000e+04
+2.158900000000000000e+04
+2.325800000000000000e+04
+2.600700000000000000e+04
+2.618300000000000000e+04
diff --git a/parmorceauxMax-git/HTN247.txt b/parmorceauxMax-git/HTN247.txt
new file mode 100644
index 0000000000000000000000000000000000000000..08dca9c3c782dea74f1403b281fd34be11d69250
--- /dev/null
+++ b/parmorceauxMax-git/HTN247.txt
@@ -0,0 +1,25 @@
+1.909300000000000000e+04
+1.800200000000000000e+04
+1.782500000000000000e+04
+1.694800000000000000e+04
+1.533600000000000000e+04
+1.338000000000000000e+04
+1.139100000000000000e+04
+9.564000000000000000e+03
+8.429000000000000000e+03
+7.541000000000000000e+03
+7.643000000000000000e+03
+6.730000000000000000e+03
+6.815000000000000000e+03
+6.984000000000000000e+03
+7.206000000000000000e+03
+7.522000000000000000e+03
+8.236000000000000000e+03
+9.237000000000000000e+03
+1.046500000000000000e+04
+1.269300000000000000e+04
+1.369500000000000000e+04
+1.460600000000000000e+04
+1.572500000000000000e+04
+1.669400000000000000e+04
+1.757000000000000000e+04
diff --git a/parmorceauxMax-git/HTN250.txt b/parmorceauxMax-git/HTN250.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3c4d3f1add965dd05c2d71219693a9f233f81c48
--- /dev/null
+++ b/parmorceauxMax-git/HTN250.txt
@@ -0,0 +1,25 @@
+1.954400000000000000e+04
+1.934700000000000000e+04
+1.794400000000000000e+04
+1.577000000000000000e+04
+1.431800000000000000e+04
+1.279900000000000000e+04
+1.091300000000000000e+04
+9.179000000000000000e+03
+7.974000000000000000e+03
+7.012000000000000000e+03
+6.230000000000000000e+03
+5.746000000000000000e+03
+5.827000000000000000e+03
+6.672000000000000000e+03
+7.861000000000000000e+03
+1.021100000000000000e+04
+1.172300000000000000e+04
+1.356200000000000000e+04
+1.471400000000000000e+04
+1.574300000000000000e+04
+1.641500000000000000e+04
+1.699600000000000000e+04
+1.748800000000000000e+04
+1.842300000000000000e+04
+1.881800000000000000e+04
diff --git a/parmorceauxMax-git/HTN251.txt b/parmorceauxMax-git/HTN251.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8da2add13549bb5f4d58c6fb1b33d5c338d4d784
--- /dev/null
+++ b/parmorceauxMax-git/HTN251.txt
@@ -0,0 +1,25 @@
+3.122700000000000000e+04
+2.767600000000000000e+04
+2.594300000000000000e+04
+2.140900000000000000e+04
+1.918700000000000000e+04
+1.651000000000000000e+04
+1.278400000000000000e+04
+1.173700000000000000e+04
+1.089100000000000000e+04
+1.357000000000000000e+04
+1.098200000000000000e+04
+1.150600000000000000e+04
+1.304800000000000000e+04
+1.523300000000000000e+04
+2.035800000000000000e+04
+2.203300000000000000e+04
+2.301600000000000000e+04
+2.389600000000000000e+04
+2.416800000000000000e+04
+2.440200000000000000e+04
+2.473200000000000000e+04
+2.514300000000000000e+04
+2.524300000000000000e+04
+2.581400000000000000e+04
+2.668000000000000000e+04
diff --git a/parmorceauxMax-git/HTN252.txt b/parmorceauxMax-git/HTN252.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b72c61e6eb36a1327ac782ef792cd30b8f08f915
--- /dev/null
+++ b/parmorceauxMax-git/HTN252.txt
@@ -0,0 +1,25 @@
+2.228400000000000000e+04
+2.184700000000000000e+04
+2.154900000000000000e+04
+2.071400000000000000e+04
+1.913000000000000000e+04
+1.679300000000000000e+04
+1.480100000000000000e+04
+1.311600000000000000e+04
+1.340500000000000000e+04
+1.114300000000000000e+04
+1.004700000000000000e+04
+1.007700000000000000e+04
+1.038700000000000000e+04
+1.224500000000000000e+04
+1.388700000000000000e+04
+1.643000000000000000e+04
+1.820000000000000000e+04
+1.955700000000000000e+04
+2.077300000000000000e+04
+2.080900000000000000e+04
+2.121600000000000000e+04
+2.150600000000000000e+04
+2.192100000000000000e+04
+2.209900000000000000e+04
+2.225500000000000000e+04
diff --git a/parmorceauxMax-git/HTN258.txt b/parmorceauxMax-git/HTN258.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e6c02293d2bc0aa92c5c789789877ab89f429976
--- /dev/null
+++ b/parmorceauxMax-git/HTN258.txt
@@ -0,0 +1,25 @@
+3.336600000000000000e+04
+3.335300000000000000e+04
+3.132000000000000000e+04
+3.077500000000000000e+04
+2.873300000000000000e+04
+2.714300000000000000e+04
+2.499000000000000000e+04
+2.252400000000000000e+04
+1.954000000000000000e+04
+1.720600000000000000e+04
+1.519700000000000000e+04
+1.378100000000000000e+04
+1.267700000000000000e+04
+1.329000000000000000e+04
+1.603200000000000000e+04
+1.848600000000000000e+04
+2.126900000000000000e+04
+2.383000000000000000e+04
+2.596200000000000000e+04
+2.864000000000000000e+04
+2.953000000000000000e+04
+3.030700000000000000e+04
+3.109500000000000000e+04
+3.200200000000000000e+04
+3.281600000000000000e+04
diff --git a/parmorceauxMax-git/HTN259.txt b/parmorceauxMax-git/HTN259.txt
new file mode 100644
index 0000000000000000000000000000000000000000..15c0e3d2912a01fa7dd9f5e9f725402830b71a99
--- /dev/null
+++ b/parmorceauxMax-git/HTN259.txt
@@ -0,0 +1,25 @@
+2.289900000000000000e+04
+2.288000000000000000e+04
+2.272700000000000000e+04
+2.224300000000000000e+04
+2.125700000000000000e+04
+1.952100000000000000e+04
+1.745300000000000000e+04
+1.510100000000000000e+04
+1.227100000000000000e+04
+1.074700000000000000e+04
+8.754000000000000000e+03
+8.159000000000000000e+03
+8.328000000000000000e+03
+8.165000000000000000e+03
+9.077000000000000000e+03
+1.169700000000000000e+04
+1.490400000000000000e+04
+1.611600000000000000e+04
+1.775500000000000000e+04
+1.891000000000000000e+04
+1.982800000000000000e+04
+2.056300000000000000e+04
+2.130600000000000000e+04
+2.207200000000000000e+04
+2.268100000000000000e+04
diff --git a/parmorceauxMax-git/HTN261.txt b/parmorceauxMax-git/HTN261.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b7a22d806baf52d51ce3c9ddb73027b246fb16f0
--- /dev/null
+++ b/parmorceauxMax-git/HTN261.txt
@@ -0,0 +1,25 @@
+3.280900000000000000e+04
+3.218000000000000000e+04
+3.040700000000000000e+04
+2.877300000000000000e+04
+2.619100000000000000e+04
+2.275700000000000000e+04
+1.995300000000000000e+04
+1.777100000000000000e+04
+1.540100000000000000e+04
+1.232400000000000000e+04
+1.260800000000000000e+04
+1.223300000000000000e+04
+1.210900000000000000e+04
+1.291500000000000000e+04
+1.578500000000000000e+04
+1.920700000000000000e+04
+2.208700000000000000e+04
+2.469300000000000000e+04
+2.663500000000000000e+04
+2.752300000000000000e+04
+2.815400000000000000e+04
+2.849800000000000000e+04
+2.981600000000000000e+04
+3.041700000000000000e+04
+3.085400000000000000e+04
diff --git a/parmorceauxMax-git/HTN263.txt b/parmorceauxMax-git/HTN263.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b0380c53fb117c6d61f985db719fe32305bb9ed0
--- /dev/null
+++ b/parmorceauxMax-git/HTN263.txt
@@ -0,0 +1,25 @@
+2.706000000000000000e+04
+2.273200000000000000e+04
+2.073500000000000000e+04
+1.713100000000000000e+04
+1.408500000000000000e+04
+1.138800000000000000e+04
+9.589000000000000000e+03
+8.362000000000000000e+03
+7.824000000000000000e+03
+8.599000000000000000e+03
+7.907000000000000000e+03
+8.832000000000000000e+03
+9.581000000000000000e+03
+1.205800000000000000e+04
+1.363100000000000000e+04
+1.511600000000000000e+04
+1.646000000000000000e+04
+1.784500000000000000e+04
+1.958700000000000000e+04
+2.142300000000000000e+04
+2.266700000000000000e+04
+2.374000000000000000e+04
+2.445000000000000000e+04
+2.505300000000000000e+04
+2.541000000000000000e+04
diff --git a/parmorceauxMax-git/HTN265.txt b/parmorceauxMax-git/HTN265.txt
new file mode 100644
index 0000000000000000000000000000000000000000..60a4e17f99119406f5070482e684708ce18c7432
--- /dev/null
+++ b/parmorceauxMax-git/HTN265.txt
@@ -0,0 +1,25 @@
+1.706100000000000000e+04
+1.616400000000000000e+04
+1.519500000000000000e+04
+1.308300000000000000e+04
+1.145700000000000000e+04
+9.814000000000000000e+03
+8.277000000000000000e+03
+7.233000000000000000e+03
+6.974000000000000000e+03
+6.445000000000000000e+03
+6.338000000000000000e+03
+6.322000000000000000e+03
+6.456000000000000000e+03
+6.916000000000000000e+03
+8.454000000000000000e+03
+9.463000000000000000e+03
+1.045200000000000000e+04
+1.128800000000000000e+04
+1.211600000000000000e+04
+1.279800000000000000e+04
+1.350600000000000000e+04
+1.424700000000000000e+04
+1.510600000000000000e+04
+1.574900000000000000e+04
+1.620800000000000000e+04
diff --git a/parmorceauxMax-git/HTN266.txt b/parmorceauxMax-git/HTN266.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1c21e98eb481d97b43bfa7319f32308c0172c3bf
--- /dev/null
+++ b/parmorceauxMax-git/HTN266.txt
@@ -0,0 +1,25 @@
+3.226900000000000000e+04
+2.877900000000000000e+04
+2.686800000000000000e+04
+2.295700000000000000e+04
+1.905600000000000000e+04
+1.513600000000000000e+04
+1.149800000000000000e+04
+1.226500000000000000e+04
+1.074900000000000000e+04
+1.101200000000000000e+04
+1.259400000000000000e+04
+1.611300000000000000e+04
+1.977500000000000000e+04
+2.224500000000000000e+04
+2.523900000000000000e+04
+2.638900000000000000e+04
+2.650200000000000000e+04
+2.706700000000000000e+04
+2.730900000000000000e+04
+2.779300000000000000e+04
+2.820000000000000000e+04
+2.827500000000000000e+04
+2.832700000000000000e+04
+2.908000000000000000e+04
+2.974600000000000000e+04
diff --git a/parmorceauxMax-git/HTN301.txt b/parmorceauxMax-git/HTN301.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f6f1254fbc5e95fe00caf5a1846f64e5217899cb
--- /dev/null
+++ b/parmorceauxMax-git/HTN301.txt
@@ -0,0 +1,25 @@
+20179
+19766
+19770
+19134
+17802
+15886
+13665
+11523
+10030
+8939
+8192
+7745
+7575
+8001
+9417
+12111
+14460
+16098
+17070
+17502
+17751
+17810
+18014
+18364
+19233
diff --git a/parmorceauxMax-git/HTN302.txt b/parmorceauxMax-git/HTN302.txt
new file mode 100644
index 0000000000000000000000000000000000000000..557434e9a18cf597387ae73c50598405565aaaf1
--- /dev/null
+++ b/parmorceauxMax-git/HTN302.txt
@@ -0,0 +1,25 @@
+45950
+43667
+43115
+41530
+38878
+35411
+31274
+27776
+24684
+22262
+20447
+19272
+19433
+19799
+20480
+21461
+24293
+28188
+31265
+34309
+36755
+39413
+42235
+44084
+45110
diff --git a/parmorceauxMax-git/HTN303.txt b/parmorceauxMax-git/HTN303.txt
new file mode 100644
index 0000000000000000000000000000000000000000..4d059d8801ac9d041e386036dfe4c404634146c2
--- /dev/null
+++ b/parmorceauxMax-git/HTN303.txt
@@ -0,0 +1,25 @@
+28572
+27413
+27222
+26083
+24080
+21226
+17783
+14400
+11785
+10169
+9667
+9852
+10387
+11641
+14213
+16971
+19358
+20959
+22136
+23310
+24184
+24767
+25443
+26487
+27609
diff --git a/parmorceauxMax-git/HTN304.txt b/parmorceauxMax-git/HTN304.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9d1662b3ee95e0b86e9f6bbfa63790b24da7aec4
--- /dev/null
+++ b/parmorceauxMax-git/HTN304.txt
@@ -0,0 +1,25 @@
+35578
+33836
+32094
+30978
+28807
+24467
+21245
+17779
+14526
+11360
+10760
+11197
+14265
+18249
+22307
+25831
+27423
+28683
+29334
+29870
+30350
+31008
+32230
+33239
+35257
diff --git a/parmorceauxMax-git/HTN305.txt b/parmorceauxMax-git/HTN305.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ada442326431c1b7234a3bb68373b5a7487a30c4
--- /dev/null
+++ b/parmorceauxMax-git/HTN305.txt
@@ -0,0 +1,25 @@
+25540
+24844
+23631
+22220
+20352
+17973
+15367
+13307
+11964
+11335
+11315
+12019
+13512
+15781
+18583
+20384
+21586
+22318
+22685
+22903
+23065
+23351
+23703
+24195
+24847
diff --git a/parmorceauxMax-git/HTN306.txt b/parmorceauxMax-git/HTN306.txt
new file mode 100644
index 0000000000000000000000000000000000000000..429c9c528c4831fd44d8dfa7f0addc5023795163
--- /dev/null
+++ b/parmorceauxMax-git/HTN306.txt
@@ -0,0 +1,25 @@
+34952
+31486
+31006
+30255
+29112
+27727
+25189
+20914
+17648
+15781
+14634
+14074
+14360
+15314
+17492
+21739
+24482
+26525
+27871
+28805
+29719
+30569
+31649
+32888
+34420
diff --git a/parmorceauxMax-git/HTN307.txt b/parmorceauxMax-git/HTN307.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b0b767eb501efbe0b8d70a8da22593289d877a62
--- /dev/null
+++ b/parmorceauxMax-git/HTN307.txt
@@ -0,0 +1,25 @@
+47475
+44202
+43665
+42317
+39693
+37388
+35142
+32662
+28379
+24291
+21218
+19861
+19455
+20248
+22388
+26020
+30970
+34292
+35865
+38450
+40407
+43434
+45113
+46580
+47164
diff --git a/parmorceauxMax-git/HTN308.txt b/parmorceauxMax-git/HTN308.txt
new file mode 100644
index 0000000000000000000000000000000000000000..73198a9899788a5d9aa1c9ec37522457974454fe
--- /dev/null
+++ b/parmorceauxMax-git/HTN308.txt
@@ -0,0 +1,25 @@
+47732
+44564
+43791
+40381
+38043
+35933
+33250
+28812
+22821
+20120
+19768
+21250
+25230
+32777
+36259
+38528
+40514
+43785
+44285
+44658
+44925
+45288
+45454
+45883
+46927
diff --git a/parmorceauxMax-git/HTN309.txt b/parmorceauxMax-git/HTN309.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5f8829dc891b9a9f102dc642dc6c73786a238fc5
--- /dev/null
+++ b/parmorceauxMax-git/HTN309.txt
@@ -0,0 +1,25 @@
+33768
+31715
+30751
+29237
+25932
+22618
+19641
+16771
+14546
+13328
+13034
+13841
+15798
+19626
+24285
+27174
+29025
+30269
+31095
+31274
+31443
+31532
+32035
+32250
+33452
diff --git a/parmorceauxMax-git/HTN310.txt b/parmorceauxMax-git/HTN310.txt
new file mode 100644
index 0000000000000000000000000000000000000000..856aee0c30bd7309b6d8237644afc175b238d5e1
--- /dev/null
+++ b/parmorceauxMax-git/HTN310.txt
@@ -0,0 +1,25 @@
+22687
+22472
+22124
+20921
+18707
+16023
+12694
+10340
+8903
+7947
+7424
+7323
+7685
+9002
+11964
+14429
+16187
+17279
+17699
+17760
+17816
+18140
+18842
+20035
+21502
diff --git a/parmorceauxMax-git/HTN311.txt b/parmorceauxMax-git/HTN311.txt
new file mode 100644
index 0000000000000000000000000000000000000000..b06ae1c648954e1224287275a2ecb766bf9a1164
--- /dev/null
+++ b/parmorceauxMax-git/HTN311.txt
@@ -0,0 +1,25 @@
+17369
+16523
+16349
+15801
+14858
+13370
+11421
+9695
+7768
+6748
+6289
+6200
+6378
+6719
+7334
+8389
+10610
+12223
+13987
+14862
+15492
+15922
+16405
+16719
+17041
diff --git a/parmorceauxMax-git/HTN312.txt b/parmorceauxMax-git/HTN312.txt
new file mode 100644
index 0000000000000000000000000000000000000000..449027723e757b8db45ed808c2a64cc7aad1f06e
--- /dev/null
+++ b/parmorceauxMax-git/HTN312.txt
@@ -0,0 +1,25 @@
+26524
+26406
+25404
+23912
+21477
+19264
+16421
+13796
+12268
+11270
+10795
+10684
+11111
+12652
+14985
+17442
+20436
+22285
+23403
+24109
+24627
+24949
+25320
+25819
+26293
diff --git a/parmorceauxMax-git/HTN313.txt b/parmorceauxMax-git/HTN313.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e8351ef3fc76f98188f3b2cda95b794cfd517cd8
--- /dev/null
+++ b/parmorceauxMax-git/HTN313.txt
@@ -0,0 +1,25 @@
+26605
+25318
+24801
+22958
+20643
+16652
+13658
+11038
+9453
+8820
+8845
+9161
+10218
+14258
+17375
+19178
+20303
+20843
+21154
+21228
+21301
+21584
+22294
+23737
+25666
diff --git a/parmorceauxMax-git/HTN314.txt b/parmorceauxMax-git/HTN314.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f89f736a2a21319816fa1e12eeca929df2f02ce9
--- /dev/null
+++ b/parmorceauxMax-git/HTN314.txt
@@ -0,0 +1,25 @@
+27092
+27068
+25196
+23706
+21039
+17917
+13123
+9875
+8311
+8105
+8931
+12889
+18013
+21913
+23842
+24799
+25166
+25447
+25677
+25828
+26010
+26012
+26109
+26391
+26778
diff --git a/parmorceauxMax-git/HTN315.txt b/parmorceauxMax-git/HTN315.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e2dd040b8e2792c77b4d8c4a47173262e096ad8a
--- /dev/null
+++ b/parmorceauxMax-git/HTN315.txt
@@ -0,0 +1,25 @@
+36054
+34844
+34214
+31857
+29481
+26879
+23594
+20018
+17703
+16314
+15536
+15330
+15953
+17297
+20524
+23868
+26094
+27587
+28686
+29513
+29961
+30461
+31301
+32868
+35118
diff --git a/parmorceauxMax-git/HTN316.txt b/parmorceauxMax-git/HTN316.txt
new file mode 100644
index 0000000000000000000000000000000000000000..66c7db9eb75d51f35301a81cf403671665941f85
--- /dev/null
+++ b/parmorceauxMax-git/HTN316.txt
@@ -0,0 +1,25 @@
+34085
+32012
+31257
+29903
+27471
+22871
+18710
+15415
+12414
+11186
+11036
+12016
+15334
+20241
+25620
+28243
+29451
+30225
+30831
+31114
+31435
+31597
+32107
+32935
+33635
diff --git a/parmorceauxMax-git/HTN317.txt b/parmorceauxMax-git/HTN317.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1976bdd769786065c3e87782b3d62c5ff1592557
--- /dev/null
+++ b/parmorceauxMax-git/HTN317.txt
@@ -0,0 +1,25 @@
+45948
+42755
+40297
+35186
+31600
+26902
+22736
+20070
+19094
+16378
+17196
+19599
+25044
+30374
+33739
+36468
+37950
+38806
+39289
+39916
+40748
+41039
+41692
+43254
+45365
diff --git a/parmorceauxMax-git/HTN318.txt b/parmorceauxMax-git/HTN318.txt
new file mode 100644
index 0000000000000000000000000000000000000000..379083afab78cf13055c0134b45eeb1da6ed22a4
--- /dev/null
+++ b/parmorceauxMax-git/HTN318.txt
@@ -0,0 +1,25 @@
+28036
+26912
+26831
+26273
+25098
+23030
+20482
+18184
+15372
+13549
+12343
+11385
+10356
+10009
+10071
+10717
+12624
+14861
+17641
+19271
+20831
+22325
+23933
+25645
+27069
diff --git a/parmorceauxMax-git/Interface.m b/parmorceauxMax-git/Interface.m
new file mode 100644
index 0000000000000000000000000000000000000000..5f77f0ecddcae316e3fe60236728e6567802b01c
--- /dev/null
+++ b/parmorceauxMax-git/Interface.m
@@ -0,0 +1,384 @@
+classdef Interface < handle
+    properties
+        T %temps (ou numéro de frame)
+        Y %observation : volume du ventricule gauche. Une observation (frame) par ligne de Y
+        N
+        meilleure_sequence
+        meilleure_sequence_models
+        loglikelihood
+        
+        interpolant_filenames
+        
+        dynamics_models
+        first_frame_of_models
+        
+        initial_alphas
+        sigma_estimation
+        sigma_test
+        
+        transition
+        proba_morceau
+        morceaux_finis
+        proba_morceaux_finis
+        sequences_model_numbers
+        seq_loglikelihood_dynamics_window
+        seq_loglikelihood_dynamics
+        
+        %loglikelihood_pose
+        %loglikelihood_dynamics_window
+        %loglikelihood_dynamics
+        loglikelihood_fini
+        
+        
+        %threshold_pose
+        threshold_dynamics
+        
+        early_detection_abnormal
+        early_detection_normal
+        
+        display_screen
+    end
+    methods
+        function obj = Interface(interpolant_filenames, display_screen)
+            
+            obj.interpolant_filenames = interpolant_filenames;
+            
+            obj.transition = [  0.5 0.5 0 0;   % départ de A
+                                0 1/3 1/3 1/3; % départ de B1
+                                0 0 0.5 0.5;   % départ de B2
+                                0 0 0 1        % départ de C
+                             ];
+            
+            %obj.pose_model = Pose_Model(interpolant_filenames(morceau));
+            
+            
+            obj.display_screen = display_screen;
+        end
+        function process_new_sequence(obj, filename, initial_alphas, sigma_estimation, sigma_test, possible_local_minimum, threshold_pose, threshold_dynamics)
+            %obj.threshold_pose = threshold_pose;
+            obj.threshold_dynamics = threshold_dynamics;
+            
+            obj.dynamics_models = {NaN, NaN, NaN, NaN}; % modèles courants A B1 B2 et C
+            obj.first_frame_of_models = [1 NaN NaN NaN]; % frame où chaque modèle commence
+            
+            if obj.display_screen == -1
+                obj.dynamics_models{1} = Dynamics_Model(obj.interpolant_filenames{1}, obj.display_screen);
+            else
+                obj.dynamics_models{1} = Dynamics_Model(obj.interpolant_filenames{1}, obj.display_screen+1);
+            end
+            
+            obj.proba_morceau = [1 0 0 0]; % proba des modèles A, B1, B2, et C
+            
+            obj.T = [];
+            obj.Y = [];
+            obj.N = [];
+            
+            %obj.loglikelihood_pose = [];
+            %obj.loglikelihood_dynamics_window = [];
+            %obj.loglikelihood_dynamics = [];
+            obj.loglikelihood_fini = [];
+            obj.early_detection_abnormal = [];
+            obj.early_detection_normal = [];
+            
+            obj.sequences_model_numbers = {NaN, NaN, NaN, NaN}; % sequences qui amènent à chaque modèle final
+            %obj.seq_loglikelihood_dynamics_window = { [], [], [], [] };
+            %obj.seq_loglikelihood_dynamics = { [], [], [], [] };
+            %obj.seq_loglikelihood = { [], [], [], [] };
+            
+            obj.initial_alphas = initial_alphas;
+            obj.sigma_estimation = sigma_estimation;
+            obj.sigma_test = sigma_test;
+            
+            obj.read_data(filename);
+            obj.N = size(obj.T,1);
+            
+            obj.dynamics_models{1}.initialise(0, initial_alphas(1), sigma_estimation, sigma_test);
+            %ligne 14
+            for frame=1:obj.N
+                obj.process_frame(frame);
+                
+                if obj.display_screen ~= -1
+                    for model=1:4
+                        if obj.proba_morceau(model) == 0 || isnan(obj.proba_morceau(model))
+                            continue
+                        end
+                        obj.dynamics_models{model}.plot_estimated_X();
+                    end
+                end
+            end
+                        
+            
+            %% choix de la meilleure sequence (peut être pour plus tard: toujours choisir la séquence qui se termine sur le modèle C ?)
+            [max_proba, indice] = max(obj.proba_morceau);
+            indice
+            obj.meilleure_sequence = obj.sequences_model_numbers{indice}
+            obj.meilleure_sequence_models = [obj.morceaux_finis{indice} obj.dynamics_models{indice}];
+            %obj.loglikelihood_dynamics_window = obj.seq_loglikelihood_dynamics_window{indice};
+            %obj.loglikelihood_dynamics = obj.seq_loglikelihood_dynamics{indice};
+            
+            %% calcul les scores pour les frames du dernier morceau
+            new_scores = meilleure_sequence_models(end).compute_loglikelihood_dynamics_forced([1:obj.N-obj.first_frame_of_models(indice)+1]);
+            obj.loglikelihood = [obj.loglikelihood_fini{indice} new_scores];
+            
+            %remaining_frames = length(obj.loglikelihood_dynamics)+1:obj.N;
+            %obj.loglikelihood_dynamics(remaining_frames) = obj.dynamics_models{indice}.compute_loglikelihood_dynamics_forced(remaining_frames - obj.first_frame_of_models(indice) + 1);
+            
+            %% à faire : afficher la séquence des modèles et la séquence de scores comme dans plot
+%%%         %fermer les fenetres
+            for i=1:length(meilleure_sequence_models)
+                meilleure_sequence_models(i).plot_estimated_X();
+            end
+%%%         save plot
+     
+        end
+        function read_data(obj, filename)
+            obj.Y =load(filename);
+            %obj.T = [1:75]';
+            %obj.Y = obj.Y / max(obj.Y);
+            %obj.Y = repmat(obj.Y, 3, 1);
+            obj.T = [1:25]';
+            obj.Y = obj.Y / max(obj.Y);
+        end
+        function process_frame(obj, frame_number)
+            
+            frame_number
+            
+            Yt = obj.Y(frame_number,:);
+            Tt = obj.T(frame_number);
+            
+            
+            new_proba_morceau = [NaN NaN NaN NaN];
+            new_model = {NaN, NaN, NaN, NaN};
+            %new_scores_window = {NaN, NaN, NaN, NaN};
+            %new_scores_fixed = {NaN, NaN, NaN, NaN};
+            new_morceaux_finis = {[], [], [], []};
+            new_proba_morceaux_finis = {0, 0, 0, 0};
+            new_scores_fini = {[], [], [], []};
+            new_first_frame_of_model = [NaN NaN NaN NaN];
+            new_sequence_modeles = {NaN, NaN, NaN, NaN};
+            
+            
+            %% boucle sur les 4 modèles possibles
+            for morceau = 1:4
+                
+                % on va regarder toutes les branches qui arrivent sur le modèle
+                
+                modele_branche = {NaN, NaN, NaN, NaN};
+                first_frame_of_model_branche = [NaN NaN NaN NaN];
+                proba_obs_branche = [NaN NaN NaN NaN];
+                %new_scores_fixed_branche = {[], [], [], []};
+                morceau_fini_branche = {NaN, NaN, NaN, NaN};
+                proba_branche = [NaN NaN NaN NaN];
+                proba_morceau_prec = {NaN NaN NaN NaN};
+                
+                if frame_number == 1
+                    if obj.proba_morceau(morceau) == 0
+                        continue
+                    end
+                    
+                    new_model{morceau} = copy(obj.dynamics_models{morceau});
+                    new_first_frame_of_model(morceau) = obj.first_frame_of_models(morceau);
+                    
+                    new_model{morceau}.process_new_frame(Yt, Tt);
+                    proba_obs = new_model{morceau}.compute_loglikelihood_dynamics_inwindow();
+                    
+                    new_proba_morceau(morceau) = log(obj.proba_morceau(morceau)) + proba_obs;
+                    
+                    %new_scores_window{morceau} = [proba_obs];
+                    %new_scores_fixed{morceau} = [];
+                    new_morceaux_finis{morceau} = [];
+                    
+                    new_sequence_modeles{morceau} = [morceau];
+                else
+                    %% on calcule les probas de toutes les branches qui arrivent sur le morceau courant
+                    for branche = 1:4
+                        trans = obj.transition(branche, morceau);
+                        
+                        % on commence par ignorer les branches impossibles
+                        if trans == 0
+                            continue
+                        end
+                        if obj.proba_morceau(branche) == 0 || isnan(obj.proba_morceau(branche))
+                            continue
+                        end
+                        
+                        if branche == morceau   % cas sans changement de modèle, donc le modèle est déjà initialisé
+                            modele_branche{branche} = copy(obj.dynamics_models{branche});
+                            first_frame_of_model_branche(branche) = obj.first_frame_of_models(morceau);
+                        else            % cas avec changement de modèle, donc il faut créer et initialiser le modèle
+                            %% on crée le modèle et on l'initialise
+                            if obj.display_screen == -1
+                                modele_branche{branche} = Dynamics_Model(obj.interpolant_filenames{morceau}, obj.display_screen);
+                            else
+                                modele_branche{branche} = Dynamics_Model(obj.interpolant_filenames{morceau}, obj.display_screen+morceau);
+                            end
+                            modele_branche{branche}.initialise(0, obj.initial_alphas(morceau), obj.sigma_estimation, obj.sigma_test);
+                            %modele_branche{branche}.initialise(0, obj.dynamics_models{branche}.current_alpha, obj.sigma_estimation, obj.sigma_test);
+                            first_frame_of_model_branche(branche) = frame_number;
+                        end
+                            
+                        %% on donne la frame au modèle, et on récupère la proba d'observation (dans la fenêtre)
+                        modele_branche{branche}.process_new_frame(Yt, Tt);
+                        %print branche et morceau
+                        BRANCHE=branche
+                        MORCEAU=morceau
+                        %proba_obs_branche(branche) = modele_branche{branche}.compute_loglikelihood_dynamics_inwindow();
+                        proba_obs_branche(branche) = modele_branche{branche}.compute_loglikelihood_dynamics_forced(frame_number-first_frame_of_model_branche(branche)+1);
+                        
+                        %% on garde en mémoire les morceaux qui sont finis, pour l'affichage final des X
+%%%%                    %%%%%%%%%%%%%%%% a faire : mettre à jour les x pour bien les étaler
+                        if branche == morceau
+                            morceau_fini_branche{branche} = 0;
+                        else
+                            morceau_fini_branche{branche} = copy(obj.dynamics_models{branche});
+%%%%                        %%%%%% mettre à jour la copie ici
+                            
+                        end
+                        
+                        %% on récupère les scores des frames pour lesquelles X ne changera plus
+                        if branche == morceau
+                            %%% on récupère les scores pour les frames qui ont (nouvellement) convergé
+                            %list_frames_converged = modele_branche{branche}.get_converged_frames();
+                            %if ~isempty(list_frames_converged)
+                            %    new_scores_fixed_branche{branche} = modele_branche{branche}.compute_loglikelihood_dynamics(list_frames_converged);
+                            %end
+                            %% on récupère les scores pour les frames précédentes, qui ont pu bouger avec le argmax
+                            proba_morceau_prec{branche} = sum(modele_branche{branche}.compute_loglikelihood_dynamics_forced([1:frame_number-first_frame_of_model_branche(branche)]));
+                            proba_morceau_prec{branche} = proba_morceau_prec{branche} + log(trans) * (frame_number-first_frame_of_model_branche(branche)-1);
+                        
+                        else
+                            %%% si on change de morceau, on récupère les derniers scores du morceau précédent, jusqu'à la frame précédente
+                            %remaining_frames = length( obj.seq_loglikelihood_dynamics{branche} )+1:frame_number-1;
+                            %frames = remaining_frames - obj.first_frame_of_models(branche) + 1;
+                            %new_scores_fixed_branche{branche} = morceau_fini_branche{branche}.compute_loglikelihood_dynamics_forced(frames);
+                            %% on récupère les scores pour les frames précédentes, qui ont pu bouger avec le argmax
+                            new_scores_branche{branche} = morceau_fini_branche{branche}.compute_loglikelihood_dynamics_forced([1:frame_number-obj.first_frame_of_models(branche)]);
+                            proba_morceau_prec{branche} = sum(new_scores_branche{branche});
+                            trans_morceau_prec = obj.transition(branche, branche);
+                            proba_morceau_prec{branche} = proba_morceau_prec{branche} + log(trans_morceau_prec) * (frame_number-obj.first_frame_of_models(branche)-1);
+                        end
+          
+                        proba_branche(branche) = sum(obj.proba_morceaux_finis{branche}) + proba_morceau_prec{branche} + log(trans) + proba_obs_branche(branche);
+                    end
+                    
+                    %% on choisi la meilleure branche
+                    [max_val, indice] = max(proba_branche);
+                    
+                    if isnan(max_val)
+                        continue
+                    end
+                    
+                    new_proba_morceau(morceau) = max_val;
+                    
+                    new_model{morceau} = modele_branche{indice};
+                    new_first_frame_of_model(morceau) = first_frame_of_model_branche(indice);
+                    
+                    %new_scores_window{morceau} = [obj.seq_loglikelihood_dynamics_window{indice} proba_obs_branche(indice)];
+                    %new_scores_fixed{morceau} = [obj.seq_loglikelihood_dynamics{indice} new_scores_fixed_branche{indice}];
+                    
+                    if morceau_fini_branche{indice} ~= 0
+                        new_morceaux_finis{morceau} = [obj.morceaux_finis{indice} morceau_fini_branche{indice}];
+                        trans = obj.transition(indice, morceau);
+                        new_proba_morceaux_finis{morceau} = [obj.proba_morceaux_finis{indice} proba_morceau_prec{indice} + log(trans)];
+                        new_scores_fini{morceau} = [obj.loglikelihood_fini{indice} new_scores_branche{indice}];
+                    else
+                        new_morceaux_finis{morceau} = obj.morceaux_finis{indice};
+                        new_proba_morceaux_finis{morceau} = obj.proba_morceaux_finis{indice};
+                        new_scores_fini{morceau} = obj.loglikelihood_fini{indice};
+                    end
+                    
+                    new_sequence_modeles{morceau} = [obj.sequences_model_numbers{indice} morceau];
+                end
+            end
+            
+            obj.proba_morceau = new_proba_morceau;
+            obj.dynamics_models = new_model;
+            obj.first_frame_of_models = new_first_frame_of_model;
+            
+            %obj.seq_loglikelihood_dynamics_window = new_scores_window;
+            %obj.seq_loglikelihood_dynamics = new_scores_fixed;*
+            obj.loglikelihood_fini = new_scores_fini;
+            
+            obj.morceaux_finis = new_morceaux_finis;
+            obj.proba_morceaux_finis = new_proba_morceaux_finis;
+            
+            obj.sequences_model_numbers = new_sequence_modeles;
+         
+            
+            %% réflexions pour plus tard
+            %% gérer : alpha différents pour les différents modèles (alpha_ini + marges)
+            %%         fin des modèles : duppliquer les dernières colonnes pour que x ait le temps de se fixer ? (avec pénalité lors de la comparaison des modèles)
+            %%         ou alors : on n'attend pas que les x soient stables
+            %%         initialiser le modèle concurrent à chaque fois (tant qu'on n'a pas basculé dessus)    
+        end
+        function plot(obj) %% cette fonction est à modifier car maintenant nous avons plusieurs modèles / morceaux
+            obj.dynamics_model.plot_estimated_X();
+            
+            figure(obj.display_screen);
+            n = length(obj.loglikelihood_dynamics_window);
+            subplot(4,1,1)
+            hold off
+            plot(obj.T(1:n),obj.Y(1:n,1))
+            title('Pose representation')
+            xlabel('frame number')
+            ylabel('1st dimension')
+            XL = xlim;
+            
+            subplot(4,1,2)
+            hold off
+            plot(obj.T(1:n),obj.loglikelihood_pose)
+            hold on
+            indexes_p = (obj.loglikelihood_pose < obj.threshold_pose);
+            plot(obj.T(indexes_p),obj.loglikelihood_pose(indexes_p),'.r')
+            title('Likelihood of the pose to be normal')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-5);
+            ylim([YL1 YL(2)])
+            hold on
+            
+            subplot(4,1,3)
+            hold off
+            plot(obj.T(1:n),obj.loglikelihood_dynamics_window)
+            hold on
+            indexes_w = (obj.loglikelihood_dynamics_window < obj.threshold_dynamics);
+            plot(obj.T(indexes_w),obj.loglikelihood_dynamics_window(indexes_w),'.r')
+            title('Likelihood of the dynamics to be normal, computed in the dynamic window')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-20);
+            ylim([YL1 YL(2)])
+            hold on
+            
+            subplot(4,1,4)
+            hold off
+            n2 = length(obj.loglikelihood_dynamics);
+            plot(obj.T(1:n2),obj.loglikelihood_dynamics)
+            hold on
+            indexes_d = (obj.loglikelihood_dynamics < obj.threshold_dynamics);
+            plot(obj.T(indexes_d),obj.loglikelihood_dynamics(indexes_d),'.r')
+            title('Likelihood of the dynamics to be normal, computed for each converged frame')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-20);
+            YL2 = min(YL(2),10);
+            ylim([YL1 YL2])
+            hold on
+            
+            subplot(4,1,1)
+            hold on
+            plot(obj.T(indexes_p),obj.Y(indexes_p,1),'.r')
+            %plot(obj.T(indexes_w),obj.Y(indexes_w,1),'.r')
+            plot(obj.T(indexes_d),obj.Y(indexes_d,1),'.r')
+            %indexes = indexes_p == 0 & indexes_w == 0 & [indexes_d ones(1,n-n2)] == 0;
+            indexes = indexes_p == 0 & [indexes_d ones(1,n-n2)] == 0;
+            plot(obj.T(indexes),obj.Y(indexes,1),'.g')
+        end
+    end
+end
diff --git a/parmorceauxMax-git/Interface_A.m b/parmorceauxMax-git/Interface_A.m
new file mode 100644
index 0000000000000000000000000000000000000000..34a168cbbf4ea810cdfe77772df3dd0d40c078f4
--- /dev/null
+++ b/parmorceauxMax-git/Interface_A.m
@@ -0,0 +1,163 @@
+classdef Interface < handle
+    properties
+        T %temps (ou numéro de frame)
+        Y %observation : volume du ventricule gauche. Une observation (frame) par ligne de Y
+        N
+        
+        pose_model
+        dynamics_model
+        
+        loglikelihood_pose
+        loglikelihood_dynamics_window
+        loglikelihood_dynamics
+        
+        threshold_pose
+        threshold_dynamics
+        
+        early_detection_abnormal
+        early_detection_normal
+        
+        display_screen
+    end
+    methods
+        function obj = Interface(interpolant_filename, display_screen)
+            obj.pose_model = Pose_Model(interpolant_filename);
+            
+            obj.display_screen = display_screen;
+        end
+        function process_new_sequence(obj, filename, initial_alpha, sigma_estimation, sigma_test, possible_local_minimum, threshold_pose, threshold_dynamics)
+            obj.threshold_pose = threshold_pose;
+            obj.threshold_dynamics = threshold_dynamics;
+            
+            
+            obj.T = [];
+            obj.Y = [];
+            obj.N = [];
+            obj.loglikelihood_pose = [];
+            obj.loglikelihood_dynamics_window = [];
+            obj.loglikelihood_dynamics = [];
+            obj.early_detection_abnormal = [];
+            obj.early_detection_normal = [];
+            
+            obj.read_data(filename);
+            obj.N = size(obj.T,1);
+            if initial_alpha == -1
+                % estimate initial_alpha from the main frequency of Y_1
+                ft = smooth(abs(fft(obj.Y(:,1)-mean(obj.Y(:,1)))));
+                [maxValue,indexMax] = max(ft(1:length(ft)/2));
+                initial_alpha = indexMax / length(obj.Y(:,1));
+            end
+            
+            obj.initialise(initial_alpha, sigma_estimation, sigma_test, possible_local_minimum);
+            
+            for frame=1:obj.N
+                obj.process_frame(frame);
+                
+                if obj.display_screen ~= -1
+                    obj.plot();
+                end
+            end
+            
+            remaining_frames = length(obj.loglikelihood_dynamics)+1:obj.N;
+            obj.loglikelihood_dynamics(remaining_frames) = obj.dynamics_model.compute_loglikelihood_dynamics_forced(remaining_frames);
+        
+        %LLLdynwin=obj.loglikelihood_dynamics_window(26:50);
+        %LLLdyn=obj.loglikelihood_dynamics(26:50);
+        %save loglikelihood_dyn_win.mat LLLdynwin
+        %fid = fopen('loglikelihood_dyn_win', 'a+')
+        %fprintf(fid, '%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f' , LLLdynwin)
+        %fclose(fid);
+        end
+        function read_data(obj, filename)
+            obj.Y =load(filename);
+            obj.T =[1:75]'; 
+            obj.Y = obj.Y / max(obj.Y);
+            obj.Y = repmat(obj.Y, 3, 1);
+        end
+        function process_frame(obj, frame_number)
+            Yt = obj.Y(frame_number,:);
+            Tt = obj.T(frame_number);
+            
+            obj.loglikelihood_pose(frame_number) = obj.pose_model.compute_loglikelihood_Y(Yt);
+            
+            obj.dynamics_model.process_new_frame(Yt, Tt);
+            
+            obj.loglikelihood_dynamics_window(frame_number) = obj.dynamics_model.compute_loglikelihood_dynamics_inwindow();
+            list_frames_converged = obj.dynamics_model.get_converged_frames();
+            obj.loglikelihood_dynamics(list_frames_converged) = obj.dynamics_model.compute_loglikelihood_dynamics(list_frames_converged);
+        end
+        function plot(obj)
+            obj.dynamics_model.plot_estimated_X();
+            
+            figure(obj.display_screen);
+            n = length(obj.loglikelihood_dynamics_window);
+            subplot(4,1,1)
+            hold off
+            plot(obj.T(1:n),obj.Y(1:n,1))
+            title('Pose representation')
+            xlabel('frame number')
+            ylabel('1st dimension')
+            XL = xlim;
+            
+            subplot(4,1,2)
+            hold off
+            plot(obj.T(1:n),obj.loglikelihood_pose)
+            hold on
+            indexes_p = (obj.loglikelihood_pose < obj.threshold_pose);
+            plot(obj.T(indexes_p),obj.loglikelihood_pose(indexes_p),'.r')
+            title('Likelihood of the pose to be normal')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-5);
+            ylim([YL1 YL(2)])
+            hold on
+            
+            subplot(4,1,3)
+            hold off
+            plot(obj.T(1:n),obj.loglikelihood_dynamics_window)
+            hold on
+            indexes_w = (obj.loglikelihood_dynamics_window < obj.threshold_dynamics);
+            plot(obj.T(indexes_w),obj.loglikelihood_dynamics_window(indexes_w),'.r')
+            title('Likelihood of the dynamics to be normal, computed in the dynamic window')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-20);
+            ylim([YL1 YL(2)])
+            hold on
+            
+            subplot(4,1,4)
+            hold off
+            n2 = length(obj.loglikelihood_dynamics);
+            plot(obj.T(1:n2),obj.loglikelihood_dynamics)
+            hold on
+            indexes_d = (obj.loglikelihood_dynamics < obj.threshold_dynamics);
+            plot(obj.T(indexes_d),obj.loglikelihood_dynamics(indexes_d),'.r')
+            title('Likelihood of the dynamics to be normal, computed for each converged frame')
+            xlabel('Frame number')
+            ylabel('Log likelihood')
+            xlim(XL)
+            YL = ylim;
+            YL1 = max(YL(1),-20);
+            YL2 = min(YL(2),10);
+            ylim([YL1 YL2])
+            hold on
+            
+            subplot(4,1,1)
+            hold on
+            plot(obj.T(indexes_p),obj.Y(indexes_p,1),'.r')
+            %plot(obj.T(indexes_w),obj.Y(indexes_w,1),'.r')
+            plot(obj.T(indexes_d),obj.Y(indexes_d,1),'.r')
+            %indexes = indexes_p == 0 & indexes_w == 0 & [indexes_d ones(1,n-n2)] == 0;
+            indexes = indexes_p == 0 & [indexes_d ones(1,n-n2)] == 0;
+            plot(obj.T(indexes),obj.Y(indexes,1),'.g')
+        end
+    end
+    methods (Abstract)
+        initialise(obj, initial_alpha, sigma_estimation, sigma_test, possible_local_minimum)
+    end
+    
+end
diff --git a/parmorceauxMax-git/Interface_Periodic.m b/parmorceauxMax-git/Interface_Periodic.m
new file mode 100644
index 0000000000000000000000000000000000000000..34b433dd3ceaaf8dc9d7429ae14a7efa5f8902cb
--- /dev/null
+++ b/parmorceauxMax-git/Interface_Periodic.m
@@ -0,0 +1,75 @@
+classdef Interface_Periodic < Interface
+    methods
+        function obj = Interface_Periodic(filename_interpolant, display_screen)
+            obj = obj@Interface(filename_interpolant, display_screen);
+            
+            if display_screen == -1
+                obj.dynamics_model = Dynamics_Model_Periodic(filename_interpolant, display_screen);
+            else
+                obj.dynamics_model = Dynamics_Model_Periodic(filename_interpolant, display_screen+2);
+            end
+        end
+        function initialise(obj, initial_alpha, sigma_estimation, sigma_test, possible_local_minimum)
+            if possible_local_minimum && obj.N > 15
+                if obj.display_screen ~= -1
+                    figure(obj.display_screen)
+                    clf(obj.display_screen)
+                end
+                
+                % choose the most likely initial X
+                llh_X = [0,0,0,0];
+                
+                % start from 0
+                obj.dynamics_model.initialise(0, initial_alpha, sigma_estimation, sigma_test);
+                
+                for i=1:15
+                    obj.dynamics_model.process_new_frame(obj.Y(i,:), obj.T(i));
+                end
+                
+                llhs = obj.dynamics_model.compute_loglikelihood_dynamics_forced(1:15);
+                llh_X(1) = sum( llhs(isfinite(llhs)) );
+                
+                
+                % start from 0.25
+                obj.dynamics_model.initialise(0.25, initial_alpha, sigma_estimation, sigma_test);
+                
+                for i=1:15
+                    obj.dynamics_model.process_new_frame(obj.Y(i,:), obj.T(i));
+                end
+                
+                llhs = obj.dynamics_model.compute_loglikelihood_dynamics_forced(1:15);
+                llh_X(2) = sum( llhs(isfinite(llhs)) );
+                
+                % start from 0.5
+                obj.dynamics_model.initialise(0.5, initial_alpha, sigma_estimation, sigma_test);
+                
+                for i=1:15
+                    obj.dynamics_model.process_new_frame(obj.Y(i,:), obj.T(i));
+                end
+                
+                llhs = obj.dynamics_model.compute_loglikelihood_dynamics_forced(1:15);
+                llh_X(3) = sum( llhs(isfinite(llhs)) );
+                
+                % start from 0.75
+                obj.dynamics_model.initialise(0.75, initial_alpha, sigma_estimation, sigma_test);
+                
+                for i=1:15
+                    obj.dynamics_model.process_new_frame(obj.Y(i,:), obj.T(i));
+                end
+                
+                llhs = obj.dynamics_model.compute_loglikelihood_dynamics_forced(1:15);
+                llh_X(4) = sum( llhs(isfinite(llhs)) );
+                
+                % choose best
+                [~, ind] = max(llh_X);
+                x = [0,0.25,0.5,0.75];
+                x_ini = x(ind);
+                
+                obj.dynamics_model.initialise(x_ini, initial_alpha, sigma_estimation, sigma_test);
+           else
+                %default
+                obj.dynamics_model.initialise(0, initial_alpha, sigma_estimation, sigma_test);
+           end
+        end
+    end
+end
diff --git a/parmorceauxMax-git/LLLDyn.mat b/parmorceauxMax-git/LLLDyn.mat
new file mode 100644
index 0000000000000000000000000000000000000000..bba22b4155d4d68a789f14e26f04a82873d4724d
Binary files /dev/null and b/parmorceauxMax-git/LLLDyn.mat differ
diff --git a/parmorceauxMax-git/LLLDynWin.mat b/parmorceauxMax-git/LLLDynWin.mat
new file mode 100644
index 0000000000000000000000000000000000000000..5d004d9e8ca1cfd716ee19db05c43f0eefdad855
Binary files /dev/null and b/parmorceauxMax-git/LLLDynWin.mat differ
diff --git a/parmorceauxMax-git/LLLDynpt01.txt b/parmorceauxMax-git/LLLDynpt01.txt
new file mode 100644
index 0000000000000000000000000000000000000000..05de59ed0963fd0a0cd119f733731eb36a92b7c9
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt01.txt
@@ -0,0 +1 @@
+-172.39,-116.98,-71.582,-38.764,-18.573,-5.4306,-0.69024,0.53016,0.35935,0.31116,-0.79147,-0.47832,-206.87,-50.969,-59.614,-36.728,-30.269,-19.26,-28.638,-39.032,-46.913,-51.738,-39.432,-28.361,-22.284
diff --git a/parmorceauxMax-git/LLLDynpt02.txt b/parmorceauxMax-git/LLLDynpt02.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0a81bb7f006aa0c286f0aca630f707246124fe9f
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt02.txt
@@ -0,0 +1 @@
+-10.168,-1.2203,-0.93924,-0.25244,-0.38772,-0.77596,-0.73616,-0.09213,-0.75837,-0.6664,-0.27748,0.16749,-0.040582,-5.715,-66.614,-44.237,-24.235,-15.201,-10.293,-4.2359,-2.3082,-1.0172,-1.8508,-4.1934,-4.142
diff --git a/parmorceauxMax-git/LLLDynpt03.txt b/parmorceauxMax-git/LLLDynpt03.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d7d5b7516c832baa047fe9004cc1eeb3681297f6
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt03.txt
@@ -0,0 +1 @@
+-160.06,-112.25,-73.595,-42.443,-21.827,-6.6385,-1.6552,0.19653,0.58545,0.4734,0.44613,-5.0289,-0.74522,0.53188,-44.132,-29.604,-22.908,-20.556,-22.583,-25.411,-19.976,-14.574,-12.69,-12.333,-12.086
diff --git a/parmorceauxMax-git/LLLDynpt04.txt b/parmorceauxMax-git/LLLDynpt04.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8f434f7b9d9e5123605774d574061e58b0240579
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt04.txt
@@ -0,0 +1 @@
+-13.093,-2.3399,-1.1254,-1.2705,-1.6581,-2.0993,-2.2615,-1.3182,-2.0246,-2.2206,-1.3494,-0.12937,-5.4342,-161.73,-106.56,-53.92,-96.659,-30.606,-14.73,-8.1518,-3.3552,-2.4962,-4.968,-8.9204,-9.9084
diff --git a/parmorceauxMax-git/LLLDynpt05.txt b/parmorceauxMax-git/LLLDynpt05.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d540288330dea9aee312df172273f1fed7a3e3dc
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt05.txt
@@ -0,0 +1 @@
+-245.16,-222.29,-235.35,-247.18,-262.45,-281.34,-305.06,-338.41,-368.53,-406.51,-447.18,-489.81,-528.88,-556.1,-556.97,-556.14,-558.48,-558.83,-559.37,-559.66,-528.72,-508.08,-508.65,-508.65,-476.47
diff --git a/parmorceauxMax-git/LLLDynpt06.txt b/parmorceauxMax-git/LLLDynpt06.txt
new file mode 100644
index 0000000000000000000000000000000000000000..baf801e76b24e2d45079e99b6a851842469e50be
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt06.txt
@@ -0,0 +1 @@
+-110.15,-62.969,-40.14,-22.109,-7.6514,-3.6361,-0.69819,0.40295,0.58644,0.31442,-1.0917,0.52928,-147.31,-117.34,-62.719,-22.911,-10.686,-4.803,-0.64686,-36.538,-41.605,-44.678,-46.425,-41.677,-33.347
diff --git a/parmorceauxMax-git/LLLDynpt07.txt b/parmorceauxMax-git/LLLDynpt07.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5bff2fb6d1192137906ca7fa66fb34cdcaa26c94
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt07.txt
@@ -0,0 +1 @@
+-129.75,-86.155,-49.546,-24.588,-11.823,-2.8274,-0.11156,0.47738,0.19777,0.19903,-0.75897,-1.7163,-2.479,-224.9,-654.05,-39.063,-16.026,-18.161,-18.974,-22.091,-16.541,-12.23,-11.723,-11.913,-12.422
diff --git a/parmorceauxMax-git/LLLDynpt08.txt b/parmorceauxMax-git/LLLDynpt08.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9ee4ca52c6ccffa4200a83a8475d59b0904a57b4
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt08.txt
@@ -0,0 +1 @@
+-8.1294,-3.3939,-4.8711,-8.1377,-8.0274,-6.7728,-5.9897,-3.9613,-1.0274,-1.5122,-0.032799,-1.9724,-6.0095,-63.319,-50.39,-35.316,-22.498,-4.095,-2.9231,-1.1373,-0.8737,-2.134,-4.8827,-6.7426,-7.9379
diff --git a/parmorceauxMax-git/LLLDynpt09.txt b/parmorceauxMax-git/LLLDynpt09.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9e8676cdfed28734f8d09ff817d1981450ba60b3
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt09.txt
@@ -0,0 +1 @@
+-246.03,-225.94,-204.46,-189.38,-189.84,-214.16,-239.83,-268.21,-302,-343.98,-392.88,-455.8,-537,-551.91,-554.71,-555.16,-548.91,-526.42,-482.85,-428.81,-362.23,-288.02,-225.51,-168.01,-117.97
diff --git a/parmorceauxMax-git/LLLDynpt10.txt b/parmorceauxMax-git/LLLDynpt10.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3d8d4f84271cc741966a44557aa3ce66236b61d8
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt10.txt
@@ -0,0 +1 @@
+-240.85,-223.31,-201.02,-189.48,-187.76,-200.83,-244.94,-290.49,-329.82,-370.33,-420.5,-468.99,-522.4,-554.61,-554.99,-555.76,-556.77,-557.66,-544.99,-518.12,-473.09,-401.52,-329.22,-254.64,-189.58
diff --git a/parmorceauxMax-git/LLLDynpt11.txt b/parmorceauxMax-git/LLLDynpt11.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a35f1555e4d28c5798bcd2b06ffa9d1adf8d4baa
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt11.txt
@@ -0,0 +1 @@
+-140.4,-86.998,-54.815,-31.914,-11.772,-4.3361,-0.4527,0.53845,0.019408,-6.5855,-9.3088,-1.7904,-85.101,-81.159,-72.046,-36.582,-16.464,-12.838,-16.688,-23.563,-26.393,-28.899,-29.556,-20.701,-11.789
diff --git a/parmorceauxMax-git/LLLDynpt12.txt b/parmorceauxMax-git/LLLDynpt12.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d33fd228cde2092af69e9cb1c1f361939acfcf1e
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt12.txt
@@ -0,0 +1 @@
+-181.2,-118.95,-80.829,-53.735,-30.712,-13.884,-5.5801,-0.069812,0.66216,0.57881,0.61681,0.38156,-96.977,-64.478,-94.076,-45.529,-48.052,-21.639,-24.029,-32.911,-41.617,-49.169,-55.784,-59.211,-42.482
diff --git a/parmorceauxMax-git/LLLDynpt13.txt b/parmorceauxMax-git/LLLDynpt13.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8a57206568fcc4649f3563c18164e80ce2c758f4
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt13.txt
@@ -0,0 +1 @@
+-159.45,-99.562,-67.464,-40.616,-22.062,-11.185,-4.1532,-0.79733,0.56641,0.56557,-1.2728,-2.3658,-290.21,-80.18,-112.21,-51.975,-44.832,-9.4935,-13.14,-19.288,-25.908,-33.17,-39.123,-40.416,-38.985
diff --git a/parmorceauxMax-git/LLLDynpt14.txt b/parmorceauxMax-git/LLLDynpt14.txt
new file mode 100644
index 0000000000000000000000000000000000000000..73f9270d060dcb33d60228d89d5af80fc5723244
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt14.txt
@@ -0,0 +1 @@
+-206.75,-141.24,-96.866,-64.8,-37.671,-15.389,-6.1265,0.23843,0.66125,0.44171,-0.022297,0.57472,-413.21,-104.82,-55.109,-60.331,-41.294,-23.473,-20.038,-30.622,-35.548,-40.708,-32.195,-24.808,-19.79
diff --git a/parmorceauxMax-git/LLLDynpt15.txt b/parmorceauxMax-git/LLLDynpt15.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e215837a47bc83ec09f5af09eb1f84ae4dafef99
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt15.txt
@@ -0,0 +1 @@
+-92.781,-45.458,-26.322,-10.202,-1.6664,0.60244,0.61381,-7.2393,-7.9488,-12.904,-310.43,-662.75,-31.343,-77.891,-39.984,-20.106,-10.195,-4.7684,-1.0835,-32.781,-38.734,-42.706,-45.182,-44.686,-40.196
diff --git a/parmorceauxMax-git/LLLDynpt16.txt b/parmorceauxMax-git/LLLDynpt16.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e323b5a8909f94731b70fe8ba2852dc23941b3c0
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt16.txt
@@ -0,0 +1 @@
+-149.88,-85.537,-62.469,-42.09,-16.613,-8.6364,-2.6992,-0.25393,0.46632,-1.0699,-1.4357,-1.411,-276.06,-171.05,-100.32,-49.627,-12.782,-14.903,-21.467,-28.906,-36.581,-42.887,-46.024,-45.004,-40.711
diff --git a/parmorceauxMax-git/LLLDynpt17.txt b/parmorceauxMax-git/LLLDynpt17.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ed891a23e5fbad299e2d0bd3505ad348dd95cf10
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt17.txt
@@ -0,0 +1 @@
+-151.16,-98.03,-64.061,-39.076,-21.297,-8.6685,-3.1288,-0.24875,0.59642,0.56983,-2.7026,-4.5424,0.57185,-46.129,-145.64,-70.954,-33.691,-13.745,-30.078,-40.44,-43.641,-46.379,-46.322,-50.938,-34.418
diff --git a/parmorceauxMax-git/LLLDynpt18.txt b/parmorceauxMax-git/LLLDynpt18.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d5ada337b8dafa6aaaacc6b79369a7142834a844
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt18.txt
@@ -0,0 +1 @@
+-182.08,-118.46,-81.132,-50.217,-26.165,-11.458,-3.8544,-1.838,0.39001,0.2137,-0.16238,0.58178,-55.385,-51.453,-275.9,-149.61,-65.479,-17.493,-24.675,-32.407,-41.562,-50.373,-56.425,-58.149,-57.387
diff --git a/parmorceauxMax-git/LLLDynpt19.txt b/parmorceauxMax-git/LLLDynpt19.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1ce9ccc5a2813b3b4e06b2330a90145b53339ba8
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt19.txt
@@ -0,0 +1 @@
+-254.33,-184.6,-131.38,-91.521,-59.353,-34.458,-16.91,-7.4621,-1.7675,0.16817,0.57007,0.25324,-0.93562,-5.5979,-12.574,-51.108,-49.74,-55.228,-18.784,-14.781,-22.291,-28.419,-30.787,-33.308,-29.257
diff --git a/parmorceauxMax-git/LLLDynpt20.txt b/parmorceauxMax-git/LLLDynpt20.txt
new file mode 100644
index 0000000000000000000000000000000000000000..cad9e2b500d4e288fe0059e2496b02d765e13e62
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt20.txt
@@ -0,0 +1 @@
+-216.07,-149.24,-106.52,-68.086,-35.908,-15.578,-5.4933,-0.77931,-2.8186,0.032594,0.58902,-62.158,-54.408,-418.03,-277.32,-152.67,-72.487,-27.043,-50.82,-74.261,-89.8,-97.422,-99.626,-94.631,-83.61
diff --git a/parmorceauxMax-git/LLLDynpt21.txt b/parmorceauxMax-git/LLLDynpt21.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e5a3304ffa0de781f9cf49af2164a587f1ad1cb6
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt21.txt
@@ -0,0 +1 @@
+-142.83,-94.032,-53.167,-27.292,-13.676,-6.0911,-1.5665,0.3585,0.37594,0.51216,0.17272,-0.033031,0.11262,-49.968,-148.71,-68.093,-13.687,-16.195,-24.075,-31.507,-36.475,-38.986,-38.912,-36.87,-30.792
diff --git a/parmorceauxMax-git/LLLDynpt22.txt b/parmorceauxMax-git/LLLDynpt22.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2206bebf4970b8b6f16db76e0d9e89e5f3e83f53
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt22.txt
@@ -0,0 +1 @@
+-95.618,-49.095,-28.495,-10.278,-4.6522,-0.91804,0.6643,0.62241,-1.0781,-2.3263,-3.3172,-53.611,-158.55,-83.683,-33.554,-12.509,-4.2767,-0.37508,-36.909,-41.817,-44.875,-42.373,-40.525,-31.199,-26.352
diff --git a/parmorceauxMax-git/LLLDynpt23.txt b/parmorceauxMax-git/LLLDynpt23.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1333fb68ecbbc18bb6960987919a353f094594a5
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt23.txt
@@ -0,0 +1 @@
+-143.78,-103.92,-71.992,-47.008,-25.361,-12.124,-5.9068,-2.6344,-2.5881,-0.67484,-488.86,-503.24,-528.15,-555.04,-555.57,-521.35,-458.76,-374.6,-282.44,-200.41,-137.29,-86.62,-47.344,-39.013,-44.043
diff --git a/parmorceauxMax-git/LLLDynpt24.txt b/parmorceauxMax-git/LLLDynpt24.txt
new file mode 100644
index 0000000000000000000000000000000000000000..cd34b4273a24a75ad30800249a45fd1b06c09752
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt24.txt
@@ -0,0 +1 @@
+-204.66,-151.21,-101.72,-70.441,-43.252,-27.17,-15.237,-6.7654,-2.5375,-0.33189,0.48075,0.63518,0.52361,0.65602,-0.51739,-3.4033,-19.009,-14.493,-15.542,-15.303,-16.531,-17.63,-18.167,-17.989,-14.928
diff --git a/parmorceauxMax-git/LLLDynpt25.txt b/parmorceauxMax-git/LLLDynpt25.txt
new file mode 100644
index 0000000000000000000000000000000000000000..49795ede00be08ac8ca33c6ee6d7143bb13509e6
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt25.txt
@@ -0,0 +1 @@
+-216.58,-162.73,-115.48,-75.725,-44.703,-22.73,-10.815,-3.2499,-0.17909,0.44176,0.44113,0.405,0.56893,0.4722,0.53649,-1.4885,-16.097,-19.817,-19.045,-20.155,-21.987,-23.693,-24.621,-24.553,-19.128
diff --git a/parmorceauxMax-git/LLLDynpt26.txt b/parmorceauxMax-git/LLLDynpt26.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f3134f47513ba27202ee631002def174f99fc39f
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt26.txt
@@ -0,0 +1 @@
+-149.07,-101.32,-61.82,-36.371,-19.461,-8.1333,-3.4331,-0.86193,0.39946,0.53817,0.64576,-4.9852,-0.72752,0.34852,-121.77,-51.287,-15.594,-17.63,-20.408,-23.565,-26.465,-28.641,-29.881,-28.367,-25.168
diff --git a/parmorceauxMax-git/LLLDynpt27.txt b/parmorceauxMax-git/LLLDynpt27.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d4b5f9a4fce0996a102ccd01dc3710b4bb6276f8
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt27.txt
@@ -0,0 +1 @@
+-9.4042,-1.9152,-2.4353,-3.4395,-4.277,-4.3158,-3.6481,-2.6454,-1.8643,-0.35134,-0.51213,-0.57151,-5.5716,-215.64,-115.18,-57.823,-23.227,-11.158,-14.529,-19.989,-23.652,-15.646,-8.551,-10.209,-11.324
diff --git a/parmorceauxMax-git/LLLDynpt28.txt b/parmorceauxMax-git/LLLDynpt28.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5a17a4f6ffdeea6f5c4c3ff3d5fb124113bce32e
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt28.txt
@@ -0,0 +1 @@
+-119.01,-72.493,-42.043,-20.127,-8.1864,-2.7244,0.055552,0.62702,-2.9722,-0.32322,0.57151,-143.5,-214.69,-151.58,-76.629,-38.802,-14.6,-31.467,-41.071,-48.974,-56.418,-60.194,-59.302,-52.914,-43.106
diff --git a/parmorceauxMax-git/LLLDynpt29.txt b/parmorceauxMax-git/LLLDynpt29.txt
new file mode 100644
index 0000000000000000000000000000000000000000..2abf608039828cb4f0f6cd9e7157f58aa024e751
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt29.txt
@@ -0,0 +1 @@
+-68.026,-32.233,-16.771,-5.9686,-1.312,0.40232,0.087685,0.54588,0.037936,0.21373,0.525,-1.1507,-27.545,-14.59,-9.4438,-9.4151,-11.532,-13.585,-15.79,-17.883,-11.177,-6.4776,-6.5245,-12.915,-19.72
diff --git a/parmorceauxMax-git/LLLDynpt30.txt b/parmorceauxMax-git/LLLDynpt30.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e9c3ae236c4b9f223617b26badbd0e8e05437b0a
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt30.txt
@@ -0,0 +1 @@
+-176.54,-126.88,-88.181,-54.607,-29.232,-13.894,-5.0859,-1.3351,0.20529,0.62466,0.66604,0.54968,0.5585,0.60795,-0.23806,-23.673,-17.071,-15.115,-14.048,-15.557,-12.316,-13.416,-10.381,-10.721,-10.115
diff --git a/parmorceauxMax-git/LLLDynpt31.txt b/parmorceauxMax-git/LLLDynpt31.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e1a70e8597a7cba5173c9efe0ed41c0d11e82689
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt31.txt
@@ -0,0 +1 @@
+-199.49,-140.34,-99.767,-65.665,-40.814,-23.812,-10.751,-5.2073,-1.5438,-0.13834,-1.563,-0.27885,-0.06521,0.25778,-204.39,-116.17,-58.452,-16.227,-26.095,-39.59,-50.119,-56.419,-56.93,-53.413,-46.094
diff --git a/parmorceauxMax-git/LLLDynpt32.txt b/parmorceauxMax-git/LLLDynpt32.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d86fdcbe972e66dd43e66a2d22892f523baee2d8
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt32.txt
@@ -0,0 +1 @@
+-160.85,-109.54,-73.836,-43.712,-22.836,-10.109,-2.6722,0.1071,0.53769,0.31713,0.35805,-1.5594,-0.77862,0.57996,-125.84,-55.295,-15.746,-18.676,-23.074,-24.98,-28.817,-23.092,-18.668,-17.269,-15.511
diff --git a/parmorceauxMax-git/LLLDynpt33.txt b/parmorceauxMax-git/LLLDynpt33.txt
new file mode 100644
index 0000000000000000000000000000000000000000..1733f9a7e205d5b2bf5b352a680bd47b23dd368f
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt33.txt
@@ -0,0 +1 @@
+-124.02,-78.728,-48.088,-28.91,-14.033,-4.6505,-1.6096,0.087804,0.41744,-0.1691,-0.6084,0.20727,0.63152,-1.6502,-24.053,-11.829,-11.187,-11.044,-12.918,-15.099,-17.238,-19.159,-13.642,-6.7721,-12.195
diff --git a/parmorceauxMax-git/LLLDynpt34.txt b/parmorceauxMax-git/LLLDynpt34.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7ebd9666bc86ca03c33b913ab0151e89bc9288b3
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt34.txt
@@ -0,0 +1 @@
+-114.47,-77.439,-46.722,-26.312,-13.334,-5.9998,-1.8699,-0.26828,0.056267,-0.45497,0.049756,-0.031547,-2.2642,-8.0057,-10.031,-7.1354,-7.7702,-7.8883,-8.8292,-9.587,-6.1918,-6.5749,-4.2353,-4.1054,-4.6551
diff --git a/parmorceauxMax-git/LLLDynpt35.txt b/parmorceauxMax-git/LLLDynpt35.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d31a504ecf106222dcad250e0fff8ea3ca68949f
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt35.txt
@@ -0,0 +1 @@
+-159.27,-104.09,-75.881,-52.352,-34.378,-21.516,-9.9489,-3.1812,-0.18387,0.48654,0.61102,0.6382,0.47589,0.19632,-1.1678,-18.133,-11.716,-9.6645,-8.8107,-9.8924,-11.389,-12.787,-9.284,-9.5266,-6.3412
diff --git a/parmorceauxMax-git/LLLDynpt36.txt b/parmorceauxMax-git/LLLDynpt36.txt
new file mode 100644
index 0000000000000000000000000000000000000000..56cf21598911928ea3e065bd7a6640661b231e64
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt36.txt
@@ -0,0 +1 @@
+-187.85,-135.04,-98.27,-67.297,-43.609,-28.09,-16.511,-8.2554,-3.4217,-0.41242,0.47962,0.51299,0.57841,0.46946,-0.47794,-29.176,-14.829,-8.1281,-14.183,-22.79,-28.287,-32.532,-32.47,-30.102,-25.763
diff --git a/parmorceauxMax-git/LLLDynpt37.txt b/parmorceauxMax-git/LLLDynpt37.txt
new file mode 100644
index 0000000000000000000000000000000000000000..df1644e27e9350e55a330c6a262e0182c08b9490
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt37.txt
@@ -0,0 +1 @@
+-112.54,-74.202,-50.378,-29.169,-17.404,-10.251,-4.8891,-1.5717,0.27502,-527.94,-535.36,-545.08,-554.01,-558.39,-535.07,-502.1,-429.94,-352.54,-259.01,-176.85,-120.36,-79.605,-75.522,-52.452,-45.354
diff --git a/parmorceauxMax-git/LLLDynpt38.txt b/parmorceauxMax-git/LLLDynpt38.txt
new file mode 100644
index 0000000000000000000000000000000000000000..07b6cd6486ded3b47b73e81c82669f944f61f0c4
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt38.txt
@@ -0,0 +1 @@
+-99.372,-61.888,-38.707,-21.47,-9.3424,-3.4602,-0.85623,0.38695,0.64918,0.5567,0.40216,-0.11076,-0.26894,-5.7935,-11.001,-8.8179,-9.3677,-10.725,-11.521,-11.955,-12.197,-7.4504,-3.2725,-3.3875,-8.1574
diff --git a/parmorceauxMax-git/LLLDynpt39.txt b/parmorceauxMax-git/LLLDynpt39.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a43747b4a4d5fb9e7d3c7f65bec745f03ab9d9b6
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt39.txt
@@ -0,0 +1 @@
+-161.13,-109.54,-70.022,-39.059,-18.461,-6.2458,-0.96157,0.49391,0.49168,0.40653,-2.3853,-6.1731,-2.0403,-308.67,-89.568,-38.543,-19.322,-7.0102,-19.706,-23.984,-30.45,-36.649,-36.092,-28.498,-21.216
diff --git a/parmorceauxMax-git/LLLDynpt40.txt b/parmorceauxMax-git/LLLDynpt40.txt
new file mode 100644
index 0000000000000000000000000000000000000000..6e7b78ff220ee6f01a3929249416da140ca62d6e
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt40.txt
@@ -0,0 +1 @@
+-167.85,-115.83,-79.217,-49.827,-28.264,-14.017,-4.294,-0.98949,0.57549,0.55739,0.51231,-9.8208,-2.1719,0.62126,-45.306,-87.328,-26.284,-24.224,-32.875,-36.891,-37.504,-38.373,-37.469,-34.354,-21.404
diff --git a/parmorceauxMax-git/LLLDynpt41.txt b/parmorceauxMax-git/LLLDynpt41.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3864cf9cfada2839821e7188333499dff02debe3
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt41.txt
@@ -0,0 +1 @@
+-132.69,-92.059,-57.184,-32.197,-15.08,-7.1776,-1.9779,0.089998,0.55844,0.65025,0.60217,-0.019141,0.57669,-0.40416,-3.9937,-14.805,-4.7755,-19.025,-20.517,-19.958,-20.647,-20.668,-13.326,-8.0474,-6.7817
diff --git a/parmorceauxMax-git/LLLDynpt42.txt b/parmorceauxMax-git/LLLDynpt42.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7622e10c0700d8e91d4e099f5944a77ac96d038b
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt42.txt
@@ -0,0 +1 @@
+-126.55,-79.463,-50.158,-26.124,-12.506,-2.6292,-0.0034215,0.48422,0.24106,0.26441,0.40841,0.54611,0.63451,-74.594,-32.446,-17.789,-7.5649,-17.912,-21.245,-26.474,-31.581,-27.18,-23.686,-22.727,-21.054
diff --git a/parmorceauxMax-git/LLLDynpt43.txt b/parmorceauxMax-git/LLLDynpt43.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3e26a282650f01ba7712b6135e246573d9aec0dc
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt43.txt
@@ -0,0 +1 @@
+-74.116,-48.625,-194.52,-186.63,-183.15,-193.97,-215.07,-272.09,-352.11,-451.61,-495.77,-533.74,-555.3,-556.31,-562.84,-560.5,-485.6,-427.07,-398.06,-384.98,-317.58,-253.48,-172.02,-112.79,-82.59
diff --git a/parmorceauxMax-git/LLLDynpt44.txt b/parmorceauxMax-git/LLLDynpt44.txt
new file mode 100644
index 0000000000000000000000000000000000000000..75cc7fedfa0101951c67c5ab50d5682319ca8a2f
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt44.txt
@@ -0,0 +1 @@
+-157.08,-107.51,-72.888,-42.749,-24.577,-13.157,-5.1007,-1.4976,-0.0084386,0.38043,0.46546,0.54959,0.055832,-0.53731,-4.4334,-13.988,-9.4687,-7.8996,-7.8335,-8.8745,-10.648,-12.505,-14.237,-13.06,-13.393
diff --git a/parmorceauxMax-git/LLLDynpt45.txt b/parmorceauxMax-git/LLLDynpt45.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ed01449d0f73a954e19170f54d907dd32552f8e6
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt45.txt
@@ -0,0 +1 @@
+-99.827,-61.375,-38.01,-21.132,-8.1376,-2.1651,-0.15102,0.28737,0.097345,-0.072756,-0.10413,0.30558,0.097868,-5.7491,-6.7886,-2.476,-0.31808,-17.194,-27.324,-24.984,-25.308,-16.135,-9.1157,-11.145,-14.12
diff --git a/parmorceauxMax-git/LLLDynpt46.txt b/parmorceauxMax-git/LLLDynpt46.txt
new file mode 100644
index 0000000000000000000000000000000000000000..817b208c1362f7d9424630e11b15aaa6ec96b492
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt46.txt
@@ -0,0 +1 @@
+-87.503,-50.106,-27.719,-12.401,-5.3082,-1.38,0.31919,0.64615,0.67059,0.31639,0.37986,0.19244,-2.9464,-20.186,-9.8578,-12.631,-14.317,-16.466,-17.189,-19.065,-20.53,-20.985,-14.462,-9.0604,-8.1496
diff --git a/parmorceauxMax-git/LLLDynpt47.txt b/parmorceauxMax-git/LLLDynpt47.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5788481f98c11e88cd3c7d06ceec082e810c4e87
--- /dev/null
+++ b/parmorceauxMax-git/LLLDynpt47.txt
@@ -0,0 +1 @@
+-238.35,-173.38,-125.86,-84.673,-53.841,-31.349,-15.147,-7.0106,-1.7165,0.047783,0.51306,-4.7412,-1.3496,-1.7267,-235.88,-80.616,-114.83,-24.465,-11.9,-18.099,-28.465,-37.663,-41.723,-43.659,-41.573
diff --git a/parmorceauxMax-git/ListeDesVolumes.txt b/parmorceauxMax-git/ListeDesVolumes.txt
new file mode 100644
index 0000000000000000000000000000000000000000..93012d21fb1f9088a187b060efb93956dbfdbdeb
--- /dev/null
+++ b/parmorceauxMax-git/ListeDesVolumes.txt
@@ -0,0 +1,26 @@
+2.017900000000000000e+04	4.595000000000000000e+04	2.857200000000000000e+04	3.557800000000000000e+04	2.554000000000000000e+04	3.495200000000000000e+04	4.747500000000000000e+04	4.773200000000000000e+04	3.376800000000000000e+04	2.268700000000000000e+04	1.736900000000000000e+04	2.652400000000000000e+04	2.660500000000000000e+04	2.709200000000000000e+04	3.605400000000000000e+04	3.408500000000000000e+04	4.594800000000000000e+04	2.803600000000000000e+04
+1.976600000000000000e+04	4.366700000000000000e+04	2.741300000000000000e+04	3.383600000000000000e+04	2.484400000000000000e+04	3.148600000000000000e+04	4.420200000000000000e+04	4.456400000000000000e+04	3.171500000000000000e+04	2.247200000000000000e+04	1.652300000000000000e+04	2.640600000000000000e+04	2.531800000000000000e+04	2.706800000000000000e+04	3.484400000000000000e+04	3.201200000000000000e+04	4.275500000000000000e+04	2.691200000000000000e+04
+1.977000000000000000e+04	4.311500000000000000e+04	2.722200000000000000e+04	3.209400000000000000e+04	2.363100000000000000e+04	3.100600000000000000e+04	4.366500000000000000e+04	4.379100000000000000e+04	3.075100000000000000e+04	2.212400000000000000e+04	1.634900000000000000e+04	2.540400000000000000e+04	2.480100000000000000e+04	2.519600000000000000e+04	3.421400000000000000e+04	3.125700000000000000e+04	4.029700000000000000e+04	2.683100000000000000e+04
+1.913400000000000000e+04	4.153000000000000000e+04	2.608300000000000000e+04	3.097800000000000000e+04	2.222000000000000000e+04	3.025500000000000000e+04	4.231700000000000000e+04	4.038100000000000000e+04	2.923700000000000000e+04	2.092100000000000000e+04	1.580100000000000000e+04	2.391200000000000000e+04	2.295800000000000000e+04	2.370600000000000000e+04	3.185700000000000000e+04	2.990300000000000000e+04	3.518600000000000000e+04	2.627300000000000000e+04
+1.780200000000000000e+04	3.887800000000000000e+04	2.408000000000000000e+04	2.880700000000000000e+04	2.035200000000000000e+04	2.911200000000000000e+04	3.969300000000000000e+04	3.804300000000000000e+04	2.593200000000000000e+04	1.870700000000000000e+04	1.485800000000000000e+04	2.147700000000000000e+04	2.064300000000000000e+04	2.103900000000000000e+04	2.948100000000000000e+04	2.747100000000000000e+04	3.160000000000000000e+04	2.509800000000000000e+04
+1.588600000000000000e+04	3.541100000000000000e+04	2.122600000000000000e+04	2.446700000000000000e+04	1.797300000000000000e+04	2.772700000000000000e+04	3.738800000000000000e+04	3.593300000000000000e+04	2.261800000000000000e+04	1.602300000000000000e+04	1.337000000000000000e+04	1.926400000000000000e+04	1.665200000000000000e+04	1.791700000000000000e+04	2.687900000000000000e+04	2.287100000000000000e+04	2.690200000000000000e+04	2.303000000000000000e+04
+1.366500000000000000e+04	3.127400000000000000e+04	1.778300000000000000e+04	2.124500000000000000e+04	1.536700000000000000e+04	2.518900000000000000e+04	3.514200000000000000e+04	3.325000000000000000e+04	1.964100000000000000e+04	1.269400000000000000e+04	1.142100000000000000e+04	1.642100000000000000e+04	1.365800000000000000e+04	1.312300000000000000e+04	2.359400000000000000e+04	1.871000000000000000e+04	2.273600000000000000e+04	2.048200000000000000e+04
+1.152300000000000000e+04	2.777600000000000000e+04	1.440000000000000000e+04	1.777900000000000000e+04	1.330700000000000000e+04	2.091400000000000000e+04	3.266200000000000000e+04	2.881200000000000000e+04	1.677100000000000000e+04	1.034000000000000000e+04	9.695000000000000000e+03	1.379600000000000000e+04	1.103800000000000000e+04	9.875000000000000000e+03	2.001800000000000000e+04	1.541500000000000000e+04	2.007000000000000000e+04	1.818400000000000000e+04
+1.003000000000000000e+04	2.468400000000000000e+04	1.178500000000000000e+04	1.452600000000000000e+04	1.196400000000000000e+04	1.764800000000000000e+04	2.837900000000000000e+04	2.282100000000000000e+04	1.454600000000000000e+04	8.903000000000000000e+03	7.768000000000000000e+03	1.226800000000000000e+04	9.453000000000000000e+03	8.311000000000000000e+03	1.770300000000000000e+04	1.241400000000000000e+04	1.909400000000000000e+04	1.537200000000000000e+04
+8.939000000000000000e+03	2.226200000000000000e+04	1.016900000000000000e+04	1.136000000000000000e+04	1.133500000000000000e+04	1.578100000000000000e+04	2.429100000000000000e+04	2.012000000000000000e+04	1.332800000000000000e+04	7.947000000000000000e+03	6.748000000000000000e+03	1.127000000000000000e+04	8.820000000000000000e+03	8.105000000000000000e+03	1.631400000000000000e+04	1.118600000000000000e+04	1.637800000000000000e+04	1.354900000000000000e+04
+8.192000000000000000e+03	2.044700000000000000e+04	9.667000000000000000e+03	1.076000000000000000e+04	1.131500000000000000e+04	1.463400000000000000e+04	2.121800000000000000e+04	1.976800000000000000e+04	1.303400000000000000e+04	7.424000000000000000e+03	6.289000000000000000e+03	1.079500000000000000e+04	8.845000000000000000e+03	8.931000000000000000e+03	1.553600000000000000e+04	1.103600000000000000e+04	1.719600000000000000e+04	1.234300000000000000e+04
+7.745000000000000000e+03	1.927200000000000000e+04	9.852000000000000000e+03	1.119700000000000000e+04	1.201900000000000000e+04	1.407400000000000000e+04	1.986100000000000000e+04	2.125000000000000000e+04	1.384100000000000000e+04	7.323000000000000000e+03	6.200000000000000000e+03	1.068400000000000000e+04	9.161000000000000000e+03	1.288900000000000000e+04	1.533000000000000000e+04	1.201600000000000000e+04	1.959900000000000000e+04	1.138500000000000000e+04
+7.575000000000000000e+03	1.943300000000000000e+04	1.038700000000000000e+04	1.426500000000000000e+04	1.351200000000000000e+04	1.436000000000000000e+04	1.945500000000000000e+04	2.523000000000000000e+04	1.579800000000000000e+04	7.685000000000000000e+03	6.378000000000000000e+03	1.111100000000000000e+04	1.021800000000000000e+04	1.801300000000000000e+04	1.595300000000000000e+04	1.533400000000000000e+04	2.504400000000000000e+04	1.035600000000000000e+04
+8.001000000000000000e+03	1.979900000000000000e+04	1.164100000000000000e+04	1.824900000000000000e+04	1.578100000000000000e+04	1.531400000000000000e+04	2.024800000000000000e+04	3.277700000000000000e+04	1.962600000000000000e+04	9.002000000000000000e+03	6.719000000000000000e+03	1.265200000000000000e+04	1.425800000000000000e+04	2.191300000000000000e+04	1.729700000000000000e+04	2.024100000000000000e+04	3.037400000000000000e+04	1.000900000000000000e+04
+9.417000000000000000e+03	2.048000000000000000e+04	1.421300000000000000e+04	2.230700000000000000e+04	1.858300000000000000e+04	1.749200000000000000e+04	2.238800000000000000e+04	3.625900000000000000e+04	2.428500000000000000e+04	1.196400000000000000e+04	7.334000000000000000e+03	1.498500000000000000e+04	1.737500000000000000e+04	2.384200000000000000e+04	2.052400000000000000e+04	2.562000000000000000e+04	3.373900000000000000e+04	1.007100000000000000e+04
+1.211100000000000000e+04	2.146100000000000000e+04	1.697100000000000000e+04	2.583100000000000000e+04	2.038400000000000000e+04	2.173900000000000000e+04	2.602000000000000000e+04	3.852800000000000000e+04	2.717400000000000000e+04	1.442900000000000000e+04	8.389000000000000000e+03	1.744200000000000000e+04	1.917800000000000000e+04	2.479900000000000000e+04	2.386800000000000000e+04	2.824300000000000000e+04	3.646800000000000000e+04	1.071700000000000000e+04
+1.446000000000000000e+04	2.429300000000000000e+04	1.935800000000000000e+04	2.742300000000000000e+04	2.158600000000000000e+04	2.448200000000000000e+04	3.097000000000000000e+04	4.051400000000000000e+04	2.902500000000000000e+04	1.618700000000000000e+04	1.061000000000000000e+04	2.043600000000000000e+04	2.030300000000000000e+04	2.516600000000000000e+04	2.609400000000000000e+04	2.945100000000000000e+04	3.795000000000000000e+04	1.262400000000000000e+04
+1.609800000000000000e+04	2.818800000000000000e+04	2.095900000000000000e+04	2.868300000000000000e+04	2.231800000000000000e+04	2.652500000000000000e+04	3.429200000000000000e+04	4.378500000000000000e+04	3.026900000000000000e+04	1.727900000000000000e+04	1.222300000000000000e+04	2.228500000000000000e+04	2.084300000000000000e+04	2.544700000000000000e+04	2.758700000000000000e+04	3.022500000000000000e+04	3.880600000000000000e+04	1.486100000000000000e+04
+1.707000000000000000e+04	3.126500000000000000e+04	2.213600000000000000e+04	2.933400000000000000e+04	2.268500000000000000e+04	2.787100000000000000e+04	3.586500000000000000e+04	4.428500000000000000e+04	3.109500000000000000e+04	1.769900000000000000e+04	1.398700000000000000e+04	2.340300000000000000e+04	2.115400000000000000e+04	2.567700000000000000e+04	2.868600000000000000e+04	3.083100000000000000e+04	3.928900000000000000e+04	1.764100000000000000e+04
+1.750200000000000000e+04	3.430900000000000000e+04	2.331000000000000000e+04	2.987000000000000000e+04	2.290300000000000000e+04	2.880500000000000000e+04	3.845000000000000000e+04	4.465800000000000000e+04	3.127400000000000000e+04	1.776000000000000000e+04	1.486200000000000000e+04	2.410900000000000000e+04	2.122800000000000000e+04	2.582800000000000000e+04	2.951300000000000000e+04	3.111400000000000000e+04	3.991600000000000000e+04	1.927100000000000000e+04
+1.775100000000000000e+04	3.675500000000000000e+04	2.418400000000000000e+04	3.035000000000000000e+04	2.306500000000000000e+04	2.971900000000000000e+04	4.040700000000000000e+04	4.492500000000000000e+04	3.144300000000000000e+04	1.781600000000000000e+04	1.549200000000000000e+04	2.462700000000000000e+04	2.130100000000000000e+04	2.601000000000000000e+04	2.996100000000000000e+04	3.143500000000000000e+04	4.074800000000000000e+04	2.083100000000000000e+04
+1.781000000000000000e+04	3.941300000000000000e+04	2.476700000000000000e+04	3.100800000000000000e+04	2.335100000000000000e+04	3.056900000000000000e+04	4.343400000000000000e+04	4.528800000000000000e+04	3.153200000000000000e+04	1.814000000000000000e+04	1.592200000000000000e+04	2.494900000000000000e+04	2.158400000000000000e+04	2.601200000000000000e+04	3.046100000000000000e+04	3.159700000000000000e+04	4.103900000000000000e+04	2.232500000000000000e+04
+1.801400000000000000e+04	4.223500000000000000e+04	2.544300000000000000e+04	3.223000000000000000e+04	2.370300000000000000e+04	3.164900000000000000e+04	4.511300000000000000e+04	4.545400000000000000e+04	3.203500000000000000e+04	1.884200000000000000e+04	1.640500000000000000e+04	2.532000000000000000e+04	2.229400000000000000e+04	2.610900000000000000e+04	3.130100000000000000e+04	3.210700000000000000e+04	4.169200000000000000e+04	2.393300000000000000e+04
+1.836400000000000000e+04	4.408400000000000000e+04	2.648700000000000000e+04	3.323900000000000000e+04	2.419500000000000000e+04	3.288800000000000000e+04	4.658000000000000000e+04	4.588300000000000000e+04	3.225000000000000000e+04	2.003500000000000000e+04	1.671900000000000000e+04	2.581900000000000000e+04	2.373700000000000000e+04	2.639100000000000000e+04	3.286800000000000000e+04	3.293500000000000000e+04	4.325400000000000000e+04	2.564500000000000000e+04
+1.923300000000000000e+04	4.511000000000000000e+04	2.760900000000000000e+04	3.525700000000000000e+04	2.484700000000000000e+04	3.442000000000000000e+04	4.716400000000000000e+04	4.692700000000000000e+04	3.345200000000000000e+04	2.150200000000000000e+04	1.704100000000000000e+04	2.629300000000000000e+04	2.566600000000000000e+04	2.677800000000000000e+04	3.511800000000000000e+04	3.363500000000000000e+04	4.536500000000000000e+04	2.706900000000000000e+04
+
diff --git a/parmorceauxMax-git/Nouveau dossier/volumes (2).zip b/parmorceauxMax-git/Nouveau dossier/volumes (2).zip
new file mode 100644
index 0000000000000000000000000000000000000000..2516b6f10f2524f65950aba5aa2d41b2877151fb
Binary files /dev/null and b/parmorceauxMax-git/Nouveau dossier/volumes (2).zip differ
diff --git a/parmorceauxMax-git/PlotDesCourbes.m b/parmorceauxMax-git/PlotDesCourbes.m
new file mode 100644
index 0000000000000000000000000000000000000000..2d1db5b4766651b3cd91133e97a49aca286c799f
--- /dev/null
+++ b/parmorceauxMax-git/PlotDesCourbes.m
@@ -0,0 +1,49 @@
+liste = dir(['HTN*.txt']);
+%J=[2,4,15,16,18];
+X=[0:1/24:1];
+Y=zeros(1,25);
+C=xlsread('points courbes.xls');
+v=1;
+N=1;
+for i=30:length(liste)%length(J)
+    filename=strcat(liste(i).name);%strcat(liste(J(i)).name);
+    L=load(filename);
+    for j=1:25
+        Y(1,j)=L(j)/max(L);
+    end
+    P=figure()
+    plot(X,Y,'.-')
+    for w=1:25
+        text(X(w),Y(w),int2str(w))
+    end
+    hold on
+    plot(X(C(v,1)),Y(C(v,1)),'o','Linewidth',1.2)
+    plot(X(C(v,2)),Y(C(v,2)),'o','Linewidth',1.2)
+    %plot(X(C(v,3)),Y(C(v,3)),'o','Linewidth',1.2)
+    if C(v,3)~=0
+        %title("Courbe avec plateau")
+        plot(X(C(v,3)),Y(C(v,3)),'o','Linewidth',1.2)
+    %else
+        %title("Courbe sans plateau")
+    end
+    hold off
+    
+    %recherche avec dérivée
+    %figure()
+    %dy=gradient(Y(:))./gradient(X(:));
+    %plot(X, dy)
+    
+    %sauvegarder image
+    if N~=3 & N~=12
+        saveas(P,strcat('CSN',int2str(N),'.png'))
+    else
+        N=N+1
+        saveas(P,strcat('CSN',int2str(N),'.png'))
+    end
+    v=v+1;
+    N=N+1
+end
+%plot(X,Y)
+%C(ligne,colonne)
+
+
diff --git a/parmorceauxMax-git/Pose_Model.m b/parmorceauxMax-git/Pose_Model.m
new file mode 100644
index 0000000000000000000000000000000000000000..b157d0c47ccebd64410e202ab6a10d27ddf7c2c0
--- /dev/null
+++ b/parmorceauxMax-git/Pose_Model.m
@@ -0,0 +1,37 @@
+classdef Pose_Model < handle
+    properties
+        num_dim_Y
+        
+        interpolant_Y
+        limits_Yi
+    end
+    methods
+        function obj = Pose_Model(interpolant_filename)
+            structure = load(interpolant_filename);
+            
+            obj.interpolant_Y = structure.interpolant_Y;
+            obj.num_dim_Y = size(obj.interpolant_Y.GridVectors,2);
+            
+            N = size(obj.interpolant_Y.GridVectors{1}, 2);
+            for i=1:obj.num_dim_Y
+                obj.limits_Yi(i,1) = obj.interpolant_Y.GridVectors{i}(1);
+                obj.limits_Yi(i,2) = obj.interpolant_Y.GridVectors{i}(N);
+            end
+        end
+        function loglikelihood = compute_loglikelihood_Y(obj, y)
+            y = y(:,1:obj.num_dim_Y);
+            
+            s = size(y,1);
+            comp_small = repmat(obj.limits_Yi(:,1)',s,1);
+            comp_big = repmat(obj.limits_Yi(:,2)',s,1);
+            
+            too_small = y < comp_small;
+            too_big = y > comp_big;
+            
+            y(too_small) = comp_small(too_small);
+            y(too_big) = comp_big(too_big);
+            
+            loglikelihood = log(obj.interpolant_Y(y));
+        end
+    end
+end
\ No newline at end of file
diff --git a/parmorceauxMax-git/ROC.m b/parmorceauxMax-git/ROC.m
new file mode 100644
index 0000000000000000000000000000000000000000..c2391a4d2488cb2d9126a95591d2e463a9a04209
--- /dev/null
+++ b/parmorceauxMax-git/ROC.m
@@ -0,0 +1,61 @@
+function [F_mesure,M_seuil]=ROC()
+    Seuil=[-9:0.1:1];
+    diagn=[true,false,true,false,false,true,false,false,false,false,true,false,true,false,false,true,false,false,false,false,true,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true];
+    a=1;
+    listept=dir(['LLLDyn*.txt']);
+    X=zeros(1,47);
+    Y=zeros(1,47);
+    P=zeros(1,47);
+    R=zeros(1,47);
+    dist1=2^(1/2);
+    F_mesure1=0;
+    while Seuil(a)~=1
+        seuil=Seuil(a);
+        [TN,TP,FN,FP]=TN_TP_FN_FP(listept,seuil,diagn);
+        TPR=TP/(TP+FN);
+        Y(1,a)=TPR;
+        FPR=FP/(FP+TN);
+        X(1,a)=FPR;
+        dist2=((X(1,a))^2+((Y(1,a))-1)^2)^(1/2);
+        %dist1
+        %a
+        if dist2<dist1
+            %a
+            dist1=dist2;
+            M_seuil=Seuil(a);
+        end
+        
+        P(1,a)=TP/(TP+FP);
+        R(1,a)=TP/(TP+FN);
+        
+        a=a+1;
+    end
+    [TN,TP,FN,FP]=TN_TP_FN_FP(listept,M_seuil,diagn);
+    Prec=TP/(TP+FP);
+    Rap=TP/(TP+FN);
+    F_mesure=(2*Prec*Rap)/(Prec+Rap)
+    TPR=TP/(TP+FN);
+    FPR=FP/(FP+TN);
+    dist2=(FPR^2+(TPR-1)^2)^(1/2)
+    M_seuil
+    %Seuil(81);
+    plot(X,Y);
+    %(1,82);
+    %X(1,82);
+    
+    [X2,I]=sort(X);
+    Y2=Y(I);
+    len=length(X2);
+    diff_X = X2(2:len) - X2(1:len-1);
+    H = (Y2(2:len) + Y2(1:len-1)) / 2;
+    AUROC = sum(diff_X .* H)
+    
+    [R2,I]=sort(R);
+    P2=P(I);
+    len=length(R2);
+    diff_R = R2(2:len) - R2(1:len-1);
+    H = (P2(2:len) + P2(1:len-1)) / 2;
+    AUPR = sum(diff_R .* H)
+    
+end
+%[TN,TP,FN,FP]=TN_TP_FN_FP(listept,-1,diagn)
\ No newline at end of file
diff --git a/parmorceauxMax-git/ROC_curve.m b/parmorceauxMax-git/ROC_curve.m
new file mode 100644
index 0000000000000000000000000000000000000000..9823b6fec464443286badb5bf6dfeea7c228daec
--- /dev/null
+++ b/parmorceauxMax-git/ROC_curve.m
@@ -0,0 +1,51 @@
+classdef ROC_curve<handle
+    properties
+        normal
+        TN
+        TP
+        FN
+        FP
+    end
+        function normal=patient_normal(pt,seuil)
+            N=0
+            A=0
+            i=1
+            while i<=25
+                if pt(i)>=seuil
+                    N=N+1
+                else
+                    A=A+1
+                end
+                i=i+1
+            end
+            if A>0
+                normal='False'
+            else
+                normal='True'
+            end
+        end
+
+        function [TN,TP,FN,FP]=TN_TP_FN_FP(pt,seuil,diagn)
+            i=1
+            while i<=29
+                if patient_normal(pt,seuil)==True
+                    if patient_normal(pt,seuil)==diagn(i)
+                        TN=TN+1
+                    else
+                        FN=FN+1
+                    end
+                end
+                if patient_normal(pt,seuil)==False
+                    if patient_normal(pt,seuil)==diagn(i)
+                        TP=TP+1
+                    else
+                        FP=FP+1
+                    end
+                end
+                i=i+1
+            end
+        end
+end
+%diagn=[True,False,True,False,False,True,False,False,False,False,True,False,True,False,False,True,False,False,False,False,True,False,False,True,True,True,True,False,True]
+
+
diff --git a/parmorceauxMax-git/Readme.txt b/parmorceauxMax-git/Readme.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e718fcd392bfc04809046e84a2e16d0b4f25eb03
--- /dev/null
+++ b/parmorceauxMax-git/Readme.txt
@@ -0,0 +1,86 @@
+This is the release version 1.0 of our movement quality assessment code. For information on the methods, please refer to http://www.irc-sphere.ac.uk/work-package-2/movement-quality and to our publications.
+
+
+**************************************************************
+CONDITIONS OF USE
+
+Copyright (c) 2014, Adeline Paiement, Lili Tao
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+    * The two following publications must be cited in published works
+      that use or incorporate this software:
+	Adeline Paiement, Lili Tao, Sion Hannuna, Massimo Camplani, Dima Damen, Majid Mirmehdi,
+	Online quality assessment of human movement from skeleton data.
+	Proceedings of British Machine Vision Conference (BMVC), September 2014.
+	
+	Lili Tao, Adeline Paiement, Dima Damen, Sion Hannuna, Massimo Camplani, Tilo Burghardt, Ian Craddock,
+	A Comparative Study of Pose Representation and Dynamics Modelling for Online Motion Quality Assessment.
+	Submitted to CVIU - under review.
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+    * Neither the name of the University of Bristol, the Sphere project,
+      nor the names of its contributors may be used to endorse or promote
+      products derived from this software without specific prior written
+      permission.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+
+Disclaimer: this software is NOT for clinical use.
+The movement quality assessment software is intended for educational, research, and informational purposes only. It may be used only for these purposes and may not under any circumstances be used for clinical purposes.
+
+This software is made available with no warranties.
+
+To acknowledge this movement quality assessment software as a platform, please cite the project web site (http://www.irc-sphere.ac.uk/work-package-2/movement-quality) and the following publications when publishing work that uses or incorporates it.
+
+- Adeline Paiement, Lili Tao, Sion Hannuna, Massimo Camplani, Dima Damen, Majid Mirmehdi, Online quality assessment of human movement from skeleton data. Proceedings of British Machine Vision Conference (BMVC), September 2014.
+
+- Lili Tao, Adeline Paiement, Dima Damen, Sion Hannuna, Massimo Camplani, Tilo Burghardt, Ian Craddock, A Comparative Study of Pose Representation and Dynamics Modelling for Online Motion Quality Assessment. Submitted to CVIU - under review.
+
+
+**************************************************************
+INSTALL (Matlab code tested on Windows only, and Python code tested on Linux-Ubuntu only)
+
+No compilation is required.
+
+* Dependencies
+
+The following librairies are required for the Python code:
+
+numPy
+scipy
+scikit-learn
+
+
+**************************************************************
+USAGE
+
+Train (Matlab and Python):
+1) run the matlab script prepare_models_part1 -- you may use the script "example_prepare_models.m" as an example of how to call prepare_models_part1.
+2) run the Python script pdf_estimations.py
+3) run the matlab script prepare_models_part2
+
+Using trained models (matlab):
+1) Instantiate matlab class Interface
+2) call Interface.process_new_sequence
+You may use the script "example_test_models.m" as a usage example.
+
+Note: this code is designed to use OpenNI skeletons. Kinect skeletons may be used by modifying the Interface.read_data function and the script prepare_models_part1.
+
+File format of the OpenNI skeletons:
+These files contain the 15 OpenNI joints, with x,y,z coordinates for each joint.
+Each line contains one frame, in the following format:
+[frame number] [JOINT_HEAD] [JOINT_NECK] [JOINT_LEFT_SHOULDER] [JOINT_RIGHT_SHOULDER] [JOINT_LEFT_ELBOW] [JOINT_RIGHT_ELBOW] [JOINT_LEFT_HAND] [JOINT_RIGHT_HAND] [JOINT_TORSO] [JOINT_LEFT_HIP] [JOINT_RIGHT_HIP] [JOINT_LEFT_KNEE] [JOINT_RIGHT_KNEE] [JOINT_LEFT_FOOT] [JOINT_RIGHT_FOOT]
+
+The format of JOINT_X is:
+[flag (can be ignored)] [x] [y] [z]
\ No newline at end of file
diff --git a/parmorceauxMax-git/TN_TP_FN_FP.m b/parmorceauxMax-git/TN_TP_FN_FP.m
new file mode 100644
index 0000000000000000000000000000000000000000..17d77c4d7fdeec993fe050d715707ec364d996cf
--- /dev/null
+++ b/parmorceauxMax-git/TN_TP_FN_FP.m
@@ -0,0 +1,25 @@
+function [TN,TP,FN,FP]=TN_TP_FN_FP(listept,seuil,diagn) 
+    i=1;
+    TN=0;
+    TP=0;
+    FN=0;
+    FP=0;
+    while i<=length(listept)
+        pt=listept(i).name;
+        if patient_normal(pt,seuil)==true
+            if patient_normal(pt,seuil)==diagn(i)
+                TN=TN+1;
+            else
+                FN=FN+1;
+            end
+        end
+        if patient_normal(pt,seuil)==false
+            if patient_normal(pt,seuil)==diagn(i)
+                TP=TP+1;
+            else
+                FP=FP+1;
+            end
+        end
+        i=i+1;
+    end
+end
diff --git a/parmorceauxMax-git/Untitled3.m b/parmorceauxMax-git/Untitled3.m
new file mode 100644
index 0000000000000000000000000000000000000000..98eb2515ad2f80f47b3bbc5f4811096e861d78df
--- /dev/null
+++ b/parmorceauxMax-git/Untitled3.m
@@ -0,0 +1,33 @@
+liste = dir(['HTN*.txt']);
+%-ascii
+%i=1;
+%a=strcat(liste(1).name)
+%save GROSTEST.txt a -ascii
+%fid = fopen('GROSTEST.txt', 'a+');
+%i=2
+%while i<=3;
+    %b=strcat(liste(i).name);
+    %save GROSTEST GROSTEST
+    %fprintf(fid, '%d %d %d\n', b);
+    %fclose(fid);
+    %i=i+1;
+%end
+
+%length(liste)
+fid = fopen('GROSTEST2.txt', 'a+');
+a=[1,1,2,5];
+fprintf(fid, '%f %f %f %f' , a);
+fclose(fid);
+
+v=[2,5,7,8];
+fid = fopen('GROSTEST2.txt', 'a+');
+%fprintf(fid, '%d %d %d\n', v);
+%fprintf(fid,'%i\t %i\t %i\t %i\t\r\n',M.')
+fprintf(fid, '%f %f %f %f' , v);
+%fprintf('%.0f\n',a);
+fclose(fid);
+
+w=[5,8,7,9];
+fid = fopen('GROSTEST2.txt', 'a+');
+fprintf(fid, '%i\t %i\t %i\t %i\t\r\n' , w);
+fclose(fid);
\ No newline at end of file
diff --git a/parmorceauxMax-git/aeffacer.m b/parmorceauxMax-git/aeffacer.m
new file mode 100644
index 0000000000000000000000000000000000000000..edab09abb7472e7839157c77ff3125217e00ab33
--- /dev/null
+++ b/parmorceauxMax-git/aeffacer.m
@@ -0,0 +1,31 @@
+%F_Mesure=8;
+%alpha=0;
+%M_Seuil=0;
+%roc=[1,5,3,9,7];
+%for a=1:length(roc)
+ %   i=randi([1,100])
+ %   b=roc(a);
+%    if b>F_Mesure
+%        F_Mesure=b;
+%%        alpha=a;
+ %       seuil=i
+%    end
+%end
+%F_Mesure
+%M_Seuil;
+%alpha
+%seuil
+
+%[TN_TP_FN_FP]=TN_TP_FN_FP(dir(['LLLDynpt*.txt']),-1,['True',])
+
+N=1;
+for i=1:18
+    if N~=3 & N~=12
+        V=strcat('CSN',int2str(N))
+    else
+        N=N+1;
+        V=strcat('CSN',int2str(N))
+    end
+    N=N+1;
+end
+N;
\ No newline at end of file
diff --git a/parmorceauxMax-git/best_sequence.mat b/parmorceauxMax-git/best_sequence.mat
new file mode 100644
index 0000000000000000000000000000000000000000..274d8785aa25186c0a1a6d855f2a44a1d649c8c1
Binary files /dev/null and b/parmorceauxMax-git/best_sequence.mat differ
diff --git a/parmorceauxMax-git/creationpt30a47.m b/parmorceauxMax-git/creationpt30a47.m
new file mode 100644
index 0000000000000000000000000000000000000000..c21d5efcc9e27cab93018f90d6df0882cdf2bf4b
--- /dev/null
+++ b/parmorceauxMax-git/creationpt30a47.m
@@ -0,0 +1,25 @@
+%listept = dir(['LLLDynpt*.txt']);
+%diagn=["True",'False','True','False','False','True','False','False','False','False','True','False','True','False','False','True','False','False','False','False','True','False','False','True','True','True','True','False','True'];
+%Seuil=[-9:0.1:1];
+%[TN,TP,FN,FP]=TN_TP_FN_FP(listept,Seuil(85),diagn)
+%TPR=TP/(TP+FN)
+%FPR=FP/(FP+TN)
+
+L=dir(['ListeDesVolumes.txt']);
+x=load(L.name);
+%x(2,1)
+%x(ligne,colonne)
+%x(25,18)
+i=1;
+while i<=18
+    X=zeros(25,1);
+    j=1;
+    while j<=25
+        X(j,1)=x(j,i);
+        j=j+1;
+    end
+    dlmwrite(strcat('HTN',int2str(300+i),'.txt'),X)
+    i=i+1;
+end
+
+
diff --git a/parmorceauxMax-git/example_prepare_models.m b/parmorceauxMax-git/example_prepare_models.m
new file mode 100644
index 0000000000000000000000000000000000000000..b579d35eba52f98c077d39bd799dba980a2b98d8
--- /dev/null
+++ b/parmorceauxMax-git/example_prepare_models.m
@@ -0,0 +1,15 @@
+% liste of training data
+BMVC_dataset_folder = % enter path here
+liste = dir([BMVC_dataset_folder '\stairs_gait_BMVC2014_skeleton_only\stairs_gait_BMVC2014\training_data\full_sequences\Subject' '*.txt']);
+for i=1:length(liste)
+    list_names{i}=strcat([BMVC_dataset_folder 'stairs_gait_BMVC2014_skeleton_only\stairs_gait_BMVC2014\training_data\full_sequences\'], liste(i).name);
+    list_frames{i}=strcat([BMVC_dataset_folder 'stairs_gait_BMVC2014_skeleton_only\stairs_gait_BMVC2014\training_data\full_sequences\Selected_frames_'], liste(i).name);
+end
+
+% 4 implemented combinaisons of skeleton alignment and feature extraction:
+% 'procrustes' + 'joint_position'
+% 'procrustes' + 'joint_velocity'
+% 'none + 'pairwise_relative_angles'
+% 'torso_scaling' + 'pairwise_relative_positions'
+
+prepare_models_part1(list_names,list_frames,1,9,'procrustes','joint_position',3,1,0.03,1,1,'manifold',1)
\ No newline at end of file
diff --git a/parmorceauxMax-git/example_test_models.m b/parmorceauxMax-git/example_test_models.m
new file mode 100644
index 0000000000000000000000000000000000000000..7ab94700b4031879cae4cebc127588a0dbcb01cf
--- /dev/null
+++ b/parmorceauxMax-git/example_test_models.m
@@ -0,0 +1,75 @@
+%F_Mesure=0;
+%M_Seuil=0;
+%for initial_alpha=0.035:0.001:0.043%0.035:0.001:0.045%0.01:0.01:0.1%0.05:0.05
+    %% liste of testing data
+    liste = dir(['HTN*.txt']);
+    save testtest1.mat
+    save testtest2.mat
+    save LLLDynWin.mat
+    save LLLDyn.mat
+    %% initialisation
+    % set display to -1 to disable
+    display = 1;%1(ancienne version)%7;%-1
+    interface = Interface({'interpolants_A', 'interpolants_B1', 'interpolants_B2', 'interpolants_C'}, display);
+    % set initial_alpha = -1 to have it estimated automatically
+    initial_alpha =0.037% 0.038 %0.04;%0.05 %0.025;(0.039)
+    sigma_estimation = 7e-3;
+    sigma_test = 1e-3;
+    possible_local_minimum = 0;
+    threshold_pose = -2;
+    threshold_dynamics = -0.7;
+    %% testing
+    J=[5]%[8,29,42,45,46]%J=[1,3,6,11,13,16,21,24,25,26,27,29];
+   
+    for i=1:length(J)%length(J)%length(liste)
+        filename=strcat(liste(J(i)).name)%liste(i).name%liste(J(i)).name
+        interface.process_new_sequence(filename, [initial_alpha*2.1 initial_alpha*2 initial_alpha*1.5 initial_alpha*2.4], sigma_estimation, sigma_test, possible_local_minimum, threshold_pose, threshold_dynamics);
+        %j'essaie de "save" les meilleurs sequences
+        testtest1=interface.meilleure_sequence
+        if (i==1)
+            bestSequence=testtest1;
+        end
+        if (i>1)
+            bestSequence=[bestSequence;testtest1];
+        end
+
+        LLLDyn=interface.loglikelihood
+
+
+%         testtest1=interface.loglikelihood_dynamics_window(26:50);
+%         testtest2=interface.loglikelihood_dynamics(26:50);
+%         if (i==1)
+%             LLLDynWin=testtest1;
+%             LLLDyn=testtest2;
+%         end
+%         if (i>1)
+%             LLLDynWin=[LLLDynWin;testtest1];
+%             LLLDyn=[LLLDyn;testtest2];
+%         end
+        
+    end
+    %figure()
+    %plot([1:25],LLLDynWin)
+    figure()
+    plot([1:25],LLLDyn)
+    %
+    
+    for i=1:length(liste)%length(J)%length(liste)
+        if (i < 10)
+            name = strcat('0',int2str(i));
+        else
+            name = int2str(i);
+        end
+        
+        dlmwrite(strcat('LLLDynpt',name,'.txt'),LLLDyn(i,:));
+    end   
+    %[f_mesure,m_seuil]=find_seuil_score()
+    %if f_mesure>F_Mesure
+        %F_Mesure=f_mesure
+        %optinitial_alpha=initial_alpha
+        %M_Seuil=m_seuil
+    %end
+%end
+%F_Mesure
+%M_Seuil
+%optinitial_alpha
diff --git a/parmorceauxMax-git/f b/parmorceauxMax-git/f
new file mode 100644
index 0000000000000000000000000000000000000000..11691b36af63677fbeab402a8be8c67b80b3453b
Binary files /dev/null and b/parmorceauxMax-git/f differ
diff --git a/parmorceauxMax-git/find_seuil_score.m b/parmorceauxMax-git/find_seuil_score.m
new file mode 100644
index 0000000000000000000000000000000000000000..7c53d3ec234c67c0c21e394ad215a40f6fce9388
--- /dev/null
+++ b/parmorceauxMax-git/find_seuil_score.m
@@ -0,0 +1,41 @@
+function [F_mesure,M_seuil]=find_seuil_score()
+    Seuil=[-9:0.1:1];
+    diagn=[true,false,true,false,false,true,false,false,false,false,true,false,true,false,false,true,false,false,false,false,true,false,false,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true];
+    a=1;
+    listept=dir(['LLLDyn*.txt']);
+    X=zeros(1,47);
+    Y=zeros(1,47);
+    %dist1=2^(1/2);
+    F_mesure1=0;
+    while Seuil(a)~=1
+        seuil=Seuil(a);
+        [TN,TP,FN,FP]=TN_TP_FN_FP(listept,seuil,diagn);
+        TPR=TP/(TP+FN);
+        Y(1,a)=TPR;
+        FPR=FP/(FP+TN);
+        X(1,a)=FPR;
+        %dist2=((X(1,a))^2+((Y(1,a))-1)^2)^(1/2);
+        %dist1
+        %a
+        
+        Prec=TP/(TP+FP);
+        Rap=TP/(TP+FN);
+        F_mesure2=(2*Prec*Rap)/(Prec+Rap);
+        
+        if F_mesure2>F_mesure1
+            %a
+            F_mesure1=F_mesure2;
+            M_seuil=Seuil(a);
+        end
+        
+        a=a+1;
+    end
+
+    F_mesure=F_mesure1
+
+    M_seuil
+    %Seuil(81);
+    plot(X,Y);
+    %(1,82);
+    %X(1,82);
+end
\ No newline at end of file
diff --git a/parmorceauxMax-git/interpolants_A.mat b/parmorceauxMax-git/interpolants_A.mat
new file mode 100644
index 0000000000000000000000000000000000000000..07691aa85d3e0aaf248a1897cb4974781dd1ccc6
Binary files /dev/null and b/parmorceauxMax-git/interpolants_A.mat differ
diff --git a/parmorceauxMax-git/interpolants_B1.mat b/parmorceauxMax-git/interpolants_B1.mat
new file mode 100644
index 0000000000000000000000000000000000000000..3faab283865ac914c9d39b1606809c64f31b2576
Binary files /dev/null and b/parmorceauxMax-git/interpolants_B1.mat differ
diff --git a/parmorceauxMax-git/interpolants_B2.mat b/parmorceauxMax-git/interpolants_B2.mat
new file mode 100644
index 0000000000000000000000000000000000000000..a0a334e8b5a75adf913a50ce86bac2e87f005f22
Binary files /dev/null and b/parmorceauxMax-git/interpolants_B2.mat differ
diff --git a/parmorceauxMax-git/interpolants_C.mat b/parmorceauxMax-git/interpolants_C.mat
new file mode 100644
index 0000000000000000000000000000000000000000..aa4e9b2ef78a02a66045fa840b7f0f220fbc6b94
Binary files /dev/null and b/parmorceauxMax-git/interpolants_C.mat differ
diff --git a/parmorceauxMax-git/loglikelihood_dyn_win b/parmorceauxMax-git/loglikelihood_dyn_win
new file mode 100644
index 0000000000000000000000000000000000000000..2d7b19c1651129e8166fa8e3ac3700f83688b4c0
--- /dev/null
+++ b/parmorceauxMax-git/loglikelihood_dyn_win
@@ -0,0 +1 @@
+0.394491 0.286216 0.329477 0.319064 0.188152 -0.048058 0.021120 0.078159 0.211380 0.279174 0.229434 0.262552 -0.074135 -0.566358 -0.466776 -0.370344 -0.300791 -0.230045 -0.118456 -0.044125 -0.075632 -0.037197 0.126453 0.301074 0.407094-0.136146 0.113358 -1.727044 -2.551086 -1.608571 -1.267885 -1.136151 -0.828078 -0.472031 -0.102367 -0.102408 -1.107328 -1.107887 -0.853405 -0.807419 -0.751959 -0.832653 -0.694397 -0.790315 -0.768977 -1.048996 -1.393745 -1.863214 -1.090663 -0.2193190.394491 0.286216 0.329477 0.319064 0.188152 -0.048058 0.021120 0.078159 0.211380 0.279174 0.229434 0.262552 -0.074135 -0.566358 -0.466776 -0.370344 -0.300791 -0.230045 -0.118456 -0.044125 -0.075632 -0.037197 0.126453 0.301074 0.4070940.394491 0.286216 0.329477 0.319064 0.188152 -0.048058 0.021120 0.078159 0.211380 0.279174 0.229434 0.262552 -0.074135 -0.566358 -0.466776 -0.370344 -0.300791 -0.230045 -0.118456 -0.044125 -0.075632 -0.037197 0.126453 0.301074 0.407094
\ No newline at end of file
diff --git a/parmorceauxMax-git/loglikelihood_dyn_win.mat b/parmorceauxMax-git/loglikelihood_dyn_win.mat
new file mode 100644
index 0000000000000000000000000000000000000000..aa18517754e988601640b24f5945f6bd9e0e8008
Binary files /dev/null and b/parmorceauxMax-git/loglikelihood_dyn_win.mat differ
diff --git a/parmorceauxMax-git/matlab.mat b/parmorceauxMax-git/matlab.mat
new file mode 100644
index 0000000000000000000000000000000000000000..985c33e6c718daffdb65e92ed7c92a07b9e8a97a
Binary files /dev/null and b/parmorceauxMax-git/matlab.mat differ
diff --git a/parmorceauxMax-git/meilleure_sequence.mat b/parmorceauxMax-git/meilleure_sequence.mat
new file mode 100644
index 0000000000000000000000000000000000000000..4a0bf12a1d941eae4922eef148983b8a0300f449
Binary files /dev/null and b/parmorceauxMax-git/meilleure_sequence.mat differ
diff --git "a/parmorceauxMax-git/mesdonn\303\251es.txt" "b/parmorceauxMax-git/mesdonn\303\251es.txt"
new file mode 100644
index 0000000000000000000000000000000000000000..a5c7533e9f8d7b34597bda1cf82c0c87e63a6794
--- /dev/null
+++ "b/parmorceauxMax-git/mesdonn\303\251es.txt"
@@ -0,0 +1,2 @@
+   1   2   3
+   4   5   6
diff --git a/parmorceauxMax-git/patient_normal.m b/parmorceauxMax-git/patient_normal.m
new file mode 100644
index 0000000000000000000000000000000000000000..520469946ba31b4f86107d9fd009ad7691a9d0c1
--- /dev/null
+++ b/parmorceauxMax-git/patient_normal.m
@@ -0,0 +1,19 @@
+function normal=patient_normal(pt,seuil)
+    N=0;
+	A=0;
+	i=1;
+    PT=load(pt);
+	while i<=25
+        if PT(i)>=seuil
+            N=N+1;
+        else
+             A=A+1;
+        end
+        i=i+1;
+    end
+	if A>0
+        normal=false;
+    else
+        normal=true;
+	end
+end
diff --git a/parmorceauxMax-git/pdf_estimations.py b/parmorceauxMax-git/pdf_estimations.py
new file mode 100644
index 0000000000000000000000000000000000000000..26f5aeb588ea5ed2792d8373594530397a6f16b5
--- /dev/null
+++ b/parmorceauxMax-git/pdf_estimations.py
@@ -0,0 +1,159 @@
+#!/usr/bin/python3
+
+from scipy import stats
+import scipy.io
+import numpy as np
+
+from matplotlib import cm,colors
+import matplotlib.pyplot as plt
+# Lattice: bidimensional numpy array, example : lattice = ones((size, size), dtype=float )
+# extent: axis extent for each axis  [begin_x,end_x,begin_y,end_y] 
+
+print( "Package Versions:")
+import sklearn; print( "  scikit-learn:", sklearn.__version__)
+
+from sklearn.neighbors import KernelDensity
+from sklearn.model_selection import GridSearchCV
+
+def plotcolormap(lattice,extent=None,fname = None):
+    fig = plt.figure()    
+    map1=colors.LinearSegmentedColormap.from_list('bla',['#000000','#FF0000','#FFFF00'])
+    plt.imshow(lattice, map1,vmin = 0, interpolation='nearest',extent=extent)
+    # vmin=0,vmax = 1,
+    if fname is None:
+        plt.show()
+    else:
+        plt.savefig(fname)
+
+def main(num_dim,periodic_signal,bw,step,r_fname = 'training.mat',w_fname = "proba.mat"):
+    num_dim = int(num_dim)
+    periodic_signal = int(periodic_signal)
+    bw = float(bw)
+    step = float(step)
+
+    mat = scipy.io.loadmat(r_fname)
+    keyto_concat = ['X_training',
+                'Y_training']
+    to_concat = []
+    for k in keyto_concat:
+        print( mat[k].shape)
+        to_concat.append(mat[k])
+    to_concat[-1] = to_concat[-1][:,0:num_dim] # select coordinates of Y
+    
+    values = np.hstack(to_concat)
+    print( values.shape)
+    
+    _,N = values.shape # number of dimensions
+    print( 'number of dimensions')
+    print( N)
+    mins = []
+    maxs = []
+    for i in range(N):
+        min_tmp = values[:,i].min()
+        max_tmp = values[:,i].max()
+        delta = max_tmp - min_tmp
+        max_tmp = max_tmp + delta / 10.
+        min_tmp = min_tmp - delta / 10.
+        mins.append(min_tmp)
+        maxs.append(max_tmp)
+    mins[0] = 0.
+    maxs[0] = 1.
+
+    print( values)
+
+    # add the same values at X-1 and X+1 to make sure that the estiamted pdf is for a periodic signal
+    if periodic_signal:
+        Xp = values[:,0]+1
+        Xm = values[:,0]-1
+        Y = values[:,1:]
+        
+        to_concat = []
+        to_concat.append(Xp)
+        to_concat.append(Y)
+        to_concat = np.column_stack(to_concat)
+        to_concat2 = []
+        to_concat2.append(to_concat)
+        to_concat2.append(values)
+        values = np.vstack(to_concat2)
+
+        to_concat = []
+        to_concat.append(Xm)
+        to_concat.append(Y)
+        to_concat = np.column_stack(to_concat)
+        to_concat2 = []
+        to_concat2.append(to_concat)
+        to_concat2.append(values)
+        values = np.vstack(to_concat2)
+
+        print( values.shape)
+
+    kde = KernelDensity(bandwidth=bw)
+    kde.fit(values)
+
+  
+    # generate grid
+    to_exec = ""
+    to_exec += "np.mgrid["
+    for i in np.arange(N):
+        to_exec +="%f:%f:%fj," % (mins[i],maxs[i],step) # select number of samples in each dimension
+    to_exec = to_exec[:-1]
+    to_exec += "]"
+    print( to_exec)
+
+    meshes = eval(to_exec)
+    print( meshes.shape)
+
+    size_grid = meshes[0].shape
+    print( 'size_grid')
+    print( size_grid)
+    
+    Z = np.vstack([X.reshape(1,X.size) for X in meshes]).transpose()
+    print( Z.shape)
+
+
+    # score_samples() returns the log-likelihood of the samples
+    log_pdf = kde.score_samples(Z)
+    probas = np.exp(log_pdf)
+
+    print(probas.shape)
+    probas = probas.transpose().reshape(size_grid)
+    print( probas.shape)
+
+
+    mdict = {'Proba_XY' : probas}
+    i = 1
+    for X in meshes:
+        mdict['X_%d' % i] = X
+        i+= 1
+    print( mdict.keys())
+    scipy.io.savemat(w_fname,mdict)
+    
+    proba_plot = probas
+    for i in np.arange(N-1, 1, -1):
+        proba_plot = proba_plot.sum(i)
+    plotcolormap(np.rot90(proba_plot),extent=[mins[0], maxs[0], mins[1], maxs[1]])
+
+    
+   
+if __name__ == "__main__":
+    import sys
+    import time
+    
+    start_time = time.time()
+    
+    if len(sys.argv) <5:
+        """
+        print( "Usage: ")big
+	print( "pdf_estimations.py <num_dim> <periodic_signal> <bw> <step>")
+        print( "pdf_estimations.py <num_dim> <periodic_signal> <bw> <step> <file_source.m>")
+        print( "pdf_estimations.py <num_dim> <periodic_signal> <bw> <step> <file_source.m> <file_target.m>")
+        """
+    elif len(sys.argv) == 5:
+        main(sys.argv[1],sys.argv[2],sys.argv[3],sys.argv[4])
+    elif len(sys.argv) == 6:
+        main(sys.argv[1],sys.argv[2],sys.argv[3],sys.argv[4],r_fname = sys.argv[5])        
+    elif len(sys.argv) == 7:
+        main(sys.argv[1],sys.argv[2],sys.argv[3],sys.argv[4],r_fname = sys.argv[5],w_fname = sys.argv[6])
+
+    print("temps d'execution :", (time.time() - start_time))
+    
diff --git a/parmorceauxMax-git/points courbes.ods b/parmorceauxMax-git/points courbes.ods
new file mode 100644
index 0000000000000000000000000000000000000000..d9f5a3f56d76334d73cb1cdfc5a4a5a6c74f2e13
Binary files /dev/null and b/parmorceauxMax-git/points courbes.ods differ
diff --git a/parmorceauxMax-git/points courbes.xls b/parmorceauxMax-git/points courbes.xls
new file mode 100644
index 0000000000000000000000000000000000000000..08ae0de83e381c844107c9bbd1187268bc0315e5
Binary files /dev/null and b/parmorceauxMax-git/points courbes.xls differ
diff --git a/parmorceauxMax-git/points courbes2.xls b/parmorceauxMax-git/points courbes2.xls
new file mode 100644
index 0000000000000000000000000000000000000000..b8eef18049633afcfc96bd0b55456c9b63126f61
Binary files /dev/null and b/parmorceauxMax-git/points courbes2.xls differ
diff --git a/parmorceauxMax-git/prepare_models_part1modifie.m b/parmorceauxMax-git/prepare_models_part1modifie.m
new file mode 100644
index 0000000000000000000000000000000000000000..831f2cbc340cd350416e5828851485e7ca5bbc53
--- /dev/null
+++ b/parmorceauxMax-git/prepare_models_part1modifie.m
@@ -0,0 +1,109 @@
+% build dynamics model (part 1)
+%max
+Y=load('ListeDesVolumes.txt');
+y_training=Y;
+y_training=zeros(18*25,1);
+J=1;
+I=1;
+i=1;
+while (I<=18);
+    J=1;
+    while (J<=25);
+        y_training(i,1)=Y(I,J);
+        i=i+1;
+        J=J+1;
+    end
+    I=I+1;
+end
+%on cherche le Y_max de chaque patient
+ Y_max=[];
+ y_max=0;
+ k=1;
+ i=1;
+ while(k<=18);
+     y_max=0;
+     while(i<=25*k);
+         if (y_training(i,1)>y_max);
+             y_max=y_training(i,1);
+         end
+         i=i+1;  
+     end
+     y_max=repmat(y_max,1,25);
+     Y_max=[Y_max,y_max];
+     k=k+1;
+ end
+Y_max=Y_max'; 
+ %maintenant on va multiplier chaque élément de Y_training par 1/Y_max
+ %pour avoir le poucentage
+
+i=1;
+Y_training=zeros(18*25,1);
+while (i<=450);
+    Y_training(i,1)=y_training(i,1)*(1/Y_max(i,1));
+    i=i+1;
+end
+%creation de X_training
+X=[0:1/24:1];
+X_training=X';
+X_training=repmat(X_training,18,1);
+
+
+%min-max
+% Y=load('ListeDesVolumes.txt');
+% y_training=Y;
+% y_training=zeros(18*25,1);
+% J=1;
+% I=1;
+% i=1;
+% while (I<=18);
+%     J=1;
+%     while (J<=25);
+%         y_training(i,1)=Y(I,J);
+%         i=i+1;
+%         J=J+1;
+%     end
+%     I=I+1;
+% end
+% %on cherche le Y_max de chaque patient
+% %on cherche le Y_min de chaque patient 
+%  Y_max=[];
+%  y_max=0;
+%  Y_min=[];
+%  y_min=1000000;
+%  k=1;
+%  i=1;
+%  while(k<=18);
+%      y_max=0;
+%      y_min=1000000;
+%      while(i<=25*k);
+%          if (y_training(i,1)>y_max);
+%              y_max=y_training(i,1);
+%          end
+%          if (y_training(i,1)<y_min);
+%              y_min=y_training(i,1);
+%          end
+%          i=i+1;  
+%      end
+%      y_max=repmat(y_max,1,25);
+%      Y_max=[Y_max,y_max];
+%      y_min=repmat(y_min,1,25);
+%      Y_min=[Y_min,y_min];
+%      k=k+1;
+%  end
+% Y_max=Y_max';
+% Y_min=Y_min';
+%  %maintenant on va multiplier chaque élément de Y_training par
+%  %(y_training(i,1)-Y_min)/(Y_max-Y_min)
+% 
+% i=1;
+% Y_training=zeros(18*25,1);
+% while (i<=450);
+%     Y_training(i,1)=(y_training(i,1)-Y_min(i,1))/(Y_max(i,1)-Y_min(i,1));%y_training(i,1)*(1/Y_max(i,1))
+%     i=i+1;
+% end
+% %creation de X_training
+% X=[0:1/24:1];
+% X_training=X';
+% X_training=repmat(X_training,18,1);
+
+save('training.mat','X_training','Y_training')
\ No newline at end of file
diff --git a/parmorceauxMax-git/prepare_models_part2.m b/parmorceauxMax-git/prepare_models_part2.m
new file mode 100644
index 0000000000000000000000000000000000000000..60f3d1828ce88aae749d6b6bc053253e726d1a32
--- /dev/null
+++ b/parmorceauxMax-git/prepare_models_part2.m
@@ -0,0 +1,112 @@
+% prepare the pdf interpolants for the dynamics model
+function prepare_models_part2
+
+load 'probaC_0.1.mat';
+
+num_dim = length(size(Proba_XY));
+dims = size(Proba_XY);
+Nx = dims(1);
+
+%% compute proba Y conditional on X
+Proba_X = Proba_XY;
+for i=2:num_dim
+    Proba_X = sum(Proba_X,i);
+end
+
+dims_rep = dims;
+dims_rep(1) = 1;
+rep = repmat(Proba_X,dims_rep);
+
+Proba_Y_knowing_X = Proba_XY ./ rep;
+
+%% normalisation pour comparaison entre morceaux
+%max
+max_val = Proba_Y_knowing_X;
+for i=1:num_dim
+    max_val = max(max_val);
+end
+
+Proba_Y_knowing_X = Proba_Y_knowing_X / max_val;
+
+% %min-max
+% max_val = Proba_Y_knowing_X;
+% for i=1:num_dim
+%     max_val =max(max_val); 
+% end
+% min_val=Proba_Y_knowing_X;
+% for i=1:num_dim
+%     min_val=min(min_val);
+% end
+% 
+% Proba_Y_knowing_X = (Proba_Y_knowing_X-min_val) / (max_val-min_val);
+
+str = 'griddedInterpolant(';
+for i=1:num_dim
+    str = [str sprintf('X_%d,',i)];
+end
+str = [str 'Proba_Y_knowing_X);'];
+interpolant_XY = eval(str);
+
+%% compute the marginals for display
+
+for i=2:num_dim
+    tmp = Proba_Y_knowing_X;
+    for j=2:num_dim
+        if j == i
+            continue
+        end
+        tmp = sum(tmp,j);
+    end
+    P_Yi_knowing_X(:,:,i-1) = rot90(squeeze(tmp));
+end
+
+%% compute proba Y
+Proba_Y = squeeze(sum(Proba_XY,1));
+
+
+%% normalisation pour comparaison entre morceaux
+%max
+max_val = Proba_Y;
+for i=1:num_dim
+    max_val = max(max_val);
+end
+
+Proba_Y = Proba_Y / max_val;
+
+% %min-max
+% max_val = Proba_Y;
+% for i=1:num_dim
+%     max_val =max(max_val); 
+% end
+% min_val=Proba_Y;
+% for i=1:num_dim
+%     min_val=min(min_val);
+% end
+% 
+% Proba_Y = (Proba_Y-min_val) / (max_val-min_val);
+
+
+args = {};
+for i=2:num_dim
+    tmp = eval(sprintf('X_%d',i));
+    
+    str = 'tmp(1,';
+    for j=2:i-1
+        str = [str '1,'];
+    end
+    str = [str ':'];
+    for j=i+1:num_dim
+        str = [str ',1'];
+    end
+    str = [str ');'];
+    
+    tmp = eval(str);
+    
+    args{i-1} = squeeze(tmp);
+end
+interpolant_Y = griddedInterpolant(args, Proba_Y);
+
+%% save
+save('interpolants_C.mat','interpolant_XY','interpolant_Y','P_Yi_knowing_X');
+
+end
diff --git a/parmorceauxMax-git/proba.mat b/parmorceauxMax-git/proba.mat
new file mode 100644
index 0000000000000000000000000000000000000000..56dc2434eb81bf89bf3ec53a68f7bb38147f0f9b
Binary files /dev/null and b/parmorceauxMax-git/proba.mat differ
diff --git a/parmorceauxMax-git/probaC_0.1.mat b/parmorceauxMax-git/probaC_0.1.mat
new file mode 100644
index 0000000000000000000000000000000000000000..0c52d2762f6c7bafd17168c7f327b1f6d469b53d
Binary files /dev/null and b/parmorceauxMax-git/probaC_0.1.mat differ
diff --git a/parmorceauxMax-git/roc2.m b/parmorceauxMax-git/roc2.m
new file mode 100644
index 0000000000000000000000000000000000000000..a02786ba043da0b3efb71bbb9772902e867492dd
--- /dev/null
+++ b/parmorceauxMax-git/roc2.m
@@ -0,0 +1,103 @@
+%diagn=[True,False,True,False,False,True,False,False,False,False,True,False,True,False,False,True,False,False,False,False,True,False,False,True,True,True,True,False,True]
+%ROC_curve.patient_normal('HTN178.txt',-2)
+%pt='HTN178.txt'
+pt1=[-3.08712768568528,-2.84936666686903,-2.35852739907797,-2.00452635472450,-1.53729482468557,-0.707966475890808,0.322091598267998,0.582136023535936,0.548105404610665,0.230998627443125,-0.139348221501722,0.161703963541502,0.127276732430601,0.137880679193611,0.339744981603301,0.230104846896392,-0.224587635295046,0.622472987063521,0.940832709899665,1.08982053982580,0.891069205954832,1.16137858739315,0.715232940913750,0.560879277445788,0.131842747645550];
+dlmwrite('LLLDynpt01.txt',pt1)
+pt2=[1.27512048096664,0.323155173266798,0.537051696646789,0.459913585465993,0.552640236896793,0.785487555123721,0.822615812830973,0.671081757383687,-0.616285676611875,-3.27315028071488,-4.39561060576371,-3.99526539994701,-3.99753329057737,-3.81203098719010,-3.47663083590590,-2.68085201052182,-2.38411673429543,-1.75753670982350,-1.43431097107605,-1.12852200301075,-0.333662265457744,-0.892191914891860,-1.48151856257243,0.613118634184468,1.50444542724964];
+dlmwrite('LLLDynpt02.txt',pt2)
+pt3=[0.838398846674640,0.607842109693056,0.557400956706146,0.373241553873784,-0.0925933636853369,0.0887963418734108,0.218602880809574,0.824033678185812,0.914211641678235,0.877556874366474,0.516177800719475,0.246459819344464,0.235230286172379,0.455399275353218,0.878822528017778,0.416206321968921,0.0258438415918452,0.0849334042137819,0.168257559549167,0.756356596157137,0.938236463738682,0.548925596511297,-0.300413354858488,-0.139883878583430,1.08963841053165];
+dlmwrite('LLLDynpt03.txt',pt3)
+pt4=[0.661983188161671,-2.47967351128645,-3.26388020140632,-4.58739897493457,-4.64465983088446,-2.23407361970744,-2.56598088946958,-4.93762181606236,-9.07601427371120,-10.1396468696031,-9.68718365912214,-6.92519075652457,-4.27895294225470,-2.18804665403938,-0.769413400185278,-0.630420436366642,-0.390609464184518,-0.249632455648936,-1.72903375575766,-2.53901372879927,-2.95429431581357,-2.03384309233352,-0.500085039364339,1.16547268413848,1.17562547389191];
+dlmwrite('LLLDynpt04.txt',pt4)
+pt5=[1.50807093318897,1.07007112180558,0.692055561950840,0.473071233950497,0.0808242692397840,-0.209045978965813,0.517610627118652,0.280702039424884,-0.128721547516189,-0.553084032751434,-0.768818031538993,-0.420093962718163,0.159261000069551,0.219901622597101,-0.214406097059221,0.351887072763398,0.412372897897011,0.510329858407240,0.656832200951764,0.753317070309605,0.825570827410555,0.896700539221192,1.11143260102869,1.11949227961751,1.61055143371539];
+dlmwrite('LLLDynpt05.txt',pt5)
+pt6=[1.36534090882872,1.07825774024336,0.721676991910459,0.605580516590489,0.605951891602631,0.571781766128908,0.764137912180773,1.02685779239007,0.580748604653575,-0.119780854481367,-0.696428286483820,-0.421327013756751,-0.223145645761578,0.329068260639464,0.00363075494381171,0.281724198690236,0.589340093711692,0.612342902634219,0.697722075104880,0.358266731290133,0.565966748246808,0.603703289150055,1.10097928526621,0.906911035392850,1.49080184071830];
+dlmwrite('LLLDynpt06.txt',pt6)
+pt7=[1.40467922717730,1.15376272877018,0.419251451199072,0.538814488255748,0.593414493832031,0.851799749642719,0.893938234322246,0.478366295742078,-0.330782244132584,-0.498951508811450,-1.00096522519480,-0.421709923682805,0.260765078478440,0.146837593649170,-0.00730011290700627,0.00625562432847193,0.0775217001701680,0.368720307120744,0.434406183803802,0.413789593515107,0.926963379889704,1.17383509923419,0.967443833262085,1.28419851734690,1.42462000226486];
+dlmwrite('LLLDynpt07.txt',pt7)
+pt8=[1.47266260752671,0.946160216247685,0.579371143775727,0.552715055006720,0.534387852381528,0.829212967086942,0.892032826306084,1.05018011514443,1.20829357899305,0.879185274546840,0.990911251488241,0.225602571725899,0.0142679470480331,-0.335164335332942,-16.4354656353917,-18.3563730086666,-16.8677118271986,-16.2491396980075,-16.4866389463034,-15.4529209054110,-13.5143684280711,-10.5361107747766,-5.58159471432340,-1.37605219757878,1.37436836418972];
+dlmwrite('LLLDynpt08.txt',pt8)
+pt9=[-0.607018611276788,0.870593365935545,1.31206491191929,1.32477881521553,0.774148409727246,0.172329447136590,-0.0274704126768617,-0.0467006997428188,0.0400495592922603,0.239342369361792,0.377824460354241,0.348741462055147,-0.240448482964045,-0.441513098969453,-0.586394001223840,-0.952955298865402,0.0376582257509295,0.257424071184370,0.308949780077694,0.470567949059146,0.444351387397245,0.793803857416662,0.446870907753276,-0.755422925214640,-1.34819923476265];
+dlmwrite('LLLDynpt09.txt',pt9)
+pt10=[1.31591965280228,0.942404442991798,0.179979324329008,0.228958646918641,0.104103822883284,0.171271650128226,0.158501025787337,0.408663616716083,0.725645132710939,0.928350419532102,0.784533154033571,0.730842914687908,0.333450970749079,0.246268966808252,0.107873975815465,-0.300002217882303,-0.180391138971879,-0.143668116609343,0.140010887748555,0.0630793303733812,0.197580592223642,0.822026016485074,1.16697423541051,0.767293122629053,1.31015078879882];
+dlmwrite('LLLDynpt10.txt',pt10)
+pt11=[0.617411038818489,-0.895501737249355,-1.33940313465432,-2.62997787292366,-1.20515996297600,-0.0121148507801854,-0.479498627215997,-2.07843274969418,-6.28893058766750,-8.01251384648980,-7.97701744541672,-7.14143587253007,-4.96726440077959,-1.65953020994341,0.560946184863742,0.135311405657240,0.0701362082786794,0.423582696857847,0.588233461841420,0.563445597762669,-0.390892930387396,0.967226605847174,1.44300664602175,1.32017560146997,1.33024896670396];
+dlmwrite('LLLDynpt11.txt',pt11)
+pt12=[1.48768553164878,1.13507399670520,0.755642862721352,0.592974840025960,0.319890882521809,0.295156538163432,0.701739509409690,0.993599993388393,-0.0576245952670202,-0.543623717147902,-0.981198368371426,-0.846539150700432,-0.559745995419168,-0.275719366318572,-0.486294390211105,-0.410742395184585,-0.209880086914932,-0.232729740902540,-0.0399572423193844,-0.109783298702654,-0.260525041072025,0.391248527433017,1.15150000094884,0.701586613201002,1.40340069447818];
+dlmwrite('LLLDynpt12.txt',pt12)
+pt13=[1.48480377144584,1.43972880692689,1.00168127100264,0.653416018711226,0.618404766890556,0.608256204839634,0.524893049306844,0.819572100943466,1.07649319392776,1.12226226425046,0.548032601492642,0.173792841087423,-0.278248553389616,-0.116075728765298,-0.430310507440116,-0.420216200679673,-0.412926256326573,-0.398195887283888,-0.0314616708347222,-0.000176482241863951,-0.132825671439059,0.578954744032907,1.23585741960076,1.24914073884926,1.17284106712344];
+dlmwrite('LLLDynpt13.txt',pt13)
+pt14=[1.01400804693760,-0.0270412004143257,-1.82762480775881,-2.63652283836899,-3.92683177211189,-3.07782608325801,-2.13418034476967,-1.26116214388231,-3.57217815159350,-7.89220247211893,-7.93793943185970,-12.5378696510241,-11.4314154303289,-8.90692688112850,-5.34285095225036,-2.23698843534055,-0.403617743623920,-0.385072114735760,-0.232841596237621,-0.0140992863491878,0.0208674763907668,0.309902796817304,-0.113708475772437,0.964314372712331,-0.143678001197225];
+dlmwrite('LLLDynpt14.txt',pt14)
+pt15=[1.28771317696094,0.343091319070539,0.417452884489964,0.206973930177318,-0.00815220288162610,0.397192089522255,0.812756572351819,0.603932102251389,0.979701700722558,0.552690302621511,0.215013642984542,-0.870766678685645,-5.66949633146564,-3.85387753747253,-3.34076398961184,-2.04732551562103,-1.68330121310894,-1.32079478147183,-1.24265989938179,-1.14791803986680,-0.637414091885515,-1.36725414096191,-1.35137036385084,0.162842135276868,0.481757015641731];
+dlmwrite('LLLDynpt15.txt',pt15)
+pt16=[1.45712017533127,0.165237781381722,0.574237443510950,0.455126744963962,0.461690703878407,0.491975650513790,0.593119218425914,0.815064564623736,0.932925813374742,0.756202936525669,1.01004747589616,0.623045450619695,0.134683894049993,-0.0575769675286351,-0.117230096137663,-0.193994456164210,-0.0797766661655768,-0.0828739427432028,0.0200690541140744,-0.0590158862636612,0.127482116678849,0.598041671324594,0.985976500815989,1.29833813649111,1.23349732522810];
+dlmwrite('LLLDynpt16.txt',pt16)
+pt17=[1.47500979029751,1.31477636977495,0.972896991136449,0.633023205334150,0.578097343172045,0.494083992035984,0.502704841817318,0.710723026738440,0.853716909893589,0.973515476103676,0.680511067603299,0.737719978809828,0.914009409887889,0.746402116722488,0.229733069676833,0.000349815851617308,0.110125320763171,0.175014325126234,0.359793903599788,0.601698890146572,0.612411379316935,1.09421051217888,1.33857246792670,1.01630248706480,1.01770538894945];
+dlmwrite('LLLDynpt17.txt',pt17)
+pt18=[1.29955654256042,1.39498761234725,0.525287839963104,0.519978118247999,0.630775804474071,0.504658250097116,0.337726182206024,0.120728223692690,-0.651152265393947,-2.76443837106699,-7.28296665848626,-6.00268441430497,-7.82085962580196,-5.64585590447273,-3.27546177113315,-1.35684832974817,-0.256186000924585,-0.338379408294199,-0.112796939992958,0.0913371399728007,-0.107379174451396,-1.09981471562833,-0.360480216236029,0.0283801511862043,-0.870937901253516];
+dlmwrite('LLLDynpt18.txt',pt18)
+pt19=[1.20138191950368,0.865110787041002,0.326792141024035,0.443921134348003,0.199148495683033,0.130095571873208,0.218193749743157,0.370397980997404,0.212205528962027,-0.320120431573218,-1.95781454163040,-3.69528577441112,-3.41839646344881,-3.74766814044229,-2.36740890550416,-0.956602180178429,0.0307078795656599,-0.0919815424789423,0.125273396768279,0.278288596199930,-0.643506121903545,0.310174674838082,-0.180389743350010,-0.308286821525068,-0.512857187862188];
+dlmwrite('LLLDynpt19.txt',pt19)
+pt20=[1.33586471683959,1.25108131987828,1.13838995393282,1.10318904882440,0.566743962545532,0.560229043021265,0.589031249236158,0.878487632517826,0.936222194376405,-1.68246628458105,-2.57307578632484,-3.56345984969071,-3.34956596944792,-2.75425926946374,-1.92449521724825,-1.22948121964094,-0.372660306809054,-0.326216536946832,-0.265361592540196,0.0129785538733804,-0.269995007198217,0.131210350636696,1.05132849968581,1.04750361775402,0.912062839562727];
+dlmwrite('LLLDynpt20.txt',pt20)
+pt21=[1.17876363078851,0.963586655841447,1.05010085409366,0.559852768916875,0.106525737281008,0.122113676949430,0.264503476015991,0.694720727892676,0.709395664060609,0.341091965070290,-0.550011105643218,-1.58179637805479,-1.81967188897277,-0.683274813266507,0.266877995606121,0.121949641046575,0.0512673803944299,0.114682164419079,0.173290048385811,0.398851703450788,-0.248740085456484,0.494658220566897,0.329437711970545,0.0304432637485723,0.801610004261818];
+dlmwrite('LLLDynpt21.txt',pt21)
+pt22=[1.24435101160631,1.14955986745459,0.598818132475230,0.283474231709123,0.401519220043824,0.475551984966568,0.837996979994329,1.09048290973303,1.19838132540648,0.983084161118861,1.28906158894278,1.16728351377982,0.472714107925415,0.0746894869685066,0.261540439447043,0.372674510561434,0.829993383902426,0.935311778373212,1.12621402554091,1.20757973958921,1.30802883076268,1.37082656935142,1.32951083340905,1.19136081623819,0.921425094608939];
+dlmwrite('LLLDynpt22.txt',pt22)
+pt23=[1.20868001074277,1.00838526627363,0.902604916481167,0.636752436412668,0.509446917393033,0.581781879763333,0.574778992590801,0.852067144990034,0.918228674523861,1.17123148646691,1.15376467385579,1.26661132967040,1.29989234428503,0.357615323708435,-0.257152138480592,-0.221693317561311,0.400139641138343,0.602950929651063,1.01402958714355,1.13175208979335,1.10903676677961,0.525200757808036,0.403698788692035,0.835781287741997,1.24596531179833];
+dlmwrite('LLLDynpt23.txt',pt23)
+pt24=[0.0905883029469834,-0.116248437423578,-0.432034765373703,-0.459217543991054,-0.285892537659923,0.0869258986611969,0.425569046554841,0.811711727265879,1.05174077234691,1.20694860948924,1.23845429306747,1.18473930644917,0.907569294770203,0.103779318673715,-0.0300653202490624,0.417344184136907,0.714797074034568,0.609351618453600,0.788576594858649,0.653681768077852,0.368958569233327,-0.0432730428851942,0.0343585285732164,1.09217772938641,1.15395349536034];
+dlmwrite('LLLDynpt24.txt',pt24)
+pt25=[0.0905883029469834,-0.116248437423578,-0.432034765373703,-0.459217543991054,-0.285892537659923,0.0869258986611969,0.425569046554841,0.811711727265879,1.05174077234691,1.20694860948924,1.23845429306747,1.18473930644917,0.907569294770203,0.103779318673715,-0.0300653202490624,0.417344184136907,0.714797074034568,0.609351618453600,0.788576594858649,0.653681768077852,0.368958569233327,-0.0432730428851942,0.0343585285732164,1.09217772938641,1.15395349536034];
+dlmwrite('LLLDynpt25.txt',pt25)
+pt26=[1.52020505614819,1.24810610717404,0.869238564269657,0.569504111528834,0.591193428926301,0.560325634223131,0.888286735081612,0.954060061250716,0.551531953020318,0.0632315677851105,-0.456964534026668,-0.497945679500126,0.0185765239947715,0.801595584027450,0.203373755935914,0.0396939827121914,0.242251036273045,0.580602432708111,0.684923644428759,0.465004121692629,0.897804566761591,1.22315672644168,1.32248024676030,1.23170301297809,1.42789522198401];
+dlmwrite('LLLDynpt26.txt',pt26)
+pt27=[1.37288783119043,1.00209806195018,0.646426441249684,0.564702832007222,0.453214856017927,0.640485756420972,0.318226215914315,-0.963226659895604,-2.40255543896623,-3.38023697630808,-4.11161141461888,-2.24443314044964,-0.829360861320830,0.0272303218848036,-0.273192136022256,-0.252546790075416,0.0768325122227251,0.0182493764746132,-0.275137375270758,0.245762687733467,0.452902719428743,0.653667727718614,0.602411035066189,0.816687365392975,1.62716236601404];
+dlmwrite('LLLDynpt27.txt',pt27)
+pt28=[1.24591637441262,0.960176832849103,0.682087426057866,0.623615494727930,0.628461600655923,0.602390478232861,0.683508506364485,0.335295370524272,-0.463158202869374,-1.83249036840022,-2.62144378166642,-2.78008424090587,-1.98155461556278,-0.766762587659982,-0.225433698975484,-0.310444819019270,-0.271188522239449,-0.111233766595302,-0.0519753680162856,-0.221389342165534,-0.213505516597185,0.296312749132805,0.503794558219274,0.128929879057274,1.25557779600341];
+dlmwrite('LLLDynpt28.txt',pt28)
+pt29=[0.626676242063597,0.930821824670342,0.511913997370106,0.314462192887000,0.221044593825518,0.417919138389983,0.0908424612776955,0.719684882852897,0.307869337914819,0.491452924939512,1.21344138670693,0.403951365376457,-0.285384491924389,0.312877603090354,0.677862397272926,0.685898890698730,0.685069187924684,0.962229715307111,0.992732509135080,1.28787110585204,1.17648911510798,0.638552943613146,0.0710291621450052,0.483666037356464,0.903210091297370];
+dlmwrite('LLLDynpt29.txt',pt29)
+pt30=[-2.74820404388053,-2.83631662357515,-1.85112411789637,-0.516580268633504,-0.0395753025852335,0.285581783103083,0.506152259797716,0.689085447514615,0.923449425877736,1.15838084748125,1.13827907243644,0.928386355109941,1.07348666335672,1.13994630738990,0.478596530285592,-0.449968697561656,-0.435587275467619,0.590902471548063,0.873749286549300,1.02843484288242,0.632917772251420,0.474703780827543,0.839861431930868,1.17404560591647,1.14219218177877];
+dlmwrite('LLLDynpt30.txt',pt30)
+pt31=[-0.203382387644309,1.08951910445665,0.741298326462939,1.00033683401906,0.989064302151742,0.493697544602996,0.478501318030603,0.446228355941694,0.458594463899697,0.724646179378373,0.842213533002187,0.991051548534209,1.08562676984173,1.06103298778462,1.02038678300456,0.857685811701088,0.527473473170744,0.229284065285308,-0.00314126715886953,-0.0440904506164772,-0.379969166274787,0.0624120742401670,0.394917382750824,-0.240527367489714,-1.18784241563068];
+dlmwrite('LLLDynpt31.txt',pt31)
+pt32=[1.49002508712316,1.38315809631495,1.00425283143633,0.385841774514483,0.622025007719824,0.560596343870845,0.817619935476574,1.00440544785354,0.826878105914208,0.165651787172480,-0.207451960730803,0.239108014173638,0.764134654131224,0.515459244904715,0.203463775951163,0.149732157151301,0.306014478015287,0.506193726242523,0.822832123933305,0.618340698474278,0.935869100514261,1.26313531988852,1.45797186745780,1.21360246028352,1.44508345906486];
+dlmwrite('LLLDynpt32.txt',pt32)
+pt33=[0.660132575289854,0.614489565643391,0.494877624846857,0.577187401567119,0.472588988071228,0.484374069928633,0.498537600330840,0.725898266897231,1.01033427146409,1.15647204376287,1.24370830955036,1.24583417443595,1.12945317819196,0.181934465590574,-0.0628303947765732,0.377412522520957,0.494294200125147,0.647835041960945,0.527973530536800,0.711620928955840,1.08926067543543,1.36846297207845,1.50050620694923,1.30122973572246,1.35385210378026];
+dlmwrite('LLLDynpt33.txt',pt33)
+pt34=[0.585202948193592,0.686359165275881,0.709138710617635,0.478156412336439,0.540854868500298,0.573181837801809,0.485564959702599,0.745101193840559,0.955786997444969,1.12467438475279,1.30374561268160,1.25172744685171,0.246801277977780,-0.317998021510936,-0.179573036936141,-0.193563923389586,0.672773607416811,0.826673455430148,1.08415221872407,1.13799301054369,1.01162050812843,1.23970301452939,1.28404214770556,1.27509085729509,1.36145210104106];
+dlmwrite('LLLDynpt34.txt',pt34)
+pt35=[1.43835916189841,-0.0753080602677114,0.539743130783386,0.500717693967564,0.401294842760218,0.513388077945836,0.869125343147910,0.976052102433055,1.05096590853012,0.993979743214617,-0.332188754382920,0.328584372279000,0.325464261432789,0.182123379001304,-0.109896282041468,-0.180337784187816,-0.0451201089154161,-0.151546092757831,-0.132002236273105,-0.103647443855346,-0.0947654886270817,0.477617124274734,0.951986198084994,1.35185995411704,1.28568671982787];
+dlmwrite('LLLDynpt35.txt',pt35)
+pt36=[1.40186793618253,0.162452815811278,0.612213781786933,0.635938338847885,0.657911161663972,0.619536345814108,0.845584031127728,1.10516028593810,1.01910906474698,-1.93249939733409,-2.12332503967125,-1.90239236999138,-1.86950838314072,-1.23302406310337,-0.437018703532267,-0.383235916246010,-0.136236980860814,0.109418161369788,0.341749298413113,0.593334480602952,1.11921626704187,1.33503433756306,1.01213488571518,1.30700354608171,1.04191049665449];
+dlmwrite('LLLDynpt36.txt',pt36)
+pt37=[0.977590753254558,0.827129860806025,0.637727973496689,0.604251031885027,0.629208183751625,0.600320965238675,0.838361953763926,1.02602247112469,1.21377050222285,1.09690058973218,1.11806437649416,0.391377882645843,-0.201164070161567,0.263251455775739,0.575070613581207,0.720617608419489,0.857239621738145,1.07594846368461,1.12312753053432,0.962643970133862,1.05701568111645,0.947560827381388,0.756406933670456,0.921417784700873,1.24488337132859];
+dlmwrite('LLLDynpt37.txt',pt37)
+pt38=[0.750047905579518,0.841428457052855,0.289546924096484,0.0904837779096823,0.0142216193812672,0.186352101824320,0.453457724265284,0.641785499844364,0.715442195733325,0.578442296905522,0.0290235008625048,0.277758603399414,0.104223694821474,0.399268653855733,0.580723319707166,0.542350436819548,0.790212539575401,0.893998708032718,1.04180870241420,1.15727284963220,1.27791068919515,1.43084056964772,1.46863512405594,1.29388818800820,1.34992448368288];
+dlmwrite('LLLDynpt38.txt',pt38)
+pt39=[-2.87637678991487,-2.89893399073808,-2.22098191919221,-0.545456297859638,0.0472025695410769,0.399260870677988,0.517444612857084,0.695119588282412,0.877697885045057,1.04937338073447,0.974990963953918,0.818034255994561,1.07174021811505,1.11073127068001,0.0398957631980572,0.212335527282030,0.542301955101143,0.314890015127003,0.427161565015378,0.380128586316133,0.299411082473483,0.636450351728362,1.10913559912079,1.09606870957049,0.972997688616419];
+dlmwrite('LLLDynpt39.txt',pt39)
+pt40=[-0.0530477266163620,1.13500466395481,0.696432421864429,0.688576662137163,0.650177574992174,0.417859496127218,0.376216332802184,0.481794018194039,0.561791997054030,0.773130899815658,0.940195792104120,1.06345731772088,1.20399717519670,1.24262952720528,1.21859770892699,0.937411159577374,0.283335977110027,0.0614127574988190,0.249731383258837,0.504640271154011,0.254317889362550,0.633585622368996,0.904108730686893,0.173249851570868,-0.861733133099278];
+dlmwrite('LLLDynpt40.txt',pt40)
+pt41=[0.349215983685757,0.941352028896722,0.573534069826573,0.544716785430556,0.608593477688830,0.654760088907910,0.840464933535212,1.11089391179718,1.22228920341233,1.32801489114739,1.32099282991959,0.525889777777650,-0.282789927840600,-0.677728234595437,0.568879058683479,0.666275157346869,0.758126262619835,0.844950936355552,0.675582121141553,0.312414572227148,0.187998573649340,0.672915406627033,0.947728711848910,1.16320464573641,0.775752268118528];
+dlmwrite('LLLDynpt41.txt',pt41)
+pt42=[1.56493153073129,1.45719474497754,0.813926255767997,0.647517488379005,0.580112985603980,0.479454814257341,0.588978787692387,0.805258029940521,0.965646484640240,0.957077158719825,1.06332014008882,1.07058872773211,0.158557485423043,-0.0245911051618082,0.480139869062105,0.670307000045335,0.738648205705260,0.816073919250532,0.797043270097197,0.743142817860306,0.593183483334298,0.721332477067096,1.01950190527699,1.27040147782242,1.56487212072959];
+dlmwrite('LLLDynpt42.txt',pt42)
+pt43=[-1.91266550518272,-0.0855834953578087,0.138964186078934,0.361363520512470,0.248621105403712,0.614237011127067,0.817273820530595,0.703162257834191,0.112309141901561,0.535851328866174,0.994081774515861,-0.0916011163475394,-0.180403958937406,0.0995794880567296,0.576104681897175,0.958555516682703,-2.80339428138897,-3.15638690769842,-3.49649610794305,-3.07110645792275,-3.74115354118475,-4.32938569584721,-2.26302057299051,-0.600907858454201,-0.899525176405373];
+dlmwrite('LLLDynpt43.txt',pt43)
+pt44=[1.24564856637144,1.06316179149468,0.907068581029754,0.571113307951644,0.284756294895635,0.280787434715337,0.354046007678198,0.641967326970935,0.849561095182835,0.927400278711857,1.09102095849463,1.14726163711681,1.10397180090125,0.758052881150931,0.276622014279677,-0.0423367841279854,0.368699208253761,0.511377470740923,0.564724788281359,0.640473539004053,0.263310650305386,0.953528016823397,1.19737156474734,1.41757875906864,1.18446598426644];
+dlmwrite('LLLDynpt44.txt',pt44)
+pt45=[-0.839019056639076,-0.147826845581542,0.600576050819205,0.511859230829105,0.408009293372363,0.489546942227903,0.780280062323246,0.952095750308190,0.928328110663281,0.705764691497440,0.816322038148601,1.10770477651867,0.974638960923494,0.00384130050441023,-0.128442825807916,0.443706041820847,0.753069639569821,0.875005763057504,0.790725017712621,1.05421180812003,1.29418416890483,1.37986301590737,1.40502117731138,1.41654320237568,1.46858792392170];
+dlmwrite('LLLDynpt45.txt',pt45)
+pt46=[1.54768841066792,1.39716702954218,1.08462311059342,0.616798605849922,0.529353781618329,0.483787982114252,0.827711059239362,0.988585191218844,1.10314324961668,1.17008733838223,1.12242511896515,0.640181191279901,0.200506915215891,0.0769843362735481,0.429734342454426,0.550833432738882,0.660630323701954,0.907094230658064,0.901523016080229,0.442240152510864,0.598702530136508,0.470499729619071,0.408644571928632,0.655312008655010,1.48861385707670];
+dlmwrite('LLLDynpt46.txt',pt46)
+pt47=[1.05897895561767,1.15547443217604,0.883355679477540,0.697573719076090,0.229996304831263,-0.00400824902244423,0.0778322737503130,0.396658544568073,0.544081920853866,0.806744348001065,0.967486733486611,1.12305582997644,1.12989975538549,1.02994261468272,0.992793130638604,0.897982574577481,0.0761953750309417,0.0358912478228097,0.169820081312618,0.322333290586743,0.204371018227896,-0.198809818772165,0.0138575893467454,-0.327644764714253,-1.16546855167973];
+dlmwrite('LLLDynpt47.txt',pt47)
+pt=[pt1;pt2;pt3;pt4;pt5;pt6;pt7;pt8;pt9;pt8;pt9;pt10;pt11;pt12;pt13;pt14;pt15;pt16;pt17;pt18;pt19;pt20;pt21;pt22;pt23;pt24;pt25;pt26;pt27;pt28;pt29];
+seuil=-2;
+
+%load(pt)
+diagn=["True",'False','True','False','False','True','False','False','False','False','True','False','True','False','False','True','False','False','False','False','True','False','False','True','True','True','True','False','True'];
+%TN_TP_FN_FP(pt,seuil,diagn)
\ No newline at end of file
diff --git a/parmorceauxMax-git/roc3.m b/parmorceauxMax-git/roc3.m
new file mode 100644
index 0000000000000000000000000000000000000000..500128963b7175205e86628a37f11b7d04f69912
--- /dev/null
+++ b/parmorceauxMax-git/roc3.m
@@ -0,0 +1,38 @@
+close all
+clear variables
+clc
+
+
+%pt=[1.27512048096664,0.323155173266798,0.537051696646789,0.459913585465993,0.552640236896793,0.785487555123721,0.822615812830973,0.671081757383687,-0.616285676611875,-3.27315028071488,-4.39561060576371,-3.99526539994701,-3.99753329057737,-3.81203098719010,-3.47663083590590,-2.68085201052182,-2.38411673429543,-1.75753670982350,-1.43431097107605,-1.12852200301075,-0.333662265457744,-0.892191914891860,-1.48151856257243,0.613118634184468,1.50444542724964];
+%pt=load('LLLDynpt1.txt');
+pt = dir(['LLLDynpt*.txt'])
+diagn=["True",'False','True','False','False','True','False','False','False','False','True','False','True','False','False','True','False','False','False','False','True','False','False','True','True','True','True','False','True'];
+pt(7).name;
+liste=load(pt(1).name);
+liste(1);
+patient_normal(pt,-2);
+%TN_TP_FN_FP(pt,-2,diagn)
+while t<=29
+   % pt=load(liste(t).name);
+    seuil=-2;
+    %TN_TP_FN_FP(pt,seuil,diagn);
+    t=t+1;
+end
+%string(patient_normal(pt,seuil))=='False'
+diagn=["True",'False','True','False','False','True','False','False','False','False','True','False','True','False','False','True','False','False','False','False','True','False','False','True','True','True','True','False','True'];
+%TN_TP_FN_FP(pt,seuil,diagn)
+
+%liste = dir(['LLLDynpt*.txt']);
+%x=load(liste(1))
+%pt=strcat(liste(1).name)
+%x=load('pt')
+t=1;
+%while t<=29
+    %TN_TP_FN_FP(liste(t),seuil,diagn);
+    %i=i+1;
+%end
+%po=["LLLDynpt1.txt"]
+%pt=load(string(po(1)))
+
+%liste = dir(['LLLDynpt*.txt'])
+%pt=load(liste(2).name)
\ No newline at end of file
diff --git a/parmorceauxMax-git/sdf.mat b/parmorceauxMax-git/sdf.mat
new file mode 100644
index 0000000000000000000000000000000000000000..aac337fdd43a10285fd188f48b41ccb7d195736e
Binary files /dev/null and b/parmorceauxMax-git/sdf.mat differ
diff --git a/parmorceauxMax-git/sequences_model_numbers.mat b/parmorceauxMax-git/sequences_model_numbers.mat
new file mode 100644
index 0000000000000000000000000000000000000000..f926db67606b0a17761467ed23f3528bd42e4f0c
Binary files /dev/null and b/parmorceauxMax-git/sequences_model_numbers.mat differ
diff --git a/parmorceauxMax-git/sequences_model_numbers{indice}.mat b/parmorceauxMax-git/sequences_model_numbers{indice}.mat
new file mode 100644
index 0000000000000000000000000000000000000000..3f7736d8f22d47ecc5fe01499d6666abec97b293
Binary files /dev/null and b/parmorceauxMax-git/sequences_model_numbers{indice}.mat differ
diff --git a/parmorceauxMax-git/test.txt b/parmorceauxMax-git/test.txt
new file mode 100644
index 0000000000000000000000000000000000000000..86a4d89ae43f83137ca83875125cd82ccd7b7881
Binary files /dev/null and b/parmorceauxMax-git/test.txt differ
diff --git a/parmorceauxMax-git/testload.m b/parmorceauxMax-git/testload.m
new file mode 100644
index 0000000000000000000000000000000000000000..6188d906e751171f5df1d0a0659cce6ef65548fc
--- /dev/null
+++ b/parmorceauxMax-git/testload.m
@@ -0,0 +1,18 @@
+%x=load('text.txt')
+%y=csvread('text.txt',0,0)
+%z=importdata('text.txt')
+%w=load('text.txt',x)
+
+%filename = 'scan1.dat';
+%fileID = fopen(filename);
+%C = textscan(fileID,'%s Level%d %f32 %d8 %u %f %f %s %f');
+%fclose(fileID);
+%C{2}
+%match=['[',',',']']
+%newStr = erase(str,match)
+
+%fid = fopen('data.txt', 'r');
+%X = textscan(fid, '%s', 'delimiter', '\n');
+%fclose(fid);
+
+[fid , message] = fopen('text.txt' , 'r')
\ No newline at end of file
diff --git a/parmorceauxMax-git/testtest.mat b/parmorceauxMax-git/testtest.mat
new file mode 100644
index 0000000000000000000000000000000000000000..4b9d53a7c1b6b724429466c66a422bcd78017bcd
Binary files /dev/null and b/parmorceauxMax-git/testtest.mat differ
diff --git a/parmorceauxMax-git/testtest1.mat b/parmorceauxMax-git/testtest1.mat
new file mode 100644
index 0000000000000000000000000000000000000000..bc06a160e346b49e4124d754d041ec13ba4e57b6
Binary files /dev/null and b/parmorceauxMax-git/testtest1.mat differ
diff --git a/parmorceauxMax-git/testtest2.mat b/parmorceauxMax-git/testtest2.mat
new file mode 100644
index 0000000000000000000000000000000000000000..2d90b483a9dd15fd9b8a4ed106e8a1a9cba73360
Binary files /dev/null and b/parmorceauxMax-git/testtest2.mat differ
diff --git a/parmorceauxMax-git/testviterbi.m b/parmorceauxMax-git/testviterbi.m
new file mode 100644
index 0000000000000000000000000000000000000000..190aa6e698e6cfc820cf163b6ce00afcd6a4c08f
--- /dev/null
+++ b/parmorceauxMax-git/testviterbi.m
@@ -0,0 +1,55 @@
+%mtrans=[1/2 1/2 0 0;0 1/3 1/3 1/3;0 0 1/2 1/2;0 0 0 1]
+MTrans=[0.8 0.2 0;0 0.9 0.1;0 0.5 0.5;0.5 0.5 0];
+MEmmis=[0.2 0 0 0;0 0.1 0.3 0.1;0 0.2 0.15 0.3];
+Eta=[DT,NN,VB]
+Obs=[the,fans,watch,the,race]
+%function p=probabr()
+%calcule la proba de toute la branche avec la matrice de transition
+
+def viterbi(obs, states, start_p, trans_p, emit_p):
+    V = [{}]
+    for st in states:
+        V[0] [st] = {"prob": start_p[st] * emit_p[st] [obs[0]], "prev": None}
+    # Run Viterbi when t > 0
+    for t in range(1, len(obs)):
+        V.append({})
+        for st in states:
+            max_tr_prob = V[t - 1] [states[0]] ["prob"] * trans_p[states[0]] [st]
+            prev_st_selected = states[0]
+            for prev_st in states[1:]:
+                tr_prob = V[t - 1] [prev_st] ["prob"] * trans_p[prev_st] [st]
+                if tr_prob > max_tr_prob:
+                    max_tr_prob = tr_prob
+                    prev_st_selected = prev_st
+
+            max_prob = max_tr_prob * emit_p[st] [obs[t]]
+            V[t] [st] = {"prob": max_prob, "prev": prev_st_selected}
+
+    for line in dptable(V):
+        print(line)
+
+    opt = []
+    max_prob = 0.0
+    best_st = None
+    # Get most probable state and its backtrack
+    for st, data in V[-1].items():
+        if data["prob"] > max_prob:
+            max_prob = data["prob"]
+            best_st = st
+    opt.append(best_st)
+    previous = best_st
+
+    # Follow the backtrack till the first observation
+    for t in range(len(V) - 2, -1, -1):
+        opt.insert(0, V[t + 1] [previous] ["prev"])
+        previous = V[t + 1] [previous] ["prev"]
+
+    print ("The steps of states are " + " ".join(opt) + " with highest probability of %s" % max_prob)
+
+def dptable(V):
+    # Print a table of steps from dictionary
+    yield " " * 5 + "     ".join(("%3d" % i) for i in range(len(V)))
+    for state in V[0]:
+        yield "%.7s: " % state + " ".join("%.7s" % ("%lf" % v[state] ["prob"]) for v in V)
+
+%https://en.wikipedia.org/wiki/Viterbi_algorithm
\ No newline at end of file
diff --git a/parmorceauxMax-git/text.txt b/parmorceauxMax-git/text.txt
new file mode 100644
index 0000000000000000000000000000000000000000..34171617c7eee16cbefe4f25439bd21a6beb587f
--- /dev/null
+++ b/parmorceauxMax-git/text.txt
@@ -0,0 +1,2 @@
+[1, 2, 3, 2, 3, 7]
+[2, 8, 7, 6, 4, 9]
\ No newline at end of file
diff --git a/parmorceauxMax-git/training.mat b/parmorceauxMax-git/training.mat
new file mode 100644
index 0000000000000000000000000000000000000000..78f570ce1b8b0f7e01c4a4071fa3894cab88a293
Binary files /dev/null and b/parmorceauxMax-git/training.mat differ
diff --git a/parmorceauxMax-git/untilted.txt b/parmorceauxMax-git/untilted.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/parmorceauxMax-git/urgent.m b/parmorceauxMax-git/urgent.m
new file mode 100644
index 0000000000000000000000000000000000000000..cf7ee475be253599d7579ea2e5d4705e8f3ebbb1
--- /dev/null
+++ b/parmorceauxMax-git/urgent.m
@@ -0,0 +1,4 @@
+liste = dir(['HTN*.txt']);
+for i=1:length(liste)
+    filename=strcat(liste(i).name)
+end
\ No newline at end of file