On Mon, Nov 11, 2013 at 6:47 AM, Anthony Vergottis <[email protected]>wrote:
> I would also like to ask as I have some confusion. Are the DM objects > capable of handling all aspects of the parallel computations within a given > problem? > > Let me elaborate - for example if I am passing a mesh structure > (triangular 3 node elements) as the following: > > Elem 0: N1 N5 N6 > etc..... > where N# is the node tag. > > into a DM object and then perform a decomposition for as many processes I > required. When the mesh partitions are distributed to their processes do I > then have the ability by using DM objects or something else built into > PETSc to compute specific calculations on each process without the need to > hardcode any MPI? > I believe the answer is yes. I could be more specific with a concrete example. For instance, the DM can calculate a parallel residual without the user ever seeing MPI. Matt > I hope I have explained this well. > > Thanks again. > Adoni > > > On 11 November 2013 12:33, Anthony Vergottis <[email protected]>wrote: > >> Thanks mate that worked! >> >> Thanks. >> Adoni >> >> >> >> On 11 November 2013 12:29, Matthew Knepley <[email protected]> wrote: >> >>> On Mon, Nov 11, 2013 at 6:25 AM, Anthony Vergottis < >>> [email protected]> wrote: >>> >>>> I compile ex12 but when I run the program I get this in the terminal. >>>> >>> >>> I guess I should make better defaults. Here are the runs I use for ex12: >>> >>> >>> https://bitbucket.org/petsc/petsc/src/a965ca046084fa53248a41da989a0a62cb6266ea/config/builder.py?at=master#cl-180 >>> >>> You can see that the problem here is that the -petscspace_order has not >>> been set. So to test P_1 I use >>> >>> -run_type test -refinement_limit 0.0 -bc_type dirichlet -interpolate >>> 0 -petscspace_order 1 -show_initial -dm_plex_print_fem 1 >>> >>> and then take away run_type (or use full) to solve the problem. SNES >>> ex62 is the Stokes problem, and run parameters are >>> in the same place. >>> >>> Thanks, >>> >>> Matt >>> >>> >>>> adoni@Adoni:~/Desktop/petsc-lat/src/snes/examples/tutorials$ make ex12 >>>> /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/bin/mpicxx -o ex12.o >>>> -c -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g >>>> -fPIC -I/home/adoni/Desktop/petsc-lat/include >>>> -I/home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/include >>>> /home/adoni/Desktop/petsc-lat/src/snes/examples/tutorials/ex12.c >>>> /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/bin/mpicxx -Wall >>>> -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g -o ex12 >>>> ex12.o -Wl,-rpath,/home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib >>>> -L/home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib -lpetsc >>>> -Wl,-rpath,/home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib -lflapack >>>> -lfblas -ltriangle -lX11 -lparmetis -lmetis -lpthread -lchaco -lctetgen -lm >>>> -Wl,-rpath,/usr/lib/gcc/x86_64-linux-gnu/4.6 >>>> -L/usr/lib/gcc/x86_64-linux-gnu/4.6 -Wl,-rpath,/usr/lib/x86_64-linux-gnu >>>> -L/usr/lib/x86_64-linux-gnu -Wl,-rpath,/lib/x86_64-linux-gnu >>>> -L/lib/x86_64-linux-gnu -lmpichf90 -lgfortran -lm -lgfortran -lm -lquadmath >>>> -lm -lmpichcxx -lstdc++ -ldl -lmpich -lopa -lmpl -lrt -lpthread -lgcc_s >>>> -ldl >>>> /bin/rm -f ex12.o >>>> adoni@Adoni:~/Desktop/petsc-lat/src/snes/examples/tutorials$ mpiexec >>>> -np 2 ./ex12 >>>> [0]PETSC ERROR: --------------------- Error Message >>>> ------------------------------------ >>>> [0]PETSC ERROR: Invalid argument! >>>> [0]PETSC ERROR: The section cell closure size 0 != dual space dimension >>>> 1! >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: Petsc Development GIT revision: unknown GIT Date: >>>> unknown >>>> [0]PETSC ERROR: See docs/changes/index.html for recent updates. >>>> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. >>>> [0]PETSC ERROR: See docs/index.html for manual pages. >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: ./ex12 on a arch-linux2-c-debug named Adoni by adoni >>>> Mon Nov 11 12:21:49 2013 >>>> [0]PETSC ERROR: Libraries linked from >>>> /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib >>>> [0]PETSC ERROR: Configure run at Fri Nov 8 20:03:26 2013 >>>> [0]PETSC ERROR: Configure options --with-clanguage=c++ >>>> --with-shared-libraries=1 --download-f-blas-lapack --download-mpich >>>> --download-boost --download-triangle --download-ctetgen --download-chaco >>>> --download-metis --download-parmetis >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: DMPlexProjectFunctionLocal() line 207 in >>>> src/dm/impls/plex/plexfem.c >>>> [0]PETSC ERROR: DMPlexProjectFunction() line 258 in >>>> src/dm/impls/plex/plexfem.c >>>> [0]PETSC ERROR: main() line 686 in >>>> /home/adoni/Desktop/petsc-lat/src/snes/examples/tutorials/ex12.c >>>> [0]PETSC ERROR: --------------------- Error Message >>>> ------------------------------------ >>>> [0]PETSC ERROR: Invalid argument! >>>> [0]PETSC ERROR: The section cell closure size 0 != dual space dimension >>>> 1! >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: Petsc Development GIT revision: unknown GIT Date: >>>> unknown >>>> [0]PETSC ERROR: See docs/changes/index.html for recent updates. >>>> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. >>>> [0]PETSC ERROR: See docs/index.html for manual pages. >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: ./ex12 on a arch-linux2-c-debug named Adoni by adoni >>>> Mon Nov 11 12:21:49 2013 >>>> [0]PETSC ERROR: Libraries linked from >>>> /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib >>>> [0]PETSC ERROR: Configure run at Fri Nov 8 20:03:26 2013 >>>> [0]PETSC ERROR: Configure options --with-clanguage=c++ >>>> --with-shared-libraries=1 --download-f-blas-lapack --download-mpich >>>> --download-boost --download-triangle --download-ctetgen --download-chaco >>>> --download-metis --download-parmetis >>>> [0]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [0]PETSC ERROR: DMPlexProjectFunctionLocal() line 207 in >>>> src/dm/impls/plex/plexfem.c >>>> [0]PETSC ERROR: DMPlexProjectFunction() line 258 in >>>> src/dm/impls/plex/plexfem.c >>>> [0]PETSC ERROR: main() line 686 in >>>> /home/adoni/Desktop/petsc-lat/src/snes/examples/tutorials/ex12.c >>>> application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0 >>>> [unset]: aborting job: >>>> application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0 >>>> application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0 >>>> [unset]: aborting job: >>>> application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0 >>>> >>>> This occurs for all process counts. >>>> >>>> Thanks. >>>> >>>> Adoni >>>> >>>> >>>> On 11 November 2013 12:19, Matthew Knepley <[email protected]> wrote: >>>> >>>>> On Mon, Nov 11, 2013 at 6:10 AM, Anthony Vergottis < >>>>> [email protected]> wrote: >>>>> >>>>>> Dear All, >>>>>> >>>>>> I am trying to find a good example within PETSc that examples with >>>>>> some detail the use of DM objects within a parallel and FEM framework. I >>>>>> have looked at most of the example and have not found anything like this. >>>>>> Is there any other material available on the subject from any other >>>>>> source >>>>>> or maybe I missed something within the PETSc full download file? >>>>>> >>>>> >>>>> Did you look at SNES ex12? Is it not understandable? >>>>> >>>>> Thanks, >>>>> >>>>> Matt >>>>> >>>>> >>>>>> Thanks in advance. >>>>>> >>>>>> Regards, >>>>>> Adonis >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> 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 >>> >> >> > -- 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
