diff --git a/src/vesselbase/StoreDataVessel.cpp b/src/vesselbase/StoreDataVessel.cpp
index fbbc67650bdfb588333e9d111f4cd97e97082193..fae6bcf27d2399778753c38e10a3aec592f19c23 100644
--- a/src/vesselbase/StoreDataVessel.cpp
+++ b/src/vesselbase/StoreDataVessel.cpp
@@ -52,6 +52,9 @@ void StoreDataVessel::resize(){
      nspace = 1;
      active_der.resize( max_lowmem_stash * ( 1 + getAction()->getNumberOfDerivatives() ) );
   } else {
+     if( getAction()->getNumberOfDerivatives()>getAction()->maxderivatives ){
+          error("not enough memory to store derivatives for action " + getAction()->getLabel() + " use LOWMEM option");
+     }
      nspace = 1 + getAction()->maxderivatives;
      active_der.resize( getNumberOfStoredValues() * ( 1 + getAction()->maxderivatives ) );
   }