From: Subramanya Sadasiva <potaman@ou...>  20131126 19:56:13

Hi Dmitry, I am using the DM solver to solve a Cahn Hilliard equation using a C0 discretization. I would like to use the preconditioner used in http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf I have been able to use the PETSCDM solver with the VI solver to solve the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit preconditioner to work. Thanks, Subramanya On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: > DMlibMesh should work, but it's in need of an overhaul and simplification. > Could you tell me how you intend to use it? That way we can figure out > what needs to be done to make it usable. > Thanks. > Dmitry. > > > On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...> wrote: > Hi , I want to use petsc fieldsplit preconditioners with the petscdm solver that has been implemented as part of libmesh. The last time I tried it, I had trouble because dmcreatefielddecomposition was not being called. Is there someone that could guide me with trying to correct this in libmesh? Thanks, Subramanya >  > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and gamechanging > conversations that shape the rapidly evolving mobile landscape. Sign up now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > _______________________________________________ > Libmeshusers mailing list > Libmeshusers@... > https://lists.sourceforge.net/lists/listinfo/libmeshusers > > > >  > Dmitry Karpeev > Mathematics and Computer Science > Argonne National Laboratory > Argonne, Illinois, USA > and > Computation Institute > University of Chicago > 5735 S. Ellis Avenue > Chicago, IL 60637 >  > Phone: 6302521229 > Fax: 6302525986 
From: subramanya sadasiva <potaman@ou...>  20131121 19:32:32

Hi , I want to use petsc fieldsplit preconditioners with the petscdm solver that has been implemented as part of libmesh. The last time I tried it, I had trouble because dmcreatefielddecomposition was not being called. Is there someone that could guide me with trying to correct this in libmesh? Thanks, Subramanya 
From: Dmitry Karpeyev <karpeev@mc...>  20131126 19:08:45

DMlibMesh should work, but it's in need of an overhaul and simplification. Could you tell me how you intend to use it? That way we can figure out what needs to be done to make it usable. Thanks. Dmitry. On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...>wrote: > Hi , I want to use petsc fieldsplit preconditioners with the petscdm > solver that has been implemented as part of libmesh. The last time I tried > it, I had trouble because dmcreatefielddecomposition was not being called. > Is there someone that could guide me with trying to correct this in > libmesh? Thanks, Subramanya > >  > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and gamechanging > conversations that shape the rapidly evolving mobile landscape. Sign up > now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > _______________________________________________ > Libmeshusers mailing list > Libmeshusers@... > https://lists.sourceforge.net/lists/listinfo/libmeshusers >  Dmitry Karpeev Mathematics and Computer Science Argonne National Laboratory Argonne, Illinois, USA and Computation Institute University of Chicago 5735 S. Ellis Avenue Chicago, IL 60637  Phone: 6302521229 Fax: 6302525986 
From: Subramanya Sadasiva <potaman@ou...>  20131126 19:56:13

Hi Dmitry, I am using the DM solver to solve a Cahn Hilliard equation using a C0 discretization. I would like to use the preconditioner used in http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf I have been able to use the PETSCDM solver with the VI solver to solve the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit preconditioner to work. Thanks, Subramanya On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: > DMlibMesh should work, but it's in need of an overhaul and simplification. > Could you tell me how you intend to use it? That way we can figure out > what needs to be done to make it usable. > Thanks. > Dmitry. > > > On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...> wrote: > Hi , I want to use petsc fieldsplit preconditioners with the petscdm solver that has been implemented as part of libmesh. The last time I tried it, I had trouble because dmcreatefielddecomposition was not being called. Is there someone that could guide me with trying to correct this in libmesh? Thanks, Subramanya >  > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and gamechanging > conversations that shape the rapidly evolving mobile landscape. Sign up now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > _______________________________________________ > Libmeshusers mailing list > Libmeshusers@... > https://lists.sourceforge.net/lists/listinfo/libmeshusers > > > >  > Dmitry Karpeev > Mathematics and Computer Science > Argonne National Laboratory > Argonne, Illinois, USA > and > Computation Institute > University of Chicago > 5735 S. Ellis Avenue > Chicago, IL 60637 >  > Phone: 6302521229 > Fax: 6302525986 
From: Dmitry Karpeyev <karpeev@mc...>  20131126 20:18:21

