From 4bfb797d92d08ccb8bdafae3908b340bdbe36175 Mon Sep 17 00:00:00 2001
From: Mohcine Chraibi <m.chraibi@fz-juelich.de>
Date: Sat, 30 Dec 2017 11:39:07 +0100
Subject: [PATCH] Optimize includes + jpsfire fix

---
 CMakeLists.txt                                |  6 +++++
 IO/GeoFileParser.cpp                          |  1 -
 IO/IODispatcher.cpp                           |  2 --
 IO/OutputHandler.cpp                          |  3 ---
 IO/TraVisToClient.cpp                         |  3 ---
 .../C_toxicity_analysis/ToxicityAnalysis.cpp  |  5 -----
 JPSfire/generic/FDSMesh.cpp                   | 22 ++++++++++---------
 JPSfire/generic/FDSMeshStorage.cpp            |  9 +++-----
 Simulation.cpp                                |  3 ---
 Utest/JPSRunTest.py                           |  6 ++---
 Utest/Validation/1test_1D/fd.py               |  5 +++--
 Utest/Validation/1test_1D/run_validation_1.py |  3 ++-
 Utest/Validation/2test_2D/plot_fd.py          |  2 +-
 Utest/Validation/2test_2D/run_validation_2.py |  3 ++-
 Utest/Validation/3test_UO/run_validation_3.py |  3 ++-
 Utest/Validation/4test_EO/run_validation_4.py |  3 ++-
 Utest/Validation/6test_KO/run_validation_6.py |  3 ++-
 Utest/Validation/7test_BO/run_validation_7.py |  3 ++-
 Utest/Validation/test_13/run_validation_13.py | 17 +++++++++-----
 .../test_10/runtest_juelich_10.py             | 16 ++++++++------
 Utest/juelich_tests/test_11/a_runtest.py      | 14 ++++++------
 Utest/juelich_tests/test_11/b_runtest.py      | 14 ++++++------
 .../test_11/runtest_juelich_11.py             | 13 +++++------
 .../test_15/runtest_juelich_15.py             |  3 ---
 .../juelich_tests/test_9/runtest_juelich_9.py |  5 +++--
 Utest/makeini.py                              | 15 ++++++++-----
 Utest/rimea_tests/reportscript.py             |  9 ++++----
 Utest/rimea_tests/test_11/runtest_rimea_11.py |  3 ++-
 Utest/rimea_tests/test_13/runtest_rimea_13.py |  3 ++-
 Utest/rimea_tests/test_14/runtest_rimea_14.py |  2 +-
 Utest/rimea_tests/test_15/runtest_rimea_15.py |  2 +-
 Utest/rimea_tests/test_4/runtest_rimea_4.py   |  3 ++-
 Utest/rimea_tests/test_5/runtest_rimea_5.py   |  3 ++-
 Utest/rimea_tests/test_6/runtest_rimea_6.py   |  3 ++-
 Utest/rimea_tests/test_7/gauss.py             |  2 +-
 Utest/rimea_tests/test_7/runtest_rimea_7.py   |  5 +++--
 Utest/rimea_tests/test_9/runtest_rimea_9.py   |  2 +-
 Utest/template_test/script.py                 | 15 ++++++-------
 Utest/utils.py                                |  3 ++-
 events/EventManager.cpp                       |  9 --------
 general/ArgumentParser.cpp                    |  4 ----
 geometry/Building.cpp                         |  5 -----
 geometry/Building.h                           | 14 ++++++------
 geometry/Crossing.cpp                         |  1 -
 geometry/Line.cpp                             |  4 ----
 geometry/Obstacle.cpp                         |  6 -----
 geometry/Point.cpp                            |  8 -------
 geometry/Room.cpp                             |  4 ----
 geometry/SubRoom.cpp                          |  4 ----
 geometry/Transition.cpp                       |  2 --
 main.cpp                                      |  3 ---
 math/ForceModel.cpp                           |  3 ---
 math/GCFMModel.cpp                            |  2 --
 math/GompertzModel.cpp                        |  1 -
 math/GradientModel.cpp                        |  1 -
 math/KrauszModel.cpp                          |  2 --
 mpi/LCGrid.cpp                                |  1 -
 pedestrian/AgentsSource.cpp                   |  4 ----
 pedestrian/AgentsSourcesManager.cpp           |  7 ------
 pedestrian/Ellipse.cpp                        |  1 -
 pedestrian/PedDistributor.cpp                 | 12 ----------
 pedestrian/Pedestrian.cpp                     |  8 -------
 pedestrian/StartDistribution.cpp              |  6 -----
 routing/DirectionStrategy.cpp                 |  2 --
 routing/Router.cpp                            |  1 -
 routing/ai_router/AIRouter.cpp                |  7 ------
 routing/ai_router/BrainStorage.cpp            |  3 ---
 routing/ai_router/GraphNetwork.cpp            |  4 ----
 routing/ai_router/NavigationGraph.cpp         |  5 -----
 .../ai_router/cognitiveMap/cognitivemap.cpp   |  5 -----
 routing/ai_router/cognitiveMap/connection.cpp |  1 -
 .../cognitiveMap/internnavigationnetwork.cpp  |  4 ----
 routing/ai_router/cognitiveMap/landmark.cpp   |  2 --
 .../cognitiveMap/youareherepointer.cpp        |  2 --
 .../ai_router/navigation_graph/GraphEdge.cpp  |  2 --
 .../navigation_graph/GraphVertex.cpp          |  8 -------
 .../perception/visibleenvironment.cpp         |  1 -
 .../ai_router/sensor/DiscoverDoorsSensor.cpp  |  1 -
 routing/ai_router/sensor/JamSensor.cpp        |  3 +--
 routing/ai_router/sensor/SensorManager.cpp    |  4 +---
 routing/ff_router/FloorfieldViaFM.cpp         |  1 -
 routing/ff_router/UnivFFviaFM.cpp             |  1 -
 routing/ff_router/ffRouter.cpp                |  4 ----
 scripts/cdf.py                                |  4 +---
 scripts/plot_neighbors.py                     |  4 ----
 scripts/vizUnity_geometry.py                  |  5 ++---
 scripts/xml2txt.py                            |  3 ++-
 voronoi-boost/VoronoiPositionGenerator.cpp    |  1 -
 88 files changed, 136 insertions(+), 291 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 989a1723..58a3b728 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,6 +36,12 @@ endif ()
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${warnings}")
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${warnings}")
 
+# TODO clean up. no flags.
+#set(CMAKE_CXX_STANDARD 11)
+#set(CMAKE_CXX_STANDARD_REQUIRED ON)
+#set(CMAKE_CXX_EXTENSIONS OFF)
+
+
 if (NOT BUILD_TESTING)
     set(BUILD_TESTING OFF) # test units & python tests are not generated.
 endif (NOT BUILD_TESTING)
diff --git a/IO/GeoFileParser.cpp b/IO/GeoFileParser.cpp
index 029b146f..6d7350a5 100644
--- a/IO/GeoFileParser.cpp
+++ b/IO/GeoFileParser.cpp
@@ -21,7 +21,6 @@
 
 #include "GeoFileParser.h"
 #include "../tinyxml/tinyxml.h"
-#include "../geometry/Goal.h"
 #include "../geometry/SubRoom.h"
 
 GeoFileParser::GeoFileParser(Configuration* configuration)
diff --git a/IO/IODispatcher.cpp b/IO/IODispatcher.cpp
index c2fe2957..a8208d22 100644
--- a/IO/IODispatcher.cpp
+++ b/IO/IODispatcher.cpp
@@ -33,8 +33,6 @@
 #include "../mpi/LCGrid.h"
 
 #define _USE_MATH_DEFINES
-#include <math.h>
-
 
 using namespace std;
 
