   Real del_ge_L, del_ge_R, del_ge_C, del_ge_G;
   Real del_ge_m_imo, del_ge_m_i, del_ge_m_ipo;
   Real ge_L, ge_R;
+  Real E, E_kin, GE;
   #ifdef CTU
   Real chi_ge, sum_ge, ge_6;
   #endif

    vx_i =  dev_conserved[o1*n_cells + id] / d_i;
    vy_i =  dev_conserved[o2*n_cells + id] / d_i;
    vz_i =  dev_conserved[o3*n_cells + id] / d_i;
    p_i  = (dev_conserved[4*n_cells + id] - 0.5*d_i*(vx_i*vx_i + vy_i*vy_i + vz_i*vz_i)) * (gamma - 1.0);
    p_i  = fmax(p_i, (Real) TINY_NUMBER);
    #ifdef DE
    ge_i =  dev_conserved[(n_fields-1)*n_cells + id] / d_i;

    vx_imt =  dev_conserved[o1*n_cells + id] / d_imt;
    vy_imt =  dev_conserved[o2*n_cells + id] / d_imt;
    vz_imt =  dev_conserved[o3*n_cells + id] / d_imt;
    #ifdef DE //PRESSURE_DE
    E = dev_conserved[4*n_cells + id];
    GE = dev_conserved[(n_fields-1)*n_cells + id];
    E_kin = 0.5 * d_imt * ( vx_imt*vx_imt + vy_imt*vy_imt + vz_imt*vz_imt );
    p_imt = Get_Pressure_Dual_Energy( E, E - E_kin, GE, gamma );   
    #else
    p_imt  = (dev_conserved[4*n_cells + id] - 0.5*d_imt*(vx_imt*vx_imt + vy_imt*vy_imt + vz_imt*vz_imt)) * (gamma - 1.0);
    #endif//DE
    p_imt  = fmax(p_imt, (Real) TINY_NUMBER);
    #ifdef DE
    ge_imt =  dev_conserved[(n_fields-1)*n_cells + id] / d_imt;