I assume you are referring to using the Schurcomplement flavor of PCFieldSplit? How many variables do you have? Are they all C0? Is the basis nodal? If so, you don't necessarily need DMlibMesh: Assume you have m P1 variables (maybe m==2?). You can lay your degrees of freedom in the variablemajor order (by this I mean having contiguous nodal coefficients corresponding to a given node  maybe that's called 'nodemajor':). Then use these options: pc_type fieldsplit pc_fieldsplit_block_size m pc_fieldsplit_0_fields 0 pc_fieldsplit_1_fields 1\ pc_fieldsplit_type schur pc_fieldsplit_schur_factorization_type full This will put the 0th (in the zerobase Cspeak) variable into the 0th split, and the first variable in the first split. You can also permute the column blocks, if necessary, or put more variables into each split. You might try pc_fieldsplit_schur_factorization_type upper or lower. The crucial part, however, is to have a good preconditioner for S, which in the terminology of the notes you sent is S = D  C inv(A) B. By default PETSc will use D as the preconditioner for S. That may or may not be good enough. Otherwise you will need to assemble a preconditioner for S, things will get more hairy, and we might need to put more support for that into libMesh. Hope this helps. Dmitry. On Tue, Nov 26, 2013 at 1:56 PM, Subramanya Sadasiva <potaman@...>wrote: > > Hi Dmitry, > I am using the DM solver to solve a Cahn Hilliard equation using a C0 > discretization. I would like to use the preconditioner used in > > > http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf > > > I have been able to use the PETSCDM solver with the VI solver to solve > the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit > preconditioner to work. > > Thanks, > Subramanya > > > On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: > > DMlibMesh should work, but it's in need of an overhaul and simplification. > Could you tell me how you intend to use it? That way we can figure out > what needs to be done to make it usable. > Thanks. > Dmitry. > > > On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...>wrote: > >> Hi , I want to use petsc fieldsplit preconditioners with the petscdm >> solver that has been implemented as part of libmesh. The last time I tried >> it, I had trouble because dmcreatefielddecomposition was not being called. >> Is there someone that could guide me with trying to correct this in >> libmesh? Thanks, Subramanya >> >>  >> Shape the Mobile Experience: Free Subscription >> Software experts and developers: Be at the forefront of tech innovation. >> Intel(R) Software Adrenaline delivers strategic insight and gamechanging >> conversations that shape the rapidly evolving mobile landscape. Sign up >> now. >> >> http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk >> _______________________________________________ >> Libmeshusers mailing list >> Libmeshusers@... >> https://lists.sourceforge.net/lists/listinfo/libmeshusers >> > > > >  > Dmitry Karpeev > Mathematics and Computer Science > Argonne National Laboratory > Argonne, Illinois, USA > and > Computation Institute > University of Chicago > 5735 S. Ellis Avenue > Chicago, IL 60637 >  > Phone: 6302521229 > Fax: 6302525986 > > > 
From: Subramanya Sadasiva <potaman@ou...>  20131126 21:01:34

Hi Dmitry, I was under the impression that I needed to use the DM to use the VI solver. Is that not the case? Thanks, Subramanya. On Nov 26, 2013, at 3:17 PM, Dmitry Karpeyev <karpeev@...> wrote: > I assume you are referring to using the Schurcomplement flavor of PCFieldSplit? > How many variables do you have? Are they all C0? Is the basis nodal? If so, > you don't necessarily need DMlibMesh: > > Assume you have m P1 variables (maybe m==2?). You can lay your degrees of freedom > in the variablemajor order (by this I mean having contiguous nodal coefficients corresponding > to a given node  maybe that's called 'nodemajor':). > Then use these options: > pc_type fieldsplit pc_fieldsplit_block_size m pc_fieldsplit_0_fields 0 pc_fieldsplit_1_fields 1\ > pc_fieldsplit_type schur pc_fieldsplit_schur_factorization_type full > > This will put the 0th (in the zerobase Cspeak) variable into the 0th split, and the first variable > in the first split. You can also permute the column blocks, if necessary, or put more variables > into each split. You might try pc_fieldsplit_schur_factorization_type upper or lower. > > The crucial part, however, is to have a good preconditioner for S, which in the terminology of the notes > you sent is S = D  C inv(A) B. By default PETSc will use D as the preconditioner for S. That may > or may not be good enough. Otherwise you will need to assemble a preconditioner for S, things > will get more hairy, and we might need to put more support for that into libMesh. > > Hope this helps. > Dmitry. > > > On Tue, Nov 26, 2013 at 1:56 PM, Subramanya Sadasiva <potaman@...> wrote: > > Hi Dmitry, > I am using the DM solver to solve a Cahn Hilliard equation using a C0 discretization. I would like to use the preconditioner used in > > http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf > > > I have been able to use the PETSCDM solver with the VI solver to solve the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit preconditioner to work. > > Thanks, > Subramanya > > > On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: > >> DMlibMesh should work, but it's in need of an overhaul and simplification. >> Could you tell me how you intend to use it? That way we can figure out >> what needs to be done to make it usable. >> Thanks. >> Dmitry. >> >> >> On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...> wrote: >> Hi , I want to use petsc fieldsplit preconditioners with the petscdm solver that has been implemented as part of libmesh. The last time I tried it, I had trouble because dmcreatefielddecomposition was not being called. Is there someone that could guide me with trying to correct this in libmesh? Thanks, Subramanya >>  >> Shape the Mobile Experience: Free Subscription >> Software experts and developers: Be at the forefront of tech innovation. >> Intel(R) Software Adrenaline delivers strategic insight and gamechanging >> conversations that shape the rapidly evolving mobile landscape. Sign up now. >> http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk >> _______________________________________________ >> Libmeshusers mailing list >> Libmeshusers@... >> https://lists.sourceforge.net/lists/listinfo/libmeshusers >> >> >> >>  >> Dmitry Karpeev >> Mathematics and Computer Science >> Argonne National Laboratory >> Argonne, Illinois, USA >> and >> Computation Institute >> University of Chicago >> 5735 S. Ellis Avenue >> Chicago, IL 60637 >>  >> Phone: 6302521229 >> Fax: 6302525986 > > > > 
From: Dmitry Karpeyev <karpeev@mc...>  20131126 21:04:45

Ah, that might still be true, although that ought to be changed. In any event, you can use the DM to set the bounds for the VI, and set up PCFieldSplit as I explained in the previous email. Let me know if this works for you. Cheers, Dmitry. On Tue, Nov 26, 2013 at 3:01 PM, Subramanya Sadasiva <potaman@...>wrote: > Hi Dmitry, > I was under the impression that I needed to use the DM to use the VI > solver. Is that not the case? > Thanks, > Subramanya. > > On Nov 26, 2013, at 3:17 PM, Dmitry Karpeyev <karpeev@...> wrote: > > I assume you are referring to using the Schurcomplement flavor of > PCFieldSplit? > How many variables do you have? Are they all C0? Is the basis nodal? If > so, > you don't necessarily need DMlibMesh: > > Assume you have m P1 variables (maybe m==2?). You can lay your degrees of > freedom > in the variablemajor order (by this I mean having contiguous nodal > coefficients corresponding > to a given node  maybe that's called 'nodemajor':). > Then use these options: > pc_type fieldsplit pc_fieldsplit_block_size m pc_fieldsplit_0_fields 0 > pc_fieldsplit_1_fields 1\ > pc_fieldsplit_type schur pc_fieldsplit_schur_factorization_type full > > This will put the 0th (in the zerobase Cspeak) variable into the 0th > split, and the first variable > in the first split. You can also permute the column blocks, if necessary, > or put more variables > into each split. You might try pc_fieldsplit_schur_factorization_type > upper or lower. > > The crucial part, however, is to have a good preconditioner for S, which > in the terminology of the notes > you sent is S = D  C inv(A) B. By default PETSc will use D as the > preconditioner for S. That may > or may not be good enough. Otherwise you will need to assemble a > preconditioner for S, things > will get more hairy, and we might need to put more support for that into > libMesh. > > Hope this helps. > Dmitry. > > > On Tue, Nov 26, 2013 at 1:56 PM, Subramanya Sadasiva <potaman@...>wrote: > >> >> Hi Dmitry, >> I am using the DM solver to solve a Cahn Hilliard equation using a C0 >> discretization. I would like to use the preconditioner used in >> >> >> http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf >> >> >> I have been able to use the PETSCDM solver with the VI solver to solve >> the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit >> preconditioner to work. >> >> Thanks, >> Subramanya >> >> >> On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: >> >> DMlibMesh should work, but it's in need of an overhaul and simplification. >> Could you tell me how you intend to use it? That way we can figure out >> what needs to be done to make it usable. >> Thanks. >> Dmitry. >> >> >> On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@... >> > wrote: >> >>> Hi , I want to use petsc fieldsplit preconditioners with the petscdm >>> solver that has been implemented as part of libmesh. The last time I tried >>> it, I had trouble because dmcreatefielddecomposition was not being called. >>> Is there someone that could guide me with trying to correct this in >>> libmesh? Thanks, Subramanya >>> >>>  >>> Shape the Mobile Experience: Free Subscription >>> Software experts and developers: Be at the forefront of tech innovation. >>> Intel(R) Software Adrenaline delivers strategic insight and gamechanging >>> conversations that shape the rapidly evolving mobile landscape. Sign up >>> now. >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Libmeshusers mailing list >>> Libmeshusers@... >>> https://lists.sourceforge.net/lists/listinfo/libmeshusers >>> >> >> >> >>  >> Dmitry Karpeev >> Mathematics and Computer Science >> Argonne National Laboratory >> Argonne, Illinois, USA >> and >> Computation Institute >> University of Chicago >> 5735 S. Ellis Avenue >> Chicago, IL 60637 >>  >> Phone: 6302521229 >> Fax: 6302525986 >> >> >> > > > > 
From: Subramanya Sadasiva <potaman@ou...>  20131126 21:09:27

