diff --git a/source/Applications/Thermoplast/config.txt b/source/Applications/Thermoplast/config.txt
index 47c3af05f7885c44233e4044fdecb5f2fbff85da..a60b1621147231cd6c0c9a9a9dcc1749735bf22a 100644
--- a/source/Applications/Thermoplast/config.txt
+++ b/source/Applications/Thermoplast/config.txt
@@ -9,8 +9,8 @@ boundingBox = 60 1370 130 190 1530 320 #test bb
  
 blocknx = 10 10 10 
 #blocknx = 300 420 320
-endTime = 2000
-outTime = 2000
+endTime = 3000
+outTime = 3000
 availMem = 25e9
 uLB = 0.1
 
@@ -36,9 +36,9 @@ pathOut = g:/temp/thermoplast2
 logToFile = false
 
 #restart
-cpStart = 2000
-cpStep =  2000
+cpStart = 3000
+cpStep =  3000
 restart = true
-restartStep = 1000
+restartStep = 2000
 
 nupsTime = 10 10 1000000
\ No newline at end of file
diff --git a/source/Applications/Thermoplast/thermoplast.cpp b/source/Applications/Thermoplast/thermoplast.cpp
index 971cc6e9656a428b756c86b1eab275a6bcfffffb..89158664b3d7cc25ff0802a02e3cb25366deddcf 100644
--- a/source/Applications/Thermoplast/thermoplast.cpp
+++ b/source/Applications/Thermoplast/thermoplast.cpp
@@ -516,7 +516,7 @@ void thermoplast(string configname)
    ////generating spheres 
    //UBLOG(logINFO, "generating spheres - start, rank="<<myid);
    SPtr<UbScheduler> sphereScheduler(new UbScheduler(sphereTime/*10,10,10*/));
-   SPtr<CreateDemObjectsCoProcessor> createSphereCoProcessor(new CreateDemObjectsCoProcessor(grid, sphereScheduler, comm, demCoProcessor, sphereMaterial));
+   SPtr<CreateDemObjectsCoProcessor> createSphereCoProcessor(new CreateDemObjectsCoProcessor(grid, sphereScheduler, comm, demCoProcessor, sphereMaterial, 0.03));
    //UBLOG(logINFO, "generating spheres - stop, rank="<<myid);
 
    ////restart
diff --git a/source/DemCoupling/CreateDemObjectsCoProcessor.cpp b/source/DemCoupling/CreateDemObjectsCoProcessor.cpp
index 1aa6f66fa87861bcaaf731355279d488d90fea25..1d695f605cf2116d74f1d038b76ec971145cc20b 100644
--- a/source/DemCoupling/CreateDemObjectsCoProcessor.cpp
+++ b/source/DemCoupling/CreateDemObjectsCoProcessor.cpp
@@ -20,11 +20,12 @@
 
 
 
-CreateDemObjectsCoProcessor::CreateDemObjectsCoProcessor(SPtr<Grid3D> grid, SPtr<UbScheduler> s,  std::shared_ptr<Communicator> comm, SPtr<DemCoProcessor> demCoProcessor, SPtr<PhysicsEngineMaterialAdapter> demObjectMaterial) : 
+CreateDemObjectsCoProcessor::CreateDemObjectsCoProcessor(SPtr<Grid3D> grid, SPtr<UbScheduler> s,  std::shared_ptr<Communicator> comm, SPtr<DemCoProcessor> demCoProcessor, SPtr<PhysicsEngineMaterialAdapter> demObjectMaterial, double toleranz) : 
    CoProcessor(grid, s),
    comm(comm),
    demCoProcessor(demCoProcessor), 
-   demObjectMaterial(demObjectMaterial)
+   demObjectMaterial(demObjectMaterial),
+   toleranz(toleranz)
 {
    mu::Parser fct;
    fct.SetExpr("U");
@@ -91,7 +92,7 @@ void CreateDemObjectsCoProcessor::createGeoObjects()
    for (int i = 0; i < size; i++)
    {
       SPtr<GbSphere3D> sphere = std::dynamic_pointer_cast<GbSphere3D>(geoObjectPrototypeVector[i]);
-      if (demCoProcessor->isSpheresIntersection(sphere->getX1Centroid(), sphere->getX2Centroid(), sphere->getX3Centroid(), sphere->getRadius()*2.0*0.99))
+      if (demCoProcessor->isSpheresIntersection(sphere->getX1Centroid(), sphere->getX2Centroid(), sphere->getX3Centroid(), sphere->getRadius()*2.0*(1.0-toleranz)))
       {
          continue;
       }
diff --git a/source/DemCoupling/CreateDemObjectsCoProcessor.h b/source/DemCoupling/CreateDemObjectsCoProcessor.h
index d8a4d990b5bc4a51cbad7789661caad04cd1d545..837c032a74b48303043fb04a411b2e1ea7c4b5e2 100644
--- a/source/DemCoupling/CreateDemObjectsCoProcessor.h
+++ b/source/DemCoupling/CreateDemObjectsCoProcessor.h
@@ -27,7 +27,7 @@ class PhysicsEngineMaterialAdapter;
 class CreateDemObjectsCoProcessor : public CoProcessor
 {
 public:
-   CreateDemObjectsCoProcessor(SPtr<Grid3D> grid, SPtr<UbScheduler> s,  std::shared_ptr<Communicator> comm, SPtr<DemCoProcessor> demCoProcessor,  SPtr<PhysicsEngineMaterialAdapter> geoObjectMaterial);
+   CreateDemObjectsCoProcessor(SPtr<Grid3D> grid, SPtr<UbScheduler> s,  std::shared_ptr<Communicator> comm, SPtr<DemCoProcessor> demCoProcessor,  SPtr<PhysicsEngineMaterialAdapter> geoObjectMaterial, double toleranz = 0);
    void process(double step) override;
    void addGeoObject(SPtr<GbObject3D> geoObjectPrototype, Vector3D  initalVelocity);
    void clearGeoObjects();
@@ -42,6 +42,7 @@ private:
    SPtr<BCAdapter> velocityBcParticleAdapter;
    SPtr<Reconstructor> extrapolationReconstructor;
    int demCounter;
+   double toleranz;
 #ifdef TIMING
    UbTimer timer;
 #endif