Index: src/Actions/AnalysisAction/CalculateCellVolumeAction.cpp
===================================================================
--- src/Actions/AnalysisAction/CalculateCellVolumeAction.cpp	(revision 6aa48530ab21a608d169e9bd28ff31e047c23a15)
+++ src/Actions/AnalysisAction/CalculateCellVolumeAction.cpp	(revision 54088ade157ccd5da09d83809d019879eb18bca1)
@@ -20,10 +20,33 @@
 #include "CodePatterns/MemDebug.hpp"
 
+#include "CodePatterns/Log.hpp"
+
+#include "Box.hpp"
+#include "LinearAlgebra/RealSpaceMatrix.hpp"
+#include "World.hpp"
+
+#include <iostream>
+#include <string>
+
 #include "CalculateCellVolumeAction.hpp"
 
-CalculateCellVolumeCalculation::CalculateCellVolumeCalculation() :
-  Calculation<double>(0, Foostrait)
-{}
+using namespace MoleCuilder;
 
-CalculateCellVolumeCalculation::~CalculateCellVolumeCalculation()
-{}
+// and construct the stuff
+#include "CalculateCellVolumeAction.def"
+#include "Reaction_impl_pre.hpp"
+
+#include "Reaction_impl.hpp"
+
+/** =========== define the function ====================== */
+double * AnalysisCalculateCellVolumeAction::doCalc() {
+  // calculate volume from Box
+  Box &B = World::getInstance().getDomain();
+  const RealSpaceMatrix &M = B.getM();
+  const double volume = M.determinant();
+
+  LOG(0, "RESULT: The current box volume is " << volume << ".");
+
+  return (new double(volume));
+}
+/** =========== end of function ====================== */
Index: src/Actions/AnalysisAction/CalculateCellVolumeAction.def
===================================================================
--- src/Actions/AnalysisAction/CalculateCellVolumeAction.def	(revision 6aa48530ab21a608d169e9bd28ff31e047c23a15)
+++ src/Actions/AnalysisAction/CalculateCellVolumeAction.def	(revision 54088ade157ccd5da09d83809d019879eb18bca1)
@@ -17,8 +17,9 @@
 #undef paramdefaults
 
-#undef statetypes
-#undef statereferences
+// Reaction cannot be undone, hence no state
 
-// some defines for all the names, you may use ACTION, STATE and PARAMS
+#define returntype double
+
+// some defines for all the names, you may use REACTION and PARAMS
 #define CATEGORY Analysis
 #define MENUNAME "analysis"
Index: src/Actions/AnalysisAction/CalculateCellVolumeAction.hpp
===================================================================
--- src/Actions/AnalysisAction/CalculateCellVolumeAction.hpp	(revision 6aa48530ab21a608d169e9bd28ff31e047c23a15)
+++ src/Actions/AnalysisAction/CalculateCellVolumeAction.hpp	(revision 54088ade157ccd5da09d83809d019879eb18bca1)
@@ -15,16 +15,8 @@
 
 
-#include "Actions/Calculation.hpp"
+#include "Actions/Reaction.hpp"
 
-class CalculateCellVolumeCalculation : public Calculation<double>
-{
-public:
-  CalculateCellVolumeCalculation();
-  ~CalculateCellVolumeCalculation();
-
-private:
-};
-
-
+#include "CalculateCellVolumeAction.def"
+#include "Reaction_impl_header.hpp"
 
 #endif /* CALCULATECELLVOLUMEACTION_HPP_ */
Index: src/Actions/GlobalListOfActions.hpp
===================================================================
--- src/Actions/GlobalListOfActions.hpp	(revision 6aa48530ab21a608d169e9bd28ff31e047c23a15)
+++ src/Actions/GlobalListOfActions.hpp	(revision 54088ade157ccd5da09d83809d019879eb18bca1)
@@ -48,4 +48,5 @@
 	(ParserSetParserParameters) \
 	(ParserSetOutputFormats) \
+  (AnalysisCalculateCellVolume) \
 	(AnalysisDipoleAngularCorrelation) \
 	(AnalysisDipoleCorrelation) \
Index: src/Actions/Makefile.am
===================================================================
--- src/Actions/Makefile.am	(revision 6aa48530ab21a608d169e9bd28ff31e047c23a15)
+++ src/Actions/Makefile.am	(revision 54088ade157ccd5da09d83809d019879eb18bca1)
@@ -87,4 +87,5 @@
 
 ANALYSISACTIONSOURCE = \
+	Actions/AnalysisAction/CalculateCellVolumeAction.cpp \
   Actions/AnalysisAction/DipoleAngularCorrelationAction.cpp \
   Actions/AnalysisAction/DipoleCorrelationAction.cpp \
@@ -95,4 +96,5 @@
   Actions/AnalysisAction/SurfaceCorrelationAction.cpp
 ANALYSISACTIONHEADER = \
+	Actions/AnalysisAction/CalculateCellVolumeAction.hpp \
   Actions/AnalysisAction/DipoleAngularCorrelationAction.hpp \
   Actions/AnalysisAction/DipoleCorrelationAction.hpp \
@@ -103,4 +105,5 @@
   Actions/AnalysisAction/SurfaceCorrelationAction.hpp
 ANALYSISACTIONDEFS = \
+	Actions/AnalysisAction/CalculateCellVolumeAction.def \
   Actions/AnalysisAction/DipoleAngularCorrelationAction.def \
   Actions/AnalysisAction/DipoleCorrelationAction.def \