Hi Dmitry, Thanks very much. I will try if that works. Subramanya On Nov 26, 2013, at 4:03 PM, Dmitry Karpeyev <karpeev@...> wrote: > Ah, that might still be true, although that ought to be changed. > In any event, you can use the DM to set the bounds for the VI, > and set up PCFieldSplit as I explained in the previous email. > > Let me know if this works for you. > Cheers, > Dmitry. > > > On Tue, Nov 26, 2013 at 3:01 PM, Subramanya Sadasiva <potaman@...> wrote: > Hi Dmitry, > I was under the impression that I needed to use the DM to use the VI solver. Is that not the case? > Thanks, > Subramanya. > > On Nov 26, 2013, at 3:17 PM, Dmitry Karpeyev <karpeev@...> wrote: > >> I assume you are referring to using the Schurcomplement flavor of PCFieldSplit? >> How many variables do you have? Are they all C0? Is the basis nodal? If so, >> you don't necessarily need DMlibMesh: >> >> Assume you have m P1 variables (maybe m==2?). You can lay your degrees of freedom >> in the variablemajor order (by this I mean having contiguous nodal coefficients corresponding >> to a given node  maybe that's called 'nodemajor':). >> Then use these options: >> pc_type fieldsplit pc_fieldsplit_block_size m pc_fieldsplit_0_fields 0 pc_fieldsplit_1_fields 1\ >> pc_fieldsplit_type schur pc_fieldsplit_schur_factorization_type full >> >> This will put the 0th (in the zerobase Cspeak) variable into the 0th split, and the first variable >> in the first split. You can also permute the column blocks, if necessary, or put more variables >> into each split. You might try pc_fieldsplit_schur_factorization_type upper or lower. >> >> The crucial part, however, is to have a good preconditioner for S, which in the terminology of the notes >> you sent is S = D  C inv(A) B. By default PETSc will use D as the preconditioner for S. That may >> or may not be good enough. Otherwise you will need to assemble a preconditioner for S, things >> will get more hairy, and we might need to put more support for that into libMesh. >> >> Hope this helps. >> Dmitry. >> >> >> On Tue, Nov 26, 2013 at 1:56 PM, Subramanya Sadasiva <potaman@...> wrote: >> >> Hi Dmitry, >> I am using the DM solver to solve a Cahn Hilliard equation using a C0 discretization. I would like to use the preconditioner used in >> >> http://www.mcs.anl.gov/~anitescu/Presentations/2011/anitescu2011SIAMCSEDVI.pdf >> >> >> I have been able to use the PETSCDM solver with the VI solver to solve the Cahn Hilliard equation, but I haven’t been able to get a fieldsplit preconditioner to work. >> >> Thanks, >> Subramanya >> >> >> On Nov 26, 2013, at 2:07 PM, Dmitry Karpeyev <karpeev@...> wrote: >> >>> DMlibMesh should work, but it's in need of an overhaul and simplification. >>> Could you tell me how you intend to use it? That way we can figure out >>> what needs to be done to make it usable. >>> Thanks. >>> Dmitry. >>> >>> >>> On Thu, Nov 21, 2013 at 1:32 PM, subramanya sadasiva <potaman@...> wrote: >>> Hi , I want to use petsc fieldsplit preconditioners with the petscdm solver that has been implemented as part of libmesh. The last time I tried it, I had trouble because dmcreatefielddecomposition was not being called. Is there someone that could guide me with trying to correct this in libmesh? Thanks, Subramanya >>>  >>> Shape the Mobile Experience: Free Subscription >>> Software experts and developers: Be at the forefront of tech innovation. >>> Intel(R) Software Adrenaline delivers strategic insight and gamechanging >>> conversations that shape the rapidly evolving mobile landscape. Sign up now. >>> http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Libmeshusers mailing list >>> Libmeshusers@... >>> https://lists.sourceforge.net/lists/listinfo/libmeshusers >>> >>> >>> >>>  >>> Dmitry Karpeev >>> Mathematics and Computer Science >>> Argonne National Laboratory >>> Argonne, Illinois, USA >>> and >>> Computation Institute >>> University of Chicago >>> 5735 S. Ellis Avenue >>> Chicago, IL 60637 >>>  >>> Phone: 6302521229 >>> Fax: 6302525986 >> >> >> >> > > > > 