diff --git a/villas/dataprocessing/timeseries.py b/villas/dataprocessing/timeseries.py
index 32c83ad1bf98ca662cf87b65e242fd199491adcc..ff2276c1abd95031f597f77ecfdd6de79760320e 100644
--- a/villas/dataprocessing/timeseries.py
+++ b/villas/dataprocessing/timeseries.py
@@ -35,6 +35,15 @@ class TimeSeries:
         ts_phase = TimeSeries(self.name+'_phase', self.time, phase_values)
         return ts_phase
 
+    def real(self):
+        """ get the real part of complex time series.
+        """
+        _real = []
+        for value in self.values:
+            _real.append(np.real(value))
+        ts_real = TimeSeries(self.name+'_real', self.time, _real)
+        return ts_real
+
     def phasor(self):
         """Calculate phasors of complex time series 
             and return dict with absolute value and phase.
@@ -141,6 +150,24 @@ class TimeSeries:
         """
         return np.sqrt((TimeSeries.diff('diff', ts1, ts2).values ** 2).mean())
 
+    @staticmethod
+    def max_abs_err(ts1, ts2):
+        """ Calculate max absolute error between two time series
+        """
+        return np.absolute((TimeSeries.diff('diff', ts1, ts2).values)).max()
+
+    @staticmethod
+    def max_rel_abs_err(ts1, ts2):
+        """ Calculate max relative absolute error between two time series objects to the first
+        """
+        return np.absolute(TimeSeries.rel_diff('rel_diff', ts1, ts2).values).max()
+
+    @staticmethod
+    def mean_rel_abs_err(ts1, ts2):
+        """ Calculate mean relative absolute error between two time series objects to the first
+        """
+        return np.absolute(TimeSeries.rel_diff('rel_diff', ts1, ts2).values).mean()
+
     @staticmethod
     def norm_rmse(ts1, ts2):
         """ Calculate root mean square error between two time series,
@@ -167,6 +194,16 @@ class TimeSeries:
             ts_diff = TimeSeries(name, time, (interp_vals_ts2 - interp_vals_ts1))
         return ts_diff
     
+    @staticmethod
+    def rel_diff(name, ts1, ts2):
+        """Returns relative difference between two time series objects to the first.
+        """
+        diff_val=TimeSeries.diff('diff', ts1, ts2).values
+        # in case an element in ts1 is zero and the corresponding diff is non-zero
+        rel_diff_to_ts1=np.divide(diff_val, ts1.values, out=np.zeros_like(diff_val), where=ts1.values!=0)
+        ts_rel_diff_to_ts1 = TimeSeries(name, ts1.time, rel_diff_to_ts1)
+        return ts_rel_diff_to_ts1
+    
     @staticmethod
     def complex_abs(name, ts_real, ts_imag):
         """ Calculate absolute value of complex variable.