From: li p. <li...@ya...> - 2008-02-05 11:51:31
|
hi Yujie, I think you want to know how libmesh assembles system matrix. In the assemble function, libmesh has a loop over all the elements. Each element computes its own contribution and then sends to the sparse matrix. The system matrix is a Petsc sparse matrix. There are two flags for sending values in Petsc, ADD_VALUES and SET_VALUES. Here, the ADD_VALUES is used. In the parallel scheme, the elements are seperated into different processes. So back to your question, it doesn't matter whether this unkown variable is on the local process or somewhere else. At last you'll get the same sparse matrix as I get in the serial scheme. Petsc can add values to the unknown variables which does not exist in the local process. Only my understanding ;-) Please correct me. pan --- Yujie <rec...@gm...> wrote: > Hi, everyone > > I am wondering a problem about unkown varialbes (x) > distribution in libmesh. > Practically, you use finite element method to solve > PDE, you will finally > get the linear equation Ax=b. In libmesh, if you > solve it parallelly, you > need to first partition the domain, that is A is > partionted. However, each > node in the cluster has all the variables x or only > the part of x? Could you > give me some advice? thanks a lot. > > Regards, > Yujie > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio > 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/> _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > ____________________________________________________________________________________ Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ |