[petsc-dev] problem with DMGetInterpolation_DA_2D_Q1() for whoever was monkeying with it
Barry Smith
bsmith at mcs.anl.gov
Mon May 16 23:15:24 CDT 2011
Jed,
You are amazing. Thanks, Barry
On May 16, 2011, at 2:17 AM, Jed Brown wrote:
> On Sun, May 15, 2011 at 20:03, Barry Smith <bsmith at mcs.anl.gov> wrote:
> Some people did an overhaul of DMGetInterpolation_DA_2D_Q1() a while ago either to handle new types of boundary conditions or to handle complicated mappings properly. The also may have worked on the very nice src/dm/examples/tests/ex36.c test code
>
> The error dates from revision 0. I don't know why it didn't show up in earlier tests with ex36.
>
> changeset: 19004:5e10ad9d193b
> tag: tip
> user: Jed Brown <jed at 59A2.org>
> date: Mon May 16 09:17:58 2011 +0200
> files: src/dm/impls/da/dainterp.c
> description:
> Fix ancient indexing bug in DMGetInterpolation_DA_2D_Q1
>
>
> diff --git a/src/dm/impls/da/dainterp.c b/src/dm/impls/da/dainterp.c
> --- a/src/dm/impls/da/dainterp.c
> +++ b/src/dm/impls/da/dainterp.c
> @@ -343,7 +343,7 @@
> cols[nc++] = col_shift + idx_c[col+m_ghost_c*dof]/dof;
> }
> /* one right and above */
> - if (j_c*ratioi != j && i_c*ratioj != i) {
> + if (i_c*ratioi != i && j_c*ratioj != j) {
> cols[nc++] = col_shift + idx_c[col+(m_ghost_c+1)*dof]/dof;
> }
> ierr = MatPreallocateSet(row,nc,cols,dnz,onz);CHKERRQ(ierr);
More information about the petsc-dev
mailing list