On Fri, Feb 28, 2014 at 2:10 PM, Xiangdong <[email protected]> wrote:
> > > > On Fri, Feb 28, 2014 at 4:48 PM, Barry Smith <[email protected]> wrote: > >> >> On Feb 28, 2014, at 3:27 PM, Xiangdong <[email protected]> wrote: >> >> > >> > >> > >> > On Fri, Feb 28, 2014 at 4:21 PM, Matthew Knepley <[email protected]> >> wrote: >> > On Fri, Feb 28, 2014 at 1:16 PM, Xiangdong <[email protected]> wrote: >> > If I assembly the matrix with MatSetValuesStencil and use >> KspSetOpreators for Ksp, do I need to call KspSetDM first? >> > >> > No >> > >> > What is the key difference or advantage of using KspSetComputeOperators >> against KspSetOperators? >> > >> > With the later, you have to manage creating and preallocating the >> matrix. >> > >> > If I use DMCreateMatrix and MatSetValuesStencil, I do not need to >> preallocate the matrix. >> >> Correct. >> >> The SetComputeOperators and KSPSetDM is useful if you wish to use >> multigrid on system since PCMG will call your compute operators function on >> each level for you automatically. See src/ksp/ksp/examples/tutorials/ >> ex25.c ex28.c ex29.c ex31.c ex32.c ex34.c ex45.c ex50.c If you are just >> solving the one system and not using multigrid then there is no particular >> advantage in SetComputeOperators and KSPSetDM >> > > If I want to use multigrid as a preconditioner, I have to call > KspSetComputeOperators. Is this true? > No, you can always do everything by hand, but that call simplifies the job. Matt > Thank you. > > Xiangdong > > > > >> >> Barry >> >> > >> > Xiangdong >> > >> > >> > >> > >> > Matt >> > >> > Thanks you. >> > >> > Xiangdong >> > >> > >> > On Tue, Feb 25, 2014 at 4:24 PM, Jed Brown <[email protected]> wrote: >> > Xiangdong <[email protected]> writes: >> > > I am not clear about this. In this example, where is the format >> declaration >> > > (e.g.,mpiaij) of Mat jac? Why is this mat jac always distributed in >> > > a compatible way as the DM vectors? >> > >> > src/ksp/ksp/examples/tutorials/ex25.c calls KSPSetDM and sets functions >> > to assemble the matrices and right hand side. Those objects are created >> > internally (you can use -dm_mat_type sbaij if you like) and the user >> > doesn't have to see them. >> > >> > >> > >> > >> > -- >> > What most experimenters take for granted before they begin their >> experiments is infinitely more interesting than any results to which their >> experiments lead. >> > -- Norbert Wiener >> > >> >> > -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener
