You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If the number of grid points in e.g. r is even, standard coarsening would result in two consecutive coarse circles. If we want to allow that, specialized cases had to be implemented for e.g. prolongation and restriction operators.
The code relies all the time on the fact that nr is odd, and thus nr_int (int for intervals) is even. We should exclude meshes not respecting that. We are checking nr and ntheta for the coarser grids, but we should check it also upon the grid creation; see https://github.com/mknaranja/GMGPolar/blob/main/src/define_coarse_nodes.cpp#L68
The text was updated successfully, but these errors were encountered:
if (v_level[0]->ntheta % 2 != 0 || v_level[0]->nr % 2 != 1) throw std::runtime_error("nr and ntheta must be resp. odd and even for the standard coarsening to work.");
If the number of grid points in e.g. r is even, standard coarsening would result in two consecutive coarse circles. If we want to allow that, specialized cases had to be implemented for e.g. prolongation and restriction operators.
The code relies all the time on the fact that nr is odd, and thus nr_int (int for intervals) is even. We should exclude meshes not respecting that. We are checking nr and ntheta for the coarser grids, but we should check it also upon the grid creation; see https://github.com/mknaranja/GMGPolar/blob/main/src/define_coarse_nodes.cpp#L68
The text was updated successfully, but these errors were encountered: