[petsc-dev] [petsc-maint #144373] [petsc/petsc-dev] Add support for 1-coloring instead of only 2-coloring (issue #25)

Barry Smith bsmith at mcs.anl.gov
Mon Dec 17 18:43:48 CST 2012


On Dec 17, 2012, at 4:59 PM, Stefano Zampini <stefano.zampini at gmail.com> wrote:

> I need a 1-coloring algorithm to implement a Deluxe version of BDDC, where the partition of unity is realized by solving coupled subdomain problems. I completely understand Barry's point about adding a different kind of coloring to a library devoted to Nonlinear solvers, but using MatColoring only for Jacobian computations is at least ambiguous; MatColoringType could carry information about the type of coloring (distance-1, distance-2 star, acyclic etc), MatColoringOrderingorWhatever contain the kind of ordering (ID, SL, LF ..)

   We use the term Type in PETSc to represent subclasses (different implementations to achieve the same task)*, thus currently MatColoringType is sl, sf etc.  It would be confusing to change it to mean something else so we need another term. Maybe MatColoringProblemType() ? Other suggestions?

  And I totally agree we should have these other colorings available to PETSc. 

   Barry

* One could argue that the current model of XXXSetType() is stupid and we should change it to XXXSetSubClasse() or something, but I doubt that will happen :-)

> 
> 
> 2012/12/17 Barry Smith <bsmith at mcs.anl.gov>
> 
> On Dec 17, 2012, at 2:56 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> 
> > Stefano wants it to solve face-centered subdomain problems. The same structure also shows up in local processing for multiscale finite elements.
> 
>    Like in a multiplicative Schwarz kind of way? That is fine but completely different than what 2 colorings are for.
> 
>    Barry
> 
> >
> >
> > On Mon, Dec 17, 2012 at 1:16 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> >
> > On Dec 17, 2012, at 1:49 PM, Jed Brown <issues-reply at bitbucket.org> wrote:
> >
> >    What is the 1 coloring used for? The 2-coloring is for computing Jacobians, not for other stuff. It is not clear to me that both colorings should be hidden behind the same method names, calling sequence etc if they are used for very different purposes.  So think before blindly implementing a 1 coloring algorithm onto of what is already there.
> >
> >     Barry
> >
> > > --- you can reply above this line ---
> > >
> > > New issue 25: Add support for 1-coloring instead of only 2-coloring
> > > https://bitbucket.org/petsc/petsc-dev/issue/25/add-support-for-1-coloring-instead-of-only
> > >
> > > Jed Brown:
> > >
> > > `MatGetColoring()` computes a coloring of `A^T A`, which is a 2-coloring of the graph `A`. Support for a 1-coloring would also be useful.
> > >
> > >
> > > --
> > >
> > > This is an issue notification from bitbucket.org. You are receiving
> > > this either because you are the owner of the issue, or you are
> > > following the issue.
> > >
> >
> >
> >
> 
> 
> 
> 
> -- 
> Stefano




More information about the petsc-dev mailing list