diff --git a/matlab/AUG/rdaAUG_eff.m b/matlab/AUG/rdaAUG_eff.m
index d1ac063d39559dd2bee11f50758cffaf606ad2c8..afdd1334e489d126869f9311749020c5b7766226 100644
--- a/matlab/AUG/rdaAUG_eff.m
+++ b/matlab/AUG/rdaAUG_eff.m
@@ -167,13 +167,12 @@ if usemdsplus
     % use augsignal to get effective layout as in ISIS and sf2sig, for example for EQI/PFM
     eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augsignal(' num2str(shot) ',"' diagname '","' sigtype '","' shotfile_exp ...
             '",' ed_number ',' tstart ',' tend ',_oshot' user diagname ',_oed' user diagname ',' ask_raw ')'');']);
-    if isnumeric(data)
-      data=double(data);
-    end
+    if isnumeric(data), data=double(data); end
   elseif isempty(param_set_name) && ~area_base && ~time_base
     % use augparam
     eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augparam(' num2str(shot) ',"' diagname '","' sigtype '","' param_name '"' ...
           ',"' shotfile_exp '",' ed_number ',_oshot' user diagname ',_oed' user diagname ')'');']);
+    if isnumeric(data), data=double(data); end
   elseif ~area_base && ~time_base
     % param-set, cannot get this yet with mdsvalue
     disp(['cannot get param-set with mds yet (only sf2ps): ' param_set_name])
@@ -191,17 +190,21 @@ if usemdsplus
       if nargin_eff>=5 & ~isempty(varargin_eff{1})
         eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augdiag(' num2str(shot) ',"' diagname '","' sigtype '","' shotfile_exp ...
               '",' ed_number ',' num2str(varargin_eff{1}(1),'%.14f') ',' num2str(varargin_eff{1}(end),'%.14f') ')'');']);
+      if isnumeric(data), data=double(data); end
 % $$$         eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augdiag(' num2str(shot) ',"' diagname '","' area_time_base_name '","' shotfile_exp ...
 % $$$               '",' ed_number ',' num2str(varargin_eff{1}(1),'%.14f') ',' num2str(varargin_eff{1}(end),'%.14f') ')'');']);
       else
         eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augdiag(' num2str(shot) ',"' diagname '","' sigtype '","' shotfile_exp ...
               '",' ed_number ',,,_oshot' user diagname ',_oed' user diagname ')'');']);
+        if isnumeric(data), data=double(data); end
       end
       if ~isempty(area_time_base_dimof)
         eval(['data=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(area_time_base_dimof) ')'');']);
+        if isnumeric(data), data=double(data); end
       else
         for j=1:length(size(data))
           eval(['dataj=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(j) ')'');']);
+          if isnumeric(data), data=double(data); end
           if (prod(size(dataj))~=length(dataj))
             data = dataj;
             area_time_base_dimof = j;
@@ -214,6 +217,7 @@ if usemdsplus
   end
   adata.data=data;
   adata.edition = mdsvalue(['_oed' user diagname]);
+  if isnumeric(data), data=double(data); end
   if nverbose>=1 && (~isempty(edition_in) && adata.edition~=edition_in)
     warning(sprintf('\nedition in = %d is different from output edition: %d\n\n',edition_in,adata.edition));
   end
@@ -246,9 +250,11 @@ if usemdsplus
     adata.data=reshape(adata.data,1,length(adata.data));
     idim0 = 0;
     eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(idim0) ')'');']);
+    if isnumeric(time), time=double(time); end
     if numel(time) ~= numel(adata.data)
       idim0 = 1;
       eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(idim0) ')'');']);
+      if isnumeric(time), time=double(time); end
       if numel(time) ~= numel(adata.data) && (ischar(adata.data) && isempty(strfind(lower(adata.data),'abort')))
         warning(['problem with dim for: ' diagname ', ' sigtype])
       end
@@ -271,8 +277,10 @@ if usemdsplus
     end
     % transposed because of C relation and backward compatibility with sf2sig part
     eval(['x=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(idim_x) ')'');']);
+    if isnumeric(x), x=double(x); end
     if prod(size(x))==length(x); x = reshape(x,1,length(x)); end
     eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(idim_t) ')'');']);
+    if isnumeric(time), time=double(time); end
     time = reshape(time,1,length(time));
     adata.dim = {x, time};
     eval(['xunits=deblank(mdsvalue(''units_of(dim_of(_rdaeff' user diagname ',' num2str(idim_x) '))''));']);
@@ -311,6 +319,7 @@ if usemdsplus
     itime = 1; % default
     for i=1:nbofdim
       eval(['dimarray=mdsvalue(''dim_of(_rdaeff' user diagname ',' num2str(i-1) ')'');']);
+      if isnumeric(dimarray), dimarray=double(dimarray); end
       if prod(size(dimarray)) == length(dimarray)
         eval(['adata.dim{' num2str(i) '}=reshape(dimarray,1,length(dimarray));']);
       else