Index: src/Actions/TesselationAction/ConvexEnvelopeAction.cpp
===================================================================
--- src/Actions/TesselationAction/ConvexEnvelopeAction.cpp	(revision bcb83114d92eb11cccb67975f4967b7fb251de3d)
+++ src/Actions/TesselationAction/ConvexEnvelopeAction.cpp	(revision 5f7b95f1f29d4009517dae2f5ef5ae993e846ce8)
@@ -74,5 +74,7 @@
     Success &= FindNonConvexBorder(mol, TesselStruct, LCList, params.SphereRadius.get(), params.filenameNonConvex.get().string().c_str());
     //RemoveAllBoundaryPoints(TesselStruct, mol, argv[argptr]);
-    const double volumedifference = ConvexizeNonconvexEnvelope(TesselStruct, mol, params.filenameConvex.get().string().c_str());
+    const double volumedifference =
+        ConvexizeNonconvexEnvelope(TesselStruct, mol, params.filenameConvex.get().string().c_str(),
+            params.DoOutputEveryStep.get());
     // check whether tesselated structure is truly convex
     if (!TesselStruct->isConvex()) {
Index: src/Actions/TesselationAction/ConvexEnvelopeAction.def
===================================================================
--- src/Actions/TesselationAction/ConvexEnvelopeAction.def	(revision bcb83114d92eb11cccb67975f4967b7fb251de3d)
+++ src/Actions/TesselationAction/ConvexEnvelopeAction.def	(revision 5f7b95f1f29d4009517dae2f5ef5ae993e846ce8)
@@ -9,4 +9,5 @@
 class TesselationListClass;
 
+#include "Parameters/Validators/DummyValidator.hpp"
 #include "Parameters/Validators/Ops_Validator.hpp"
 #include "Parameters/Validators/Specific/BoxLengthValidator.hpp"
@@ -16,13 +17,14 @@
 // ValueStorage by the token "Z" -> first column: int, Z, "Z"
 // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
-#define paramtypes (double)(boost::filesystem::path)(boost::filesystem::path)
-#define paramtokens ("convex-envelope")("convex-file")("nonconvex-file")
-#define paramdescriptions ("radius of the rolling sphere")("filename of the convex envelope")("filename of the non-convex envelope")
-#undef paramdefaults
-#define paramreferences (SphereRadius)(filenameConvex)(filenameNonConvex)
+#define paramtypes (double)(boost::filesystem::path)(boost::filesystem::path)(bool)
+#define paramtokens ("convex-envelope")("convex-file")("nonconvex-file")("DoOutputEveryStep")
+#define paramdescriptions ("radius of the rolling sphere")("filename of the convex envelope")("filename of the non-convex envelope")("whether to write an extra file for debugging of each convexization step")
+#define paramdefaults (NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(0))
+#define paramreferences (SphereRadius)(filenameConvex)(filenameNonConvex)(DoOutputEveryStep)
 #define paramvalids \
 (BoxLengthValidator()) \
 (!FilePresentValidator()) \
-(!FilePresentValidator())
+(!FilePresentValidator()) \
+(DummyValidator<bool>())
 
 #undef statetypes
Index: src/Tesselation/boundary.cpp
===================================================================
--- src/Tesselation/boundary.cpp	(revision bcb83114d92eb11cccb67975f4967b7fb251de3d)
+++ src/Tesselation/boundary.cpp	(revision 5f7b95f1f29d4009517dae2f5ef5ae993e846ce8)
@@ -513,5 +513,9 @@
  * \return volume difference between the non- and the created convex envelope
  */
-double ConvexizeNonconvexEnvelope(class Tesselation *&TesselStruct, const molecule * const mol, const char * const filename)
+double ConvexizeNonconvexEnvelope(
+    Tesselation *&TesselStruct,
+    const molecule * const mol,
+    const char * const filename,
+    bool DebugOutputEveryStep)
 {
 	//Info FunctionInfo(__func__);
@@ -544,8 +548,10 @@
     Concavity = false;
 
-    sprintf(dummy, "-%d", run++);
-    //CalculateConcavityPerBoundaryPoint(TesselStruct);
-    LOG(1, "INFO: Writing " << run << "th tesselation file.");
-    StoreTrianglesinFile(mol, (const Tesselation *&)TesselStruct, filename, dummy);
+    if (DebugOutputEveryStep) {
+      sprintf(dummy, "-%d", run++);
+      //CalculateConcavityPerBoundaryPoint(TesselStruct);
+      LOG(1, "INFO: Writing " << run << "th tesselation file.");
+      StoreTrianglesinFile(mol, (const Tesselation *&)TesselStruct, filename, dummy);
+    }
 
     // first step: remove all full-concave point
@@ -575,8 +581,10 @@
     }
 
-    sprintf(dummy, "-%d", run++);
-    //CalculateConcavityPerBoundaryPoint(TesselStruct);
-    LOG(1, "INFO: Writing " << run << "th tesselation file.");
-    StoreTrianglesinFile(mol, (const Tesselation *&)TesselStruct, filename, dummy);
+    if (DebugOutputEveryStep) {
+      sprintf(dummy, "-%d", run++);
+      //CalculateConcavityPerBoundaryPoint(TesselStruct);
+      LOG(1, "INFO: Writing " << run << "th tesselation file.");
+      StoreTrianglesinFile(mol, (const Tesselation *&)TesselStruct, filename, dummy);
+    }
 
     // second step: flip baselines, i.e. add general tetraeder at concave lines
Index: src/Tesselation/boundary.hpp
===================================================================
--- src/Tesselation/boundary.hpp	(revision bcb83114d92eb11cccb67975f4967b7fb251de3d)
+++ src/Tesselation/boundary.hpp	(revision 5f7b95f1f29d4009517dae2f5ef5ae993e846ce8)
@@ -39,5 +39,5 @@
 /********************************************** declarations *******************************/
 
-double ConvexizeNonconvexEnvelope(class Tesselation *&TesselStruct, const molecule * const mol, const char * const filename);
+double ConvexizeNonconvexEnvelope(class Tesselation *&TesselStruct, const molecule * const mol, const char * const filename, bool DebugOutputEveryStep = false);
 void FindConvexBorder(const molecule* const mol, Boundaries *BoundaryPts, Tesselation *&TesselStruct, const LinkedCell_deprecated *LCList, const char *filename);
 Vector* FindEmbeddingHole(MoleculeListClass *mols, molecule *srcmol);
