diff --git a/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m b/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
index fdc6b9f83c6d4a81d58a73a3a37b09f34051e68a..391d8e44fa419a379ac15aa5e405d21a25597140 100644
--- a/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
+++ b/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
@@ -203,8 +203,9 @@ for it=1:numel(ids_equilibrium.time)
   ids_equilibrium.time_slice{it}.boundary.geometric_axis.r = temp.rgeom.data(it);
   ids_equilibrium.time_slice{it}.boundary.geometric_axis.z = temp.zgeom.data(it);
   if temp.n_x_point.data(it) > 0
-    ids_equilibrium.time_slice{it}.boundary.x_point(1:temp.n_x_point.data(it)) = ids_equilibrium.time_slice{it}.boundary.x_point(1);
-    for i=1:temp.n_x_point.data(it)
+    % not that asking for time_out may lead to interpolated nb of X-points non integer, should included piece-wise constant interpolation for equil quantities...
+    ids_equilibrium.time_slice{it}.boundary.x_point(1:fix(temp.n_x_point.data(it))) = ids_equilibrium.time_slice{it}.boundary.x_point(1);
+    for i=1:fix(temp.n_x_point.data(it))
       ids_equilibrium.time_slice{it}.boundary.x_point{i}.r = temp.r_x_point.data(i,it);
       ids_equilibrium.time_slice{it}.boundary.x_point{i}.z = temp.z_x_point.data(i,it);
     end
@@ -296,7 +297,7 @@ switch liuqe_opt
  case {12,13}, psitbx_str=['LIUQE' num2str(mod(liuqe_opt,10))];
  otherwise, error(['Unknown LIUQE version, liuqe = ' num2str(liuqe_opt)]);
 end
-fsd = psitbxtcv2(shot,profiles_1d.volume.t,'FS',psitbx_str); % will get automatically the correct time interval
+fsd = psitbxtcv2(shot,profiles_1d.volume.t,'FS',psitbx_str,false); % will get automatically the correct time interval
 grho_metric_3D = metric(fsd,-1);
 % Introduced new anonymous function to compute FS average ...
 metric_FS = metric(grho_metric_3D.grid,[2,3]);