@@ -1102,22 +1102,14 @@ Field3D Div_par_fvv_heating(const Field3D& f_in, const Field3D& v_in,
11021102 // so calculate inside the k loop.
11031103
11041104 // For right cell boundaries
1105- BoutReal common_factor =
1106- (coord->J (i, j, k) + coord->J (i, j + 1 , k))
1107- / (sqrt (coord->g_22 (i, j, k)) + sqrt (coord->g_22 (i, j + 1 , k)));
1105+ const BoutReal area_rp = coord->cell_area_yhigh ()(i, j, k);
11081106
1109- const BoutReal flux_factor_rc =
1110- common_factor / (coord->dy (i, j, k) * coord->J (i, j, k));
1111- const BoutReal area_rp =
1112- common_factor * coord->dx (i, j + 1 , k) * coord->dz (i, j + 1 , k);
1107+ const BoutReal flux_factor_rc = area_rp / coord->cell_volume ()(i, j, k);
11131108
11141109 // For left cell boundaries
1115- common_factor = (coord->J (i, j, k) + coord->J (i, j - 1 , k))
1116- / (sqrt (coord->g_22 (i, j, k)) + sqrt (coord->g_22 (i, j - 1 , k)));
1110+ const BoutReal area_lc = coord->cell_area_ylow ()(i, j, k);
11171111
1118- const BoutReal flux_factor_lc =
1119- common_factor / (coord->dy (i, j, k) * coord->J (i, j, k));
1120- const BoutReal area_lc = common_factor * coord->dx (i, j, k) * coord->dz (i, j, k);
1112+ const BoutReal flux_factor_lc = area_lc / coord->cell_volume ()(i, j, k);
11211113
11221114 // //////////////////////////////////////////
11231115 // Reconstruct f at the cell faces
@@ -1179,7 +1171,7 @@ Field3D Div_par_fvv_heating(const Field3D& f_in, const Field3D& v_in,
11791171 result (i, j, k) += (actual_ke - expected_ke) * flux_factor_rc;
11801172
11811173 // Final flow through boundary is the expected value
1182- flow_ylow (i, j + 1 , k) += expected_ke * area_rp; // expected_ke * area_rp;
1174+ flow_ylow (i, j + 1 , k) += expected_ke * area_rp;
11831175
11841176 } else {
11851177 // Maximum wave speed in the two cells
0 commit comments