<div dir="ltr">Ok thank you very much yet again!<div><br></div><div>Adoni</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 11 November 2013 12:49, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="im">On Mon, Nov 11, 2013 at 6:47 AM, Anthony Vergottis <span dir="ltr"><<a href="mailto:a.vergottis@ucl.ac.uk" target="_blank">a.vergottis@ucl.ac.uk</a>></span> wrote:<br>
</div><div class="gmail_extra"><div class="gmail_quote"><div class="im">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">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? <div>

<br></div><div>Let me elaborate - for example if I am passing a mesh structure (triangular 3 node elements) as the following:</div>
<div><br></div><div>Elem 0: N1 N5 N6 </div><div>etc.....</div><div>where N# is the node tag.</div><div><br></div><div>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?</div>

</div></blockquote><div><br></div></div><div>I believe the answer is yes. I could be more specific with a concrete example. For instance, the DM can</div><div>calculate a parallel residual without the user ever seeing MPI.</div>

<div><br></div><div>   Matt</div><div><div class="h5"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>I hope I have explained this well.</div>
<div><br></div>
<div>Thanks again.</div><div>Adoni</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 11 November 2013 12:33, Anthony Vergottis <span dir="ltr"><<a href="mailto:a.vergottis@ucl.ac.uk" target="_blank">a.vergottis@ucl.ac.uk</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Thanks mate that worked!<div><br></div><div>Thanks.</div><div>Adoni</div><div><div><br></div></div></div>


<div><div><div class="gmail_extra"><br><br><div class="gmail_quote">On 11 November 2013 12:29, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>On Mon, Nov 11, 2013 at 6:25 AM, Anthony Vergottis <span dir="ltr"><<a href="mailto:a.vergottis@ucl.ac.uk" target="_blank">a.vergottis@ucl.ac.uk</a>></span> wrote:<br>



</div><div class="gmail_extra"><div class="gmail_quote"><div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">I compile ex12 but when I run the program I get this in the terminal.</div>




</blockquote><div><br></div></div><div>I guess I should make better defaults. Here are the runs I use for ex12:</div><div><br></div><div>  <a href="https://bitbucket.org/petsc/petsc/src/a965ca046084fa53248a41da989a0a62cb6266ea/config/builder.py?at=master#cl-180" target="_blank">https://bitbucket.org/petsc/petsc/src/a965ca046084fa53248a41da989a0a62cb6266ea/config/builder.py?at=master#cl-180</a><br>




</div><div><br></div><div>You can see that the problem here is that the -petscspace_order has not been set. So to test P_1 I use</div><div><br></div><div>  <span style="color:rgb(51,51,51);font-family:'Bitstream Vera Sans Mono','DejaVu Sans Mono',Monaco,monospace;font-size:12px;line-height:1.4000000000000001">-run_type test -refinement_limit 0.0    -bc_type dirichlet -interpolate 0 -petscspace_order 1 -show_initial -dm_plex_print_fem 1</span></div>




<div><span style="color:rgb(51,51,51);font-family:'Bitstream Vera Sans Mono','DejaVu Sans Mono',Monaco,monospace;font-size:12px;line-height:1.4000000000000001"><br></span></div><div>and then take away run_type (or use full) to solve the problem. SNES ex62 is the Stokes problem, and run parameters are</div>




<div>in the same place.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">




<div dir="ltr"><div><div>adoni@Adoni:~/Desktop/petsc-lat/src/snes/examples/tutorials$ make ex12</div><div>/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</div>





<div>/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 </div>





<div>/bin/rm -f ex12.o</div><div>adoni@Adoni:~/Desktop/petsc-lat/src/snes/examples/tutorials$ mpiexec -np 2 ./ex12</div><div>[0]PETSC ERROR: --------------------- Error Message ------------------------------------</div><div>





[0]PETSC ERROR: Invalid argument!</div><div>[0]PETSC ERROR: The section cell closure size 0 != dual space dimension 1!</div><div>[0]PETSC ERROR: ------------------------------------------------------------------------</div>