diff --git a/IO/OutputHandler.cpp b/IO/OutputHandler.cpp
index d476decb..923cf30d 100644
--- a/IO/OutputHandler.cpp
+++ b/IO/OutputHandler.cpp
@@ -28,9 +28,6 @@
 
 #include "OutputHandler.h"
 
-#include <stdio.h>
-#include <stdarg.h>
-#include <cstdlib>
 #include <cmath>
 
 using namespace std;
diff --git a/IO/TraVisToClient.cpp b/IO/TraVisToClient.cpp
index 2ebfb7dd..cceb025d 100644
--- a/IO/TraVisToClient.cpp
+++ b/IO/TraVisToClient.cpp
@@ -29,9 +29,6 @@
 /********* include files ******************************************************/
 
 #include <iostream>
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
 #include "TraVisToClient.h"
 #include "../general/Macros.h"
 
diff --git a/JPSfire/C_toxicity_analysis/ToxicityAnalysis.cpp b/JPSfire/C_toxicity_analysis/ToxicityAnalysis.cpp
index 2579e096..92779c79 100644
--- a/JPSfire/C_toxicity_analysis/ToxicityAnalysis.cpp
+++ b/JPSfire/C_toxicity_analysis/ToxicityAnalysis.cpp
@@ -30,12 +30,7 @@
 #include "../../pedestrian/Pedestrian.h"
 #include "../generic/FDSMesh.h"
 #include "../generic/FDSMeshStorage.h"
-#include "../../pedestrian/PedDistributor.h"
 #include "../../tinyxml/tinyxml.h"
-#include <set>
-#include <algorithm>
-#include <math.h>
-#include "../../IO/OutputHandler.h"
 #include <boost/filesystem.hpp>
 using namespace boost::filesystem;
 
diff --git a/JPSfire/generic/FDSMesh.cpp b/JPSfire/generic/FDSMesh.cpp
index 99f692af..633924e1 100644
--- a/JPSfire/generic/FDSMesh.cpp
+++ b/JPSfire/generic/FDSMesh.cpp
@@ -1,9 +1,5 @@
 #include "FDSMesh.h"
 #include <cmath>
-#include <string>
-#include <fstream>
-#include <iostream>
-#include <sstream>
 
 std::vector<std::string> &split2(const std::string &s, char delim, std::vector<std::string> &elems) {
     std::stringstream ss(s);
@@ -163,17 +159,23 @@ void FDSMesh::ReadMatrix(std::string line, std::ifstream &pFile)
     while (std::getline(pFile, line)) {
         n = 0;
         strVec = split2(line, ',', strVec);
-        for (auto &elem : strVec)
-        {
+        for (auto &elem : strVec) {
             //std::cout << elem << " col " << n  << " line " << m << std::endl;
-            if (elem=="nan" || elem=="NAN" || elem=="NaN" || elem=="-inf" || elem=="inf")
-            {
+            if (elem=="nan" || elem=="NAN" || elem=="NaN" || elem=="-inf" || elem=="inf") {
                 _matrix[m][n].SetValue(1.0);
                 //Log->Write("ERROR: Mesh values consist of nan!");
                 //exit(EXIT_FAILURE);
             }
-            else
-                _matrix[m][n].SetValue(std::stod(elem));
+            else {
+                double temp = 0;
+                try {
+                    temp = std::stod(elem);
+                }
+                catch (...) {
+                    std::cout << "can not convert " << elem << std::endl;
+                }
+            _matrix[m][n].SetValue(temp);
+            }
             ++n;
         }
         strVec.clear();
diff --git a/JPSfire/generic/FDSMeshStorage.cpp b/JPSfire/generic/FDSMeshStorage.cpp
index aaff1754..a087c8f7 100644
--- a/JPSfire/generic/FDSMeshStorage.cpp
+++ b/JPSfire/generic/FDSMeshStorage.cpp
@@ -27,11 +27,8 @@
  *
  **/
 #include "FDSMeshStorage.h"
-#include "../../IO/OutputHandler.h"
 //#include <unistd.h>
-#include <stdio.h>
 //#include <glob.h>
-#include <string>
 #include <boost/filesystem.hpp>
 
 namespace fs=boost::filesystem;
@@ -161,7 +158,7 @@ void FDSMeshStorage::CreateTimeList()
 {
     /// Create time list for mesh refreshment
     _timelist.clear();
-    double i=0;
+    double i=0;    
     while (i<=_finalTime)
     {
         _timelist.push_back(i);
@@ -174,12 +171,12 @@ void FDSMeshStorage::CreateTimeList()
         if (_doorlist.size() > 0) {     // Smoke sensor active
         check_str = _filepath + _quantitylist[0] + "/" +
                 _doorlist[0] + "/t_" + std::to_string(elem) + ".csv";
-//        std::cout << "1: " << check_str << std::endl;
+        std::cout << "1: " << check_str << std::endl;
         }
         else if (_doorlist.size() == 0) {   // Smoke sensor not active
             check_str = _filepath + _quantitylist[0] + "/Z_" +
                     std::to_string(_elevationlist[0]) + "/t_" + std::to_string(elem) + ".csv";
-//                    std::cout << "2: "  << check_str << std::endl;
+                    std::cout << "2: "  << check_str << std::endl;
         }
 
         if (fs::exists(check_str) == false )
diff --git a/Simulation.cpp b/Simulation.cpp
index 04e1b223..89c96ed2 100644
--- a/Simulation.cpp
+++ b/Simulation.cpp
@@ -35,12 +35,9 @@
 #include "math/GompertzModel.h"
 #include "math/GradientModel.h"
 #include "pedestrian/AgentsQueue.h"
-#include "pedestrian/AgentsSourcesManager.h"
 
 #ifdef _OPENMP
 
-#include <omp.h>
-
 #else
 #define omp_get_thread_num() 0
 #define omp_get_max_threads()  1
diff --git a/Utest/JPSRunTest.py b/Utest/JPSRunTest.py
index 8335e959..977fee78 100644
--- a/Utest/JPSRunTest.py
+++ b/Utest/JPSRunTest.py
@@ -7,12 +7,12 @@ See template_test/How_to_make_new_test.txt
 import fnmatch
 import glob
 import logging
-from os import path
+import numpy as np
 import os
-from stat import S_ISREG, ST_MODE, ST_MTIME
 import subprocess
 import sys
-import numpy as np
+from os import path
+from stat import S_ISREG, ST_MODE, ST_MTIME
 
 __author__ = 'Oliver Schmidts'
 __email__ = 'dev@jupedsim.org'
diff --git a/Utest/Validation/1test_1D/fd.py b/Utest/Validation/1test_1D/fd.py
index e0e22d75..df18e1be 100644
--- a/Utest/Validation/1test_1D/fd.py
+++ b/Utest/Validation/1test_1D/fd.py
@@ -2,11 +2,12 @@
 measure the fundamental diagram in a 1d scenario.
 return density, velocity
 """
+import glob
 import numpy as np
 import os
-import glob
-from sys import *
 import sys
+from sys import *
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 path.append(utestdir)
 from utils import *
diff --git a/Utest/Validation/1test_1D/run_validation_1.py b/Utest/Validation/1test_1D/run_validation_1.py
index 863bfc41..4f9dbc32 100644
--- a/Utest/Validation/1test_1D/run_validation_1.py
+++ b/Utest/Validation/1test_1D/run_validation_1.py
@@ -22,9 +22,10 @@ Source
 
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/2test_2D/plot_fd.py b/Utest/Validation/2test_2D/plot_fd.py
index 2800498a..5ac06b78 100644
--- a/Utest/Validation/2test_2D/plot_fd.py
+++ b/Utest/Validation/2test_2D/plot_fd.py
@@ -2,9 +2,9 @@
 plot fundamental diagram produced by runtest
 just to check the results without reruning the test 
 """
+import glob
 import matplotlib.pyplot as plt
 import numpy as np
-import glob
 
 simfiles = glob.glob("Output/Fundamental_Diagram/Individual_FD/*.dat")
 expfiles = glob.glob("data/*.txt")
diff --git a/Utest/Validation/2test_2D/run_validation_2.py b/Utest/Validation/2test_2D/run_validation_2.py
index 9a5eadde..1b00be07 100644
--- a/Utest/Validation/2test_2D/run_validation_2.py
+++ b/Utest/Validation/2test_2D/run_validation_2.py
@@ -16,9 +16,10 @@ Source
 
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/3test_UO/run_validation_3.py b/Utest/Validation/3test_UO/run_validation_3.py
index 091d5889..bc59f267 100644
--- a/Utest/Validation/3test_UO/run_validation_3.py
+++ b/Utest/Validation/3test_UO/run_validation_3.py
@@ -17,9 +17,10 @@ Source
 
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/4test_EO/run_validation_4.py b/Utest/Validation/4test_EO/run_validation_4.py
index 9adff288..ee6b7457 100644
--- a/Utest/Validation/4test_EO/run_validation_4.py
+++ b/Utest/Validation/4test_EO/run_validation_4.py
@@ -17,9 +17,10 @@ Source
 
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/6test_KO/run_validation_6.py b/Utest/Validation/6test_KO/run_validation_6.py
index 9c9e24d2..fe9d7fae 100644
--- a/Utest/Validation/6test_KO/run_validation_6.py
+++ b/Utest/Validation/6test_KO/run_validation_6.py
@@ -18,9 +18,10 @@ Source
 Table 4.4 Jun Zhang Diss.
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/7test_BO/run_validation_7.py b/Utest/Validation/7test_BO/run_validation_7.py
index 4b70691c..a03f07e0 100644
--- a/Utest/Validation/7test_BO/run_validation_7.py
+++ b/Utest/Validation/7test_BO/run_validation_7.py
@@ -18,9 +18,10 @@ Source
 
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/Validation/test_13/run_validation_13.py b/Utest/Validation/test_13/run_validation_13.py
index f03853ec..dbeaf00e 100755
--- a/Utest/Validation/test_13/run_validation_13.py
+++ b/Utest/Validation/test_13/run_validation_13.py
@@ -1,11 +1,16 @@
 #!/usr/bin/env python3
+import glob
+import logging
+import matplotlib.pyplot as plt
+import multiprocessing
 import numpy as np
-import os, logging, time, sys
-from sys import argv, exit
-import subprocess, glob
+import os
+import subprocess
+import sys
+import time
 from os import path
-import multiprocessing 
-import matplotlib.pyplot as plt
+from sys import argv, exit
+
 
 def get_empirical_flow():
     files = glob.glob("experiments/*.txt")
@@ -79,7 +84,7 @@ if __name__ == "__main__":
     #    lib_path = os.path.abspath(lib_path)
     sys.path.append(lib_path)
     from utils import SUCCESS, FAILURE
-    from utils import parse_file, flow, rolling_flow
+    from utils import parse_file, rolling_flow
     # from utils import get_maxtime
     os.chdir("..")
     TRUNK = os.getcwd()
diff --git a/Utest/juelich_tests/test_10/runtest_juelich_10.py b/Utest/juelich_tests/test_10/runtest_juelich_10.py
index 7ff08fcf..9e571c20 100755
--- a/Utest/juelich_tests/test_10/runtest_juelich_10.py
+++ b/Utest/juelich_tests/test_10/runtest_juelich_10.py
@@ -2,14 +2,16 @@
 
 # todo: spaghetti code. directory mess
 
-import numpy as np
-from xml.dom import minidom
-import os, argparse, logging, time
-from os import path, system
-from sys import argv ,exit
-import subprocess, glob, sys
-import multiprocessing
+import glob
+import logging
 import matplotlib.pyplot as plt
+import numpy as np
+import os
+import subprocess
+import sys
+import time
+from os import path
+from sys import argv, exit
 
 #=========================
 testnr = 10
diff --git a/Utest/juelich_tests/test_11/a_runtest.py b/Utest/juelich_tests/test_11/a_runtest.py
index 7bcb4345..f391d353 100644
--- a/Utest/juelich_tests/test_11/a_runtest.py
+++ b/Utest/juelich_tests/test_11/a_runtest.py
@@ -1,13 +1,13 @@
 #! /usr/bin/env python
+import glob
+import logging
 import numpy as np
+import os
+import subprocess
+import sys
+from os import path
+from sys import argv, exit
 from xml.dom import minidom
-import os, argparse, logging, time
-from os import path, system
-from sys import argv ,exit
-import subprocess, glob
-import multiprocessing
-import matplotlib.pyplot as plt
-import re, sys
 
 #=========================
 testnr = 11
diff --git a/Utest/juelich_tests/test_11/b_runtest.py b/Utest/juelich_tests/test_11/b_runtest.py
index ac20f7b2..d98c9391 100644
--- a/Utest/juelich_tests/test_11/b_runtest.py
+++ b/Utest/juelich_tests/test_11/b_runtest.py
@@ -1,13 +1,13 @@
 #! /usr/bin/env python
+import glob
+import logging
 import numpy as np
+import os
+import subprocess
+import sys
+from os import path
+from sys import argv, exit
 from xml.dom import minidom
-import os, argparse, logging, time
-from os import path, system
-from sys import argv ,exit
-import subprocess, glob
-import multiprocessing
-import matplotlib.pyplot as plt
-import re, sys
 
 #=========================
 testnr = 11
diff --git a/Utest/juelich_tests/test_11/runtest_juelich_11.py b/Utest/juelich_tests/test_11/runtest_juelich_11.py
index b507650c..f5a50e2d 100755
--- a/Utest/juelich_tests/test_11/runtest_juelich_11.py
+++ b/Utest/juelich_tests/test_11/runtest_juelich_11.py
@@ -1,13 +1,10 @@
 #! /usr/bin/env python
+import logging
 import numpy as np
-from xml.dom import minidom
-import os, argparse, logging, time
-from os import path, system
-from sys import argv ,exit
-import subprocess, glob
-import multiprocessing
-import matplotlib.pyplot as plt
-import re
+import os
+import subprocess
+from os import path
+from sys import argv, exit
 
 #=========================
 testnr = 11
diff --git a/Utest/juelich_tests/test_15/runtest_juelich_15.py b/Utest/juelich_tests/test_15/runtest_juelich_15.py
index 2dcde08b..8a4a51a1 100755
--- a/Utest/juelich_tests/test_15/runtest_juelich_15.py
+++ b/Utest/juelich_tests/test_15/runtest_juelich_15.py
@@ -22,9 +22,6 @@ import os
 import sys
 from sys import *
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
-import scipy
-import scipy.stats
-import matplotlib.pyplot as plt
 sys.path.append(utestdir)
 from JPSRunTest import JPSRunTestDriver
 from utils import *
diff --git a/Utest/juelich_tests/test_9/runtest_juelich_9.py b/Utest/juelich_tests/test_9/runtest_juelich_9.py
index bdfbc3ca..f3a9afb9 100644
--- a/Utest/juelich_tests/test_9/runtest_juelich_9.py
+++ b/Utest/juelich_tests/test_9/runtest_juelich_9.py
@@ -16,10 +16,11 @@ Source
 
 """
 
-import os
-import sys
 import matplotlib.pyplot as plt
 import numpy as np
+import os
+import sys
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/makeini.py b/Utest/makeini.py
index 3b92baab..52cd9a44 100644
--- a/Utest/makeini.py
+++ b/Utest/makeini.py
@@ -1,11 +1,16 @@
 
 # help: python3 makeini.py -h
-import os, sys, glob
-from shutil import copy2, rmtree, move
-import logging, types, argparse
-import errno, time
-from numpy import *
+import argparse
+import errno
+import glob
+import logging
+import os
+import sys
+import time
 from itertools import product
+from numpy import *
+from shutil import copy2, rmtree, move
+
 try:
     import xml.etree.cElementTree as ET
 except ImportError:
diff --git a/Utest/rimea_tests/reportscript.py b/Utest/rimea_tests/reportscript.py
index 8a134195..0c7821ba 100644
--- a/Utest/rimea_tests/reportscript.py
+++ b/Utest/rimea_tests/reportscript.py
@@ -1,9 +1,8 @@
-import re, subprocess
+import re
+import subprocess
 from pylatex import Document, Command, PageStyle, Head, MiniPage, LargeText, LineBreak, \
-		MediumText, LongTabu, NewPage, Package, Section,  Description, NoEscape, Subsection, Figure, Center
-from pylatex.utils import NoEscape, bold, verbatim
-from pylatex.base_classes import Environment
-
+    MediumText, LongTabu, NewPage, Package, Section, Description, Figure
+from pylatex.utils import NoEscape, bold
 
 
 def get_evac_time(testnumber):
diff --git a/Utest/rimea_tests/test_11/runtest_rimea_11.py b/Utest/rimea_tests/test_11/runtest_rimea_11.py
index f42eb5ec..d75b637a 100644
--- a/Utest/rimea_tests/test_11/runtest_rimea_11.py
+++ b/Utest/rimea_tests/test_11/runtest_rimea_11.py
@@ -16,9 +16,10 @@ Source
 http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E.pdf
 """
 
+import glob
 import os
 import sys
-import glob
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_13/runtest_rimea_13.py b/Utest/rimea_tests/test_13/runtest_rimea_13.py
index 7389caff..a3bbd249 100644
--- a/Utest/rimea_tests/test_13/runtest_rimea_13.py
+++ b/Utest/rimea_tests/test_13/runtest_rimea_13.py
@@ -35,9 +35,10 @@ Source
 http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E.pdf
 """
 
+import matplotlib.pyplot as plt
 import os
 import sys
-import matplotlib.pyplot as plt
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_14/runtest_rimea_14.py b/Utest/rimea_tests/test_14/runtest_rimea_14.py
index 3b9195e4..fa298793 100644
--- a/Utest/rimea_tests/test_14/runtest_rimea_14.py
+++ b/Utest/rimea_tests/test_14/runtest_rimea_14.py
@@ -23,7 +23,7 @@ http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E
 import numpy as np
 import os
 import sys
-import glob
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_15/runtest_rimea_15.py b/Utest/rimea_tests/test_15/runtest_rimea_15.py
index 91169950..be524e05 100644
--- a/Utest/rimea_tests/test_15/runtest_rimea_15.py
+++ b/Utest/rimea_tests/test_15/runtest_rimea_15.py
@@ -25,7 +25,7 @@ http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E
 import numpy as np
 import os
 import sys
-import glob
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_4/runtest_rimea_4.py b/Utest/rimea_tests/test_4/runtest_rimea_4.py
index 4fa49dc9..ff0b6f2a 100644
--- a/Utest/rimea_tests/test_4/runtest_rimea_4.py
+++ b/Utest/rimea_tests/test_4/runtest_rimea_4.py
@@ -41,8 +41,9 @@ http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E
 """
 
 
-import numpy as np
 import matplotlib
+import numpy as np
+
 matplotlib.use('Agg')
 import matplotlib.pyplot as plt
 import os
diff --git a/Utest/rimea_tests/test_5/runtest_rimea_5.py b/Utest/rimea_tests/test_5/runtest_rimea_5.py
index 90c6f3c5..bfe3ce7a 100644
--- a/Utest/rimea_tests/test_5/runtest_rimea_5.py
+++ b/Utest/rimea_tests/test_5/runtest_rimea_5.py
@@ -24,9 +24,10 @@ Source
 http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E.pdf
 """
 
+import numpy as np
 import os
 import sys
-import numpy as np
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_6/runtest_rimea_6.py b/Utest/rimea_tests/test_6/runtest_rimea_6.py
index b9254db6..b46b789d 100644
--- a/Utest/rimea_tests/test_6/runtest_rimea_6.py
+++ b/Utest/rimea_tests/test_6/runtest_rimea_6.py
@@ -17,9 +17,10 @@ Source
 http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E.pdf
 """
 
+import numpy as np
 import os
 import sys
-import numpy as np
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_7/gauss.py b/Utest/rimea_tests/test_7/gauss.py
index a6f48183..12363595 100644
--- a/Utest/rimea_tests/test_7/gauss.py
+++ b/Utest/rimea_tests/test_7/gauss.py
@@ -1,6 +1,6 @@
+import matplotlib.mlab as mlab
 import matplotlib.pyplot as plt
 import numpy as np
-import matplotlib.mlab as mlab
 
 weidman_max_vel = np.array([1.61, 1.54, 1.41, 0.76])
 weidman_min_vel = np.array([0.58, 1.41, 0.68, 0.46])
diff --git a/Utest/rimea_tests/test_7/runtest_rimea_7.py b/Utest/rimea_tests/test_7/runtest_rimea_7.py
index 869b634f..f383151a 100644
--- a/Utest/rimea_tests/test_7/runtest_rimea_7.py
+++ b/Utest/rimea_tests/test_7/runtest_rimea_7.py
@@ -36,10 +36,11 @@ Source
 http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E.pdf
 """
 
-import os
-import sys
 import numpy as np
+import os
 import pylab as P
+import sys
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 from sys import *
 sys.path.append(utestdir)
diff --git a/Utest/rimea_tests/test_9/runtest_rimea_9.py b/Utest/rimea_tests/test_9/runtest_rimea_9.py
index 675fad39..23e7d669 100644
--- a/Utest/rimea_tests/test_9/runtest_rimea_9.py
+++ b/Utest/rimea_tests/test_9/runtest_rimea_9.py
@@ -30,7 +30,7 @@ http://www.rimea.de/fileadmin/files/dok/richtlinien/RiMEA_Richtlinie_3.0.0_-_D-E
 import os
 import sys
 from sys import *
-import glob
+
 utestdir = os.path.abspath(os.path.dirname(os.path.dirname(sys.path[0])))
 sys.path.append(utestdir)
 from JPSRunTest import JPSRunTestDriver
diff --git a/Utest/template_test/script.py b/Utest/template_test/script.py
index 782897f1..55a11a93 100755
--- a/Utest/template_test/script.py
+++ b/Utest/template_test/script.py
@@ -1,12 +1,11 @@
 #! /usr/bin/env python
-import numpy as np
-import os, argparse, logging, time, sys
-from os import path, system
-from sys import argv ,exit
-import subprocess, glob
-import multiprocessing
-import matplotlib.pyplot as plt
-import re
+import glob
+import logging
+import os
+import subprocess
+import sys
+from os import path
+from sys import argv, exit
 
 #=========================
 testnr = 1
diff --git a/Utest/utils.py b/Utest/utils.py
index 7860ec22..8a9a6654 100644
--- a/Utest/utils.py
+++ b/Utest/utils.py
@@ -1,7 +1,8 @@
-from xml.dom import minidom
 import logging
 import numpy as np
 import pandas as pd
+from xml.dom import minidom
+
 SUCCESS = 0
 FAILURE = -1
 critical_value = 0.9
diff --git a/events/EventManager.cpp b/events/EventManager.cpp
index 0009b9de..310f35cc 100644
--- a/events/EventManager.cpp
+++ b/events/EventManager.cpp
@@ -27,25 +27,16 @@
 
 
 #include <string>
-#include <cstdio>
 #include <cstdlib>
 #include <iostream>
-#include <algorithm>
 #include <fstream>
 #include <vector>
 #include <math.h>
-#include <stdio.h>
 #include "../pedestrian/Pedestrian.h"
 #include "../pedestrian/Knowledge.h"
 #include "../mpi/LCGrid.h"
-#include "../geometry/Building.h"
 #include "../geometry/SubRoom.h"
-#include "../geometry/Transition.h"
-#include "../geometry/Point.h"
 #include "../tinyxml/tinyxml.h"
-#include "../IO/OutputHandler.h"
-#include "../IO/IODispatcher.h"
-#include "../routing/RoutingEngine.h"
 #include "../routing/global_shortest/GlobalRouter.h"
 #include "../routing/quickest/QuickestPathRouter.h"
 #include "../routing/ai_router/AIRouter.h"
diff --git a/general/ArgumentParser.cpp b/general/ArgumentParser.cpp
index f2101090..d093eb5b 100644
--- a/general/ArgumentParser.cpp
+++ b/general/ArgumentParser.cpp
@@ -34,8 +34,6 @@
 
 #ifdef _OPENMP
 
-#include <omp.h>
-
 #else
 #define omp_get_thread_num() 0
 #define omp_get_max_threads()  1
@@ -43,13 +41,11 @@
 
 #include "../IO/OutputHandler.h"
 #include "ArgumentParser.h"
-#include "Macros.h"
 #include "../pedestrian/AgentsParameters.h"
 #include "../routing/global_shortest/GlobalRouter.h"
 #include "../routing/quickest/QuickestPathRouter.h"
 #include "../routing/ai_router/AIRouter.h"
 #include "../IO/IniFileParser.h"
-#include <sys/stat.h>
 
 using namespace std;
 
diff --git a/geometry/Building.cpp b/geometry/Building.cpp
index cc8448c2..3bce48dd 100644
--- a/geometry/Building.cpp
+++ b/geometry/Building.cpp
@@ -36,10 +36,7 @@
 #include "GeometryReader.h"
 #include "../pedestrian/Pedestrian.h"
 #include "../mpi/LCGrid.h"
-#include "../routing/RoutingEngine.h"
-#include "../pedestrian/PedDistributor.h"
 #include "../IO/GeoFileParser.h"
-#include "../hybrid/GeometryFromProtobufLoader.h"
 
 #endif
 
@@ -47,8 +44,6 @@
 
 #ifdef _OPENMP
 
-#include <omp.h>
-
 #else
 #define omp_get_thread_num()    0
 #define omp_get_max_threads()   1
diff --git a/geometry/Building.h b/geometry/Building.h
index 306381a0..52e217c9 100644
--- a/geometry/Building.h
+++ b/geometry/Building.h
@@ -29,13 +29,13 @@
 #ifndef _BUILDING_H
 #define _BUILDING_H
 
-#include <cstdlib>
-#include <string>
-#include <vector>
-#include <fstream>
-#include <cfloat>
-#include <map>
-#include <memory>
+// nclude <cstdlib>
+// #include <string>
+// #include <vector>
+// #include <fstream>
+// #include <cfloat>
+// #include <map>
+// #include <memory>
 
 #include "Room.h"
 #include "NavLine.h"
diff --git a/geometry/Crossing.cpp b/geometry/Crossing.cpp
index 00a3d85b..60161117 100644
--- a/geometry/Crossing.cpp
+++ b/geometry/Crossing.cpp
@@ -27,7 +27,6 @@
 
 
 #include "Crossing.h"
-#include "Room.h"
 #include "SubRoom.h"
 
 using namespace std;
diff --git a/geometry/Line.cpp b/geometry/Line.cpp
index 4e257b1b..33a93e98 100644
--- a/geometry/Line.cpp
+++ b/geometry/Line.cpp
@@ -31,10 +31,6 @@
 #include "../general/Macros.h"
 #include "Line.h"
 #include "Wall.h"
-#include "../IO/OutputHandler.h"
-
-#include  <cmath>
-#include  <sstream>
 
 int Line::_static_UID = 0;
 
diff --git a/geometry/Obstacle.cpp b/geometry/Obstacle.cpp
index 8dad5eaf..08ef27a7 100644
--- a/geometry/Obstacle.cpp
+++ b/geometry/Obstacle.cpp
@@ -28,16 +28,10 @@
 
 #include "Obstacle.h"
 
-#include <cmath>
-#include <cstdio>
 #include <cstdlib>
-#include <iterator>
-#include <string>
-#include <vector>
 
 #include "../IO/OutputHandler.h"
 #include "Line.h"
-#include "Point.h"
 #include "Wall.h"
 
 
diff --git a/geometry/Point.cpp b/geometry/Point.cpp
index dfe82699..c1b7bbdc 100644
--- a/geometry/Point.cpp
+++ b/geometry/Point.cpp
@@ -29,14 +29,6 @@
 #include "Point.h"
 #include "../general/Macros.h"
 
-#include  <iostream>
-#include  <cmath>
-#include  <sstream>
-
-
-
-
-
 /************************************************************
   Konstruktoren
  ************************************************************/
diff --git a/geometry/Room.cpp b/geometry/Room.cpp
index d9efd5d7..62a679c7 100644
--- a/geometry/Room.cpp
+++ b/geometry/Room.cpp
@@ -28,10 +28,6 @@
 
 #include "Room.h"
 #include "SubRoom.h"
-#include "../IO/OutputHandler.h"
-
-#include <sstream>
-#include <memory>
 
 using namespace std;
 
diff --git a/geometry/SubRoom.cpp b/geometry/SubRoom.cpp
index 7296664b..c5f45285 100644
--- a/geometry/SubRoom.cpp
+++ b/geometry/SubRoom.cpp
@@ -32,15 +32,11 @@
 #include "Obstacle.h"
 #include "SubRoom.h"
 #include "Transition.h"
-#include "Hline.h"
-
 
 #ifdef _SIMULATOR
 #include "../pedestrian/Pedestrian.h"
 #endif //_SIMULATOR
 
-#include <cmath>
-
 using namespace std;
 
 /************************************************************
diff --git a/geometry/Transition.cpp b/geometry/Transition.cpp
index 7e65bdb4..1ab6918e 100644
--- a/geometry/Transition.cpp
+++ b/geometry/Transition.cpp
@@ -27,9 +27,7 @@
 
 
 #include "Transition.h"
-#include "Room.h"
 #include "SubRoom.h"
-#include "../IO/OutputHandler.h"
 
 using namespace std;
 
diff --git a/main.cpp b/main.cpp
index aec52b51..a1cc927e 100644
--- a/main.cpp
+++ b/main.cpp
@@ -29,7 +29,6 @@
 #include "geometry/Building.h"
 #include "general/ArgumentParser.h"
 #include "./Simulation.h"
-#include "pedestrian/AgentsSourcesManager.h"
 
 #ifdef _JPS_AS_A_SERVICE
 
@@ -38,8 +37,6 @@
 #endif
 
 #include <thread>
-#include <functional>
-#include <iomanip>
 
 int main(int argc, char** argv)
 {
diff --git a/math/ForceModel.cpp b/math/ForceModel.cpp
index e6f42a9f..249223fe 100644
--- a/math/ForceModel.cpp
+++ b/math/ForceModel.cpp
@@ -27,13 +27,10 @@
 
 
 #include "ForceModel.h"
-#include "../routing/DirectionStrategy.h"
-#include "../mpi/LCGrid.h"
 #include "../pedestrian/Pedestrian.h"
 
 
 #ifdef _OPENMP
-#include <omp.h>
 #else
 #define omp_get_thread_num() 0
 #define omp_get_max_threads()  1
diff --git a/math/GCFMModel.cpp b/math/GCFMModel.cpp
index dd325b37..88d181d2 100644
--- a/math/GCFMModel.cpp
+++ b/math/GCFMModel.cpp
@@ -31,10 +31,8 @@
 
 #include "GCFMModel.h"
 #include "../pedestrian/Pedestrian.h"
-#include "../routing/DirectionStrategy.h"
 #include "../mpi/LCGrid.h"
 #include "../geometry/SubRoom.h"
-#include "../geometry/Wall.h"
 
 #ifdef _OPENMP
 #include <omp.h>
diff --git a/math/GompertzModel.cpp b/math/GompertzModel.cpp
index 6e1de1ac..7401fac6 100644
--- a/math/GompertzModel.cpp
+++ b/math/GompertzModel.cpp
@@ -30,7 +30,6 @@
 
 
 #include "../pedestrian/Pedestrian.h"
-#include "../routing/DirectionStrategy.h"
 #include "../mpi/LCGrid.h"
 #include "../geometry/Wall.h"
 #include "../geometry/SubRoom.h"
diff --git a/math/GradientModel.cpp b/math/GradientModel.cpp
index 84abdede..19a58e73 100644
--- a/math/GradientModel.cpp
+++ b/math/GradientModel.cpp
@@ -30,7 +30,6 @@
 
 #include <math.h>
 #include "../pedestrian/Pedestrian.h"
-#include "../routing/DirectionStrategy.h"
 #include "../mpi/LCGrid.h"
 #include "../geometry/Wall.h"
 #include "../geometry/SubRoom.h"
diff --git a/math/KrauszModel.cpp b/math/KrauszModel.cpp
index c40cd722..8b89367d 100644
--- a/math/KrauszModel.cpp
+++ b/math/KrauszModel.cpp
@@ -31,10 +31,8 @@
 
 #include "KrauszModel.h"
 #include "../pedestrian/Pedestrian.h"
-#include "../routing/DirectionStrategy.h"
 #include "../mpi/LCGrid.h"
 #include "../geometry/SubRoom.h"
-#include "../geometry/Wall.h"
 
 #ifdef _OPENMP
 #include <omp.h>
diff --git a/mpi/LCGrid.cpp b/mpi/LCGrid.cpp
index 12d99e15..5f0aa309 100644
--- a/mpi/LCGrid.cpp
+++ b/mpi/LCGrid.cpp
@@ -36,7 +36,6 @@
 
 #include"LCGrid.h"
 #include "../pedestrian/Pedestrian.h"
-#include "../geometry/Building.h"
 
 using namespace std;
 
diff --git a/pedestrian/AgentsSource.cpp b/pedestrian/AgentsSource.cpp
index 02de84c3..e37f6263 100644
--- a/pedestrian/AgentsSource.cpp
+++ b/pedestrian/AgentsSource.cpp
@@ -29,10 +29,6 @@
 
 #include "AgentsSource.h"
 #include "Pedestrian.h"
-#include "StartDistribution.h"
-#include "../IO/OutputHandler.h"
-
-#include <iostream>
 
 AgentsSource::AgentsSource(int id, const std::string& caption,int max_agents,int group_id,int frequency, bool greedy):
       _id(id), _frequency(frequency), _maxAgents(max_agents), _groupID(group_id), _caption(caption), _greedy(greedy)
diff --git a/pedestrian/AgentsSourcesManager.cpp b/pedestrian/AgentsSourcesManager.cpp
index edf3ad17..df54ad0e 100644
--- a/pedestrian/AgentsSourcesManager.cpp
+++ b/pedestrian/AgentsSourcesManager.cpp
@@ -29,16 +29,9 @@
 
 #include "AgentsSourcesManager.h"
 #include "Pedestrian.h"
-#include "StartDistribution.h"
-#include "PedDistributor.h"
-#include "AgentsSource.h"
-#include "../geometry/Building.h"
-#include "../geometry/Point.h"
 
 #include "../mpi/LCGrid.h"
-#include <iostream>
 #include <thread>
-#include <chrono>
 #include "AgentsQueue.h"
 
 #include "../voronoi-boost/VoronoiPositionGenerator.h"
diff --git a/pedestrian/Ellipse.cpp b/pedestrian/Ellipse.cpp
index aa952477..8543ca42 100644
--- a/pedestrian/Ellipse.cpp
+++ b/pedestrian/Ellipse.cpp
@@ -29,7 +29,6 @@
 #include "Ellipse.h"
 
 #define _USE_MATH_DEFINES
-#include <math.h>
 #ifndef M_PI
 #define M_PI            3.14159265358979323846
 #endif
diff --git a/pedestrian/PedDistributor.cpp b/pedestrian/PedDistributor.cpp
index f4b81b2e..f8aa7686 100644
--- a/pedestrian/PedDistributor.cpp
+++ b/pedestrian/PedDistributor.cpp
@@ -28,27 +28,15 @@
 
 #include <cmath>
 #include "PedDistributor.h"
-#include "../tinyxml/tinyxml.h"
-#include "../geometry/Obstacle.h"
-#include "../routing/RoutingEngine.h"
 #include "../pedestrian/Pedestrian.h"
 #include "../geometry/SubRoom.h"
-#include "../IO/OutputHandler.h"
 #include "../IO/PedDistributionParser.h"
-#include "PedDistributionLoader.h"
-#include "../hybrid/PedDistributionFromProtobufLoader.h"
 
 #include <boost/filesystem.hpp>
 #include <boost/lambda/bind.hpp>
 #include <boost/foreach.hpp>
-#include <boost/algorithm/string.hpp> //split
 #include <boost/range/combine.hpp>
 
-#include<fstream>
-#include <string>
-#include <vector>
-
-
 using namespace std;
 namespace fs = boost::filesystem;
 using namespace boost::lambda;
diff --git a/pedestrian/Pedestrian.cpp b/pedestrian/Pedestrian.cpp
index ebc4308b..f252ccd2 100644
--- a/pedestrian/Pedestrian.cpp
+++ b/pedestrian/Pedestrian.cpp
@@ -28,19 +28,11 @@
 
 #include <cassert>
 #include "../geometry/Building.h"
-#include "../geometry/NavLine.h"
-#include "../routing/Router.h"
 #include "../geometry/SubRoom.h"
-#include "../IO/OutputHandler.h"
 #include "Knowledge.h"
 #include "Pedestrian.h"
-#include "PedDistributor.h"
 
-#include "../JPSfire/generic/FDSMesh.h"
-#include "../JPSfire/generic/Knot.h"
 #include "../JPSfire/generic/FDSMeshStorage.h"
-#include "../JPSfire/B_walking_speed/WalkingSpeed.h"
-#include "../JPSfire/C_toxicity_analysis/ToxicityAnalysis.h"
 
 using namespace std;
 
diff --git a/pedestrian/StartDistribution.cpp b/pedestrian/StartDistribution.cpp
index f89e8697..1ef43955 100644
--- a/pedestrian/StartDistribution.cpp
+++ b/pedestrian/StartDistribution.cpp
@@ -27,15 +27,9 @@
 
 
 #include "StartDistribution.h"
-#include <cmath>
-#include <cfloat>
 #include "AgentsParameters.h"
 #include "Pedestrian.h"
-#include "../geometry/Building.h"
-#include "../geometry/Point.h"
-#include "../routing/RoutingEngine.h"
 #include "../geometry/SubRoom.h"
-#include "boost/math/distributions.hpp"
 
 using namespace std;
 
diff --git a/routing/DirectionStrategy.cpp b/routing/DirectionStrategy.cpp
index 9daedf9b..3a900b8f 100644
--- a/routing/DirectionStrategy.cpp
+++ b/routing/DirectionStrategy.cpp
@@ -35,11 +35,9 @@
 //#include "../geometry/Wall.h"
 #include "../routing/ff_router/UnivFFviaFM.h"
 #include "../routing/ff_router/FloorfieldViaFM.h"
-#include "../routing/ff_router/LocalFloorfieldViaFM.h"
 #include "../routing/ff_router/ffRouter.h"
 //#include "DirectionStrategy.h"
 //#include <fstream>
-#include <chrono>
 //#include <ctime>
 
 #define UNUSED(x) [&x]{}()  // c++11 silence warnings
diff --git a/routing/Router.cpp b/routing/Router.cpp
index 2aa1fef4..da533732 100644
--- a/routing/Router.cpp
+++ b/routing/Router.cpp
@@ -29,7 +29,6 @@
 #include "Router.h"
 #include "../geometry/Building.h"
 #include "../pedestrian/Pedestrian.h"
-#include "../IO/OutputHandler.h"
 
 using namespace std;
 
diff --git a/routing/ai_router/AIRouter.cpp b/routing/ai_router/AIRouter.cpp
index 176ea04f..01a443b8 100644
--- a/routing/ai_router/AIRouter.cpp
+++ b/routing/ai_router/AIRouter.cpp
@@ -27,17 +27,10 @@
 
 
 #include "AIRouter.h"
-#include "../Router.h"
 
 #include "BrainStorage.h"
-#include "./cognitiveMap/cognitivemap.h"
-#include "NavigationGraph.h"
 #include "./sensor/SensorManager.h"
 
-#include "../../geometry/SubRoom.h"
-#include "../../geometry/NavLine.h"
-#include "../../geometry/Building.h"
-
 #include "../../pedestrian/Pedestrian.h"
 #include "../../tinyxml/tinyxml.h"
 
diff --git a/routing/ai_router/BrainStorage.cpp b/routing/ai_router/BrainStorage.cpp
index 552700bb..b6af145c 100644
--- a/routing/ai_router/BrainStorage.cpp
+++ b/routing/ai_router/BrainStorage.cpp
@@ -28,12 +28,9 @@
 
 
 #include "BrainStorage.h"
-#include "cognitiveMap/internnavigationnetwork.h"
 
 #include "../../tinyxml/tinyxml.h"
-#include <memory>
 
-#include "../../geometry/Building.h"
 #include "../../pedestrian/Pedestrian.h"
 //#include "NavigationGraph.h"
 
diff --git a/routing/ai_router/GraphNetwork.cpp b/routing/ai_router/GraphNetwork.cpp
index fc91e6c8..f9626620 100644
--- a/routing/ai_router/GraphNetwork.cpp
+++ b/routing/ai_router/GraphNetwork.cpp
@@ -28,13 +28,9 @@
 
 
 #include "GraphNetwork.h"
-#include "NavigationGraph.h"
 
-#include "navigation_graph/GraphVertex.h"
-#include "navigation_graph/GraphEdge.h"
 #include "../../geometry/Crossing.h"
 #include "../../geometry/Building.h"
-#include "../../geometry/NavLine.h"
 #include "../../pedestrian/Pedestrian.h"
 
 
diff --git a/routing/ai_router/NavigationGraph.cpp b/routing/ai_router/NavigationGraph.cpp
index f9ab9b6c..82918006 100644
--- a/routing/ai_router/NavigationGraph.cpp
+++ b/routing/ai_router/NavigationGraph.cpp
@@ -29,11 +29,6 @@
 
 #include "NavigationGraph.h"
 
-#include <iostream>
-#include <utility>
-#include <fstream>
-
-#include "navigation_graph/GraphEdge.h"
 #include "../../geometry/Building.h"
 #include "../../geometry/SubRoom.h"
 
diff --git a/routing/ai_router/cognitiveMap/cognitivemap.cpp b/routing/ai_router/cognitiveMap/cognitivemap.cpp
index 6cc449de..a71101e1 100644
--- a/routing/ai_router/cognitiveMap/cognitivemap.cpp
+++ b/routing/ai_router/cognitiveMap/cognitivemap.cpp
@@ -1,12 +1,7 @@
 #include "cognitivemap.h"
-#include "../../../geometry/Point.h"
 #include "../../../geometry/SubRoom.h"
-#include "../../../geometry/Building.h"
 #include "../../../pedestrian/Pedestrian.h"
 #include "../../../visiLibity/source_code/visilibity.hpp"
-#include <chrono>
-#include <random>
-#include <algorithm>
 
 //for shortest path calculations
 //#include <boost/graph/graph_traits.hpp>
diff --git a/routing/ai_router/cognitiveMap/connection.cpp b/routing/ai_router/cognitiveMap/connection.cpp
index d118ff19..70b565f2 100644
--- a/routing/ai_router/cognitiveMap/connection.cpp
+++ b/routing/ai_router/cognitiveMap/connection.cpp
@@ -1,5 +1,4 @@
 #include "connection.h"
-#include <utility>
 
 Connection::Connection(const int &id, const std::string &caption, const std::string &type, const ptrLandmark &landmark1, const ptrLandmark &landmark2)
 {
diff --git a/routing/ai_router/cognitiveMap/internnavigationnetwork.cpp b/routing/ai_router/cognitiveMap/internnavigationnetwork.cpp
index 44a0a627..61ecf14d 100644
--- a/routing/ai_router/cognitiveMap/internnavigationnetwork.cpp
+++ b/routing/ai_router/cognitiveMap/internnavigationnetwork.cpp
@@ -1,9 +1,5 @@
 #include "internnavigationnetwork.h"
 
-#include <boost/graph/graph_traits.hpp>
-#include <boost/graph/adjacency_list.hpp>
-#include <boost/graph/dijkstra_shortest_paths.hpp>
-#include <boost/geometry.hpp>
 #include "../../../geometry/Obstacle.h"
 
 InternNavigationNetwork::InternNavigationNetwork()
diff --git a/routing/ai_router/cognitiveMap/landmark.cpp b/routing/ai_router/cognitiveMap/landmark.cpp
index 79652019..070b6781 100644
--- a/routing/ai_router/cognitiveMap/landmark.cpp
+++ b/routing/ai_router/cognitiveMap/landmark.cpp
@@ -1,7 +1,5 @@
 #include "landmark.h"
 #include "associations.h"
-#include <stdlib.h>
-#include <math.h>
 
 Landmark::Landmark(Point pos, ptrRoom room)
 {
diff --git a/routing/ai_router/cognitiveMap/youareherepointer.cpp b/routing/ai_router/cognitiveMap/youareherepointer.cpp
index 22ed29c7..18d34249 100644
--- a/routing/ai_router/cognitiveMap/youareherepointer.cpp
+++ b/routing/ai_router/cognitiveMap/youareherepointer.cpp
@@ -1,7 +1,5 @@
 #include "youareherepointer.h"
 #include "../../../pedestrian/Pedestrian.h"
-#include <cmath>
-#include <iostream>
 
 #ifndef M_PI
 #define M_PI 3.14159265358979323846
diff --git a/routing/ai_router/navigation_graph/GraphEdge.cpp b/routing/ai_router/navigation_graph/GraphEdge.cpp
index 88b6705f..263df27b 100644
--- a/routing/ai_router/navigation_graph/GraphEdge.cpp
+++ b/routing/ai_router/navigation_graph/GraphEdge.cpp
@@ -28,8 +28,6 @@
 
 #include "GraphEdge.h"
 
-#include<vector>
-
 #include "GraphVertex.h"
 #include "../../../geometry/SubRoom.h"
 #include "../../../geometry/Crossing.h"
diff --git a/routing/ai_router/navigation_graph/GraphVertex.cpp b/routing/ai_router/navigation_graph/GraphVertex.cpp
index c400759d..0e96b638 100644
--- a/routing/ai_router/navigation_graph/GraphVertex.cpp
+++ b/routing/ai_router/navigation_graph/GraphVertex.cpp
@@ -28,18 +28,10 @@
 
 #include "GraphVertex.h"
 
-#include <utility>
-#include <cmath>
-#include <set>
-#include <map>
-#include <queue>
-#include <functional>
-
 #include "GraphEdge.h"
 #include "../../../geometry/SubRoom.h"
 #include "../NavigationGraph.h"
 #include "../../../geometry/Transition.h"
-#include <algorithm>
 
 using namespace std;
 #define UNUSED(x) [&x]{}()  // c++11 silence warnings
diff --git a/routing/ai_router/perception/visibleenvironment.cpp b/routing/ai_router/perception/visibleenvironment.cpp
index c1563976..30bd8124 100644
--- a/routing/ai_router/perception/visibleenvironment.cpp
+++ b/routing/ai_router/perception/visibleenvironment.cpp
@@ -4,7 +4,6 @@
 #include "../../../pedestrian/Pedestrian.h"
 #include "../../../geometry/SubRoom.h"
 
-#include <boost/geometry/geometry.hpp>
 //#include <boost/foreach.hpp>
 #define UNUSED(x) [&x]{}()  // c++11 silence warnings
 
diff --git a/routing/ai_router/sensor/DiscoverDoorsSensor.cpp b/routing/ai_router/sensor/DiscoverDoorsSensor.cpp
index 96c53d9c..85b8b7e9 100644
--- a/routing/ai_router/sensor/DiscoverDoorsSensor.cpp
+++ b/routing/ai_router/sensor/DiscoverDoorsSensor.cpp
@@ -34,7 +34,6 @@
 #include "../cognitiveMap/cognitivemap.h"
 #include "../../../pedestrian/Pedestrian.h"
 #include "../../../geometry/SubRoom.h"
-#include <vector>
 
 DiscoverDoorsSensor::~DiscoverDoorsSensor()
 {
diff --git a/routing/ai_router/sensor/JamSensor.cpp b/routing/ai_router/sensor/JamSensor.cpp
index 2ada4312..e8e66f04 100644
--- a/routing/ai_router/sensor/JamSensor.cpp
+++ b/routing/ai_router/sensor/JamSensor.cpp
@@ -31,8 +31,7 @@
 #include "../cognitiveMap/cognitivemap.h"
 #include "../../../pedestrian/Pedestrian.h"
 #include "../../../geometry/SubRoom.h"
-#include <set>
-#include <vector>
+
 JamSensor::~JamSensor()
 {
 }
diff --git a/routing/ai_router/sensor/SensorManager.cpp b/routing/ai_router/sensor/SensorManager.cpp
index 05bdeb7e..6a796543 100644
--- a/routing/ai_router/sensor/SensorManager.cpp
+++ b/routing/ai_router/sensor/SensorManager.cpp
@@ -38,9 +38,7 @@
 
 #include "../../../geometry/Building.h"
 #include "../BrainStorage.h"
-#include "../navigation_graph/GraphVertex.h"
-#include "../NavigationGraph.h"
-#include "../cognitiveMap/cognitivemap.h"
+
 #define UNUSED(x) [&x]{}()  // c++11 silence warnings
 
 SensorManager::SensorManager(const Building * b, BrainStorage * cms)
diff --git a/routing/ff_router/FloorfieldViaFM.cpp b/routing/ff_router/FloorfieldViaFM.cpp
index cc4f3d3b..b25c1a52 100644
--- a/routing/ff_router/FloorfieldViaFM.cpp
+++ b/routing/ff_router/FloorfieldViaFM.cpp
@@ -36,7 +36,6 @@
 //#include <chrono>
 
 #ifdef _OPENMP
-#include <omp.h>
 #else
 #define omp_get_thread_num() 0
 #define omp_get_max_threads()  1
diff --git a/routing/ff_router/UnivFFviaFM.cpp b/routing/ff_router/UnivFFviaFM.cpp
index 2a86c419..4f248b1b 100644
--- a/routing/ff_router/UnivFFviaFM.cpp
+++ b/routing/ff_router/UnivFFviaFM.cpp
@@ -6,7 +6,6 @@
 #include "UnivFFviaFM.h"
 #include "../../geometry/Line.h"
 #include "../../geometry/Building.h"
-#include "../../geometry/Room.h"
 #include "../../geometry/SubRoom.h"
 #include "../../pedestrian/Pedestrian.h"
 #include "mesh/RectGrid.h"
diff --git a/routing/ff_router/ffRouter.cpp b/routing/ff_router/ffRouter.cpp
index 64cd6b1c..8b555c0e 100644
--- a/routing/ff_router/ffRouter.cpp
+++ b/routing/ff_router/ffRouter.cpp
@@ -50,10 +50,6 @@
 #include "ffRouter.h"
 //#include "FloorfieldViaFM.h"
 //#include "../../geometry/Building.h"
-#include "../../pedestrian/Pedestrian.h"
-#include "../../IO/OutputHandler.h"
-
-#include <chrono>
 
 int FFRouter::_cnt = 0;
 
diff --git a/scripts/cdf.py b/scripts/cdf.py
index 01f239ba..93836317 100644
--- a/scripts/cdf.py
+++ b/scripts/cdf.py
@@ -1,11 +1,9 @@
+import matplotlib.pyplot as plt
 import numpy as np
 import pandas as pd
-from scipy.optimize import curve_fit
-import matplotlib.pyplot as plt
 import sys
 from sys import exit
 
-
 fps = 8
 x0 = 61
 name = "times.txt"
diff --git a/scripts/plot_neighbors.py b/scripts/plot_neighbors.py
index 0bcff1c8..bd6e2b13 100644
--- a/scripts/plot_neighbors.py
+++ b/scripts/plot_neighbors.py
@@ -1,8 +1,6 @@
-from multiprocessing import Pool, current_process
 import numpy as np
 import matplotlib.pyplot as plt
 from sys import argv, exit
-import pandas as pd
 import os, time
 
 from pylab import Rectangle
@@ -11,8 +9,6 @@ if len(argv)<=2:
     print("usage: %s, filename geometryfile"%argv[0])
     exit()
 
-
-from itertools import product
 try:
     import xml.etree.cElementTree as ET
 except ImportError:
diff --git a/scripts/vizUnity_geometry.py b/scripts/vizUnity_geometry.py
index e9a78df6..c2f5b196 100644
--- a/scripts/vizUnity_geometry.py
+++ b/scripts/vizUnity_geometry.py
@@ -1,14 +1,13 @@
-from itertools import product
 try:
     import xml.etree.cElementTree as ET
 except ImportError:
     import xml.etree.ElementTree as ET
 
 
-from xml.dom import minidom    
 import logging
-import numpy as np    
+import numpy as np
 import sys
+from xml.dom import minidom
 
 logfile='log.dat'
 logging.basicConfig(filename=logfile, level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
diff --git a/scripts/xml2txt.py b/scripts/xml2txt.py
index f9f2607b..90a5e5b2 100644
--- a/scripts/xml2txt.py
+++ b/scripts/xml2txt.py
@@ -5,8 +5,9 @@ input: xml file
 output: xml file
 """
 
-from sys import argv, exit
 import os
+from sys import argv, exit
+
 try:
     import xml.etree.cElementTree as ET
 except ImportError:
diff --git a/voronoi-boost/VoronoiPositionGenerator.cpp b/voronoi-boost/VoronoiPositionGenerator.cpp
index c512503c..22aa8999 100644
--- a/voronoi-boost/VoronoiPositionGenerator.cpp
+++ b/voronoi-boost/VoronoiPositionGenerator.cpp
@@ -33,7 +33,6 @@ static int global_count = 0;
 //#include <string>
 //#include <random>
 
-#include "boost/polygon/voronoi.hpp"
 using boost::polygon::voronoi_builder;
 using boost::polygon::voronoi_diagram;
 using boost::polygon::x;
-- 
GitLab