diff --git a/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m b/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
index bb2753856ffba34fb290859bd07353bd13e47e1a..df66620aad9b3957ca9abf1f56611c92b540208b 100644
--- a/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
+++ b/matlab/TCV_IMAS/tcv_get_ids_equilibrium.m
@@ -224,7 +224,7 @@ mag_time   = mdsvalue('\magnetics::bpol_003:dim0');
 itime = iround_os(mag_time, liuqe_time);
 mag_time_req = mdscvt(mag_time(itime),'f');
 bpol = mdsvalue('\magnetics::bpol_003[$1,*]',mag_time_req);
-flux = mdsvalue('\magnetics::flux[$1,*]',mag_time_req);
+flux = mdsvalue('tcv_idealloop("flux")[$1,*]',mag_time_req);
 diam = mdsvalue('\results::dmlcor[$1]',mag_time_req);
 ip   = mdsvalue('\magnetics::iplasma:trapeze[$1]',mag_time_req);
 % Coil currents since dim of constraints pf_current is IDS:pf_active/coil
@@ -233,6 +233,7 @@ dim_pol = {'OH_001','OH_002','OH_002','OH_002','OH_002','OH_002','OH_002',...
            'F_001','F_002','F_003','F_004','F_005','F_006','F_007','F_008',...
            'G_001','G_001','G_001','G_001','G_001','G_001'};
 ipol = mdsvalue('\magnetics::ipol[$1,$2]',mag_time_req,dim_pol);
+ipol(:,27:29) = -ipol(:,27:29); % Bottom G-coils
 dim_pol(30:32) = {'TOR_001'};
 ipol(:,30:32) = 0; % TOR_001 is not used in LIUQE
 
@@ -244,7 +245,8 @@ diam_liuqe = mdsvalue('tcv_eq("tor_flux_dml","liuqe.m")');
 ip_liuqe   = mdsvalue('tcv_eq("i_pl","liuqe.m")');
 ipol_liuqe = mdsvalue('tcv_eq("i_pol","liuqe.m")');
 ipol_liuqe = ipol_liuqe(ipol_liuqe_order,:);
-ipol_liuqe(20,:) = 0; % ... TOR
+ipol_liuqe(27:29,:) = -ipol_liuqe(27:29,:); % Bottom G-coils
+ipol_liuqe(30:32,:) = 0; % ... TOR
 
 % Weights (using old parameters tree for now)
 bpol_err = mdsvalue('\results::parameters:berr')./mdsvalue('\results::parameters:vvv[0:37]');
@@ -253,7 +255,7 @@ diam_err = 0.13e-3./mdsvalue('\results::parameters:idml');
 ip_err   = mdsvalue('\results::parameters:plcerr')*1e3;
 ipol_err = mdsvalue('\results::parameters:cerr')./mdsvalue('\results::parameters:uuu[0:18]')*1e3;
 ipol_err = ipol_err(ipol_liuqe_order);
-ipol_err(20) = NaN;
+ipol_err(30:32) = NaN;
 
 if ntime > 0
   constraints_orig = ids_equilibrium.time_slice{1}.constraints;