<div>[0]PETSC ERROR: Petsc Development GIT revision: unknown  GIT Date: unknown</div><div>[0]PETSC ERROR: See docs/changes/index.html for recent updates.</div><div>[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.</div>





<div>[0]PETSC ERROR: See docs/index.html for manual pages.</div><div>[0]PETSC ERROR: ------------------------------------------------------------------------</div><div>[0]PETSC ERROR: ./ex12 on a arch-linux2-c-debug named Adoni by adoni Mon Nov 11 12:21:49 2013</div>





<div>[0]PETSC ERROR: Libraries linked from /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib</div><div>[0]PETSC ERROR: Configure run at Fri Nov  8 20:03:26 2013</div><div>[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</div>





<div>[0]PETSC ERROR: ------------------------------------------------------------------------</div><div>[0]PETSC ERROR: DMPlexProjectFunctionLocal() line 207 in src/dm/impls/plex/plexfem.c</div><div>[0]PETSC ERROR: DMPlexProjectFunction() line 258 in src/dm/impls/plex/plexfem.c</div>





<div>[0]PETSC ERROR: main() line 686 in /home/adoni/Desktop/petsc-lat/src/snes/examples/tutorials/ex12.c</div><div>[0]PETSC ERROR: --------------------- Error Message ------------------------------------</div><div>[0]PETSC ERROR: Invalid argument!</div>





<div>[0]PETSC ERROR: The section cell closure size 0 != dual space dimension 1!</div><div>[0]PETSC ERROR: ------------------------------------------------------------------------</div><div>[0]PETSC ERROR: Petsc Development GIT revision: unknown  GIT Date: unknown</div>





<div>[0]PETSC ERROR: See docs/changes/index.html for recent updates.</div><div>[0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.</div><div>[0]PETSC ERROR: See docs/index.html for manual pages.</div><div>





[0]PETSC ERROR: ------------------------------------------------------------------------</div><div>[0]PETSC ERROR: ./ex12 on a arch-linux2-c-debug named Adoni by adoni Mon Nov 11 12:21:49 2013</div><div>[0]PETSC ERROR: Libraries linked from /home/adoni/Desktop/petsc-lat/arch-linux2-c-debug/lib</div>





<div>[0]PETSC ERROR: Configure run at Fri Nov  8 20:03:26 2013</div><div>[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</div>





<div>[0]PETSC ERROR: ------------------------------------------------------------------------</div><div>[0]PETSC ERROR: DMPlexProjectFunctionLocal() line 207 in src/dm/impls/plex/plexfem.c</div><div>[0]PETSC ERROR: DMPlexProjectFunction() line 258 in src/dm/impls/plex/plexfem.c</div>





<div>[0]PETSC ERROR: main() line 686 in /home/adoni/Desktop/petsc-lat/src/snes/examples/tutorials/ex12.c</div><div>application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0</div><div>[unset]: aborting job:</div><div>application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0</div>





<div>application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0</div><div>[unset]: aborting job:</div><div>application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0</div></div><div><br></div><div>This occurs for all process counts.</div>





<div><br></div><div>Thanks.</div><div><br></div><div>Adoni</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 11 November 2013 12:19, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br>





<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>On Mon, Nov 11, 2013 at 6:10 AM, Anthony Vergottis <span dir="ltr"><<a href="mailto:a.vergottis@ucl.ac.uk" target="_blank">a.vergottis@ucl.ac.uk</a>></span> wrote:<br>





</div><div class="gmail_extra"><div class="gmail_quote"><div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Dear All,<div><br></div><div>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?</div>






</div></blockquote><div><br></div></div><div>Did you look at SNES ex12? Is it not understandable?</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">






<div dir="ltr"><div>Thanks in advance.</div><div><br></div><div>Regards,</div><div>Adonis</div></div>
</blockquote></div></div><span><font color="#888888"><br><br clear="all"><span><font color="#888888"><span><font color="#888888"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>






-- Norbert Wiener
</font></span></font></span></font></span></div></div><span><font color="#888888">
</font></span></blockquote></div><span><font color="#888888"><br></font></span></div><span><font color="#888888">
</font></span></blockquote></div></div></div><span><font color="#888888"><div><div><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>




-- Norbert Wiener
</div></div></font></span></div></div><span><font color="#888888">
</font></span></blockquote></div><span><font color="#888888"><br></font></span></div>
</div></div></blockquote></div><br></div>
</blockquote></div></div></div><div><div class="h5"><br><br clear="all"><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>

-- Norbert Wiener
</div></div></div></div>
</blockquote></div><br></div>