diff --git a/VERSION b/VERSION
index e26ed8de06b5a9b25d370db9da4ad65bbc26f66b..0e92c3c0fc954ea08c56cf2c6b18bd68a0c7879b 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-305
\ No newline at end of file
+306
\ No newline at end of file
diff --git a/lib/+artoa/+trajectory/calculateByOffsetVariations.m b/lib/+artoa/+trajectory/calculateByOffsetVariations.m
index b8556ff3e38698cc4180b66d2a5244118c88a159..25771e5ad3ab10ba75455e850fa21f138555c46d 100644
--- a/lib/+artoa/+trajectory/calculateByOffsetVariations.m
+++ b/lib/+artoa/+trajectory/calculateByOffsetVariations.m
@@ -48,6 +48,10 @@ for i = 1:length(variationResults{end}.dates)
     results{i}.observations = observations;
     % get covariance matrix
     results{i}.covarianceMatrix = cov(observations);
+    % check if matrix contains nan or inf
+    if (any(isnan(results{i}.covarianceMatrix), 'all') | any(isinf(results{i}.covarianceMatrix), 'all'))
+        error([mfilename ': Covariance matrix contains NaN or Inf, the eigenvalues cannot be calculated. This could be a result of a not converging tracking algorithm.']);
+    end
     % eigendecomposition
     [results{i}.V, results{i}.D] = eig(results{i}.covarianceMatrix);
 end