Wolfgang, Thank you for the help. I think I have it working in the non-distributed case, but project_boundary_values segfaults on me without any explanations (compiled in debug mode) when run with a distributed triangulation. Is this "normal"?
/Anton On Monday, April 8, 2019 at 12:11:19 AM UTC+2, Wolfgang Bangerth wrote: > > On 4/6/19 12:29 PM, Anton wrote: > > > > Basically if I interpolate a step function (which can be exactly > presented in > > for example DGQ1 space if the discontinuity is at the node) I get a > 1-element > > wide transition. In ASCII pictures, I expect ___---- but I get > ___/--- > > instead :) > > Ah, yes -- ASCII art to the fore! Yes, the problem is that the DGQ(k) > elements > have support (interpolation) points at the vertices, and so you'll get the > same value for both cells at these vertices. That's unavoidable. > Projection is > the solution. > > > > So if I understand you correctly, one would need to (1) obtain > > ConstraintMatrix from project_boundary_values; (2) go over each row of > the > > constraint matrix and check which component it is; (3) if it is the > "right" > > component then copy the row. Could I ask how does one figure out the > > component number from the row number in the ConstraintMatrix - I cannot > > immediately figure this out from DoFHandler interface? > > You can't do it this way, but there are functions in DoFTools that allow > you > to extract *all* DoF indices for a particular component from a DoFHandler, > and > then you can cross-check the two objects. > > Best > W. > > > -- > ------------------------------------------------------------------------ > Wolfgang Bangerth email: [email protected] > <javascript:> > www: http://www.math.colostate.edu/~bangerth/ > > -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
