<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hello,<div><br></div><div>I have written a C/C++ code on unstructured mesh (tetrahedra) , using pthreads but not MPI.</div><div><br></div><div>1 Is it a good idea to use petsc as a framework as an easier high level library&nbsp;</div><div>for interface to MPI in order to parallelize the code&nbsp;</div><div><br></div><div><br></div><div>2. &nbsp;If yes. I have fields on various location on my mesh ; some variables are&nbsp;</div><div>&nbsp;&nbsp; &nbsp; defined at cell center, otheres on edges, and others on faces.</div><div>&nbsp;&nbsp; &nbsp; &nbsp;Does petsc allow to avoid to deal with low level MPI routines to&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp;get and set the ghost values between partitions &nbsp;to evaluate some functions</div><div>&nbsp;&nbsp; &nbsp; &nbsp;such as fluxes at cell faces which needs different variables which may</div><div>&nbsp;&nbsp; &nbsp; &nbsp; lie on different partitions &nbsp;?</div><div>&nbsp;&nbsp; &nbsp; &nbsp;(I have seen on the talk&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp;<a href="http://www.mcs.anl.gov/petsc/petsc-as/documentation/tutorials/ARSC2010.pdf">http://www.mcs.anl.gov/petsc/petsc-as/documentation/tutorials/ARSC2010.pdf</a></div><div>&nbsp;&nbsp; &nbsp; &nbsp;page 81</div><div>&nbsp;&nbsp; &nbsp; &nbsp;some code lines which suggest that it is simple&nbsp;</div><div>&nbsp;&nbsp; <span class="Apple-style-span" style="font-size: 25px; "><font class="Apple-style-span" color="#223CFB">&nbsp;&nbsp;</font></span><span class="Apple-style-span" style="font-size: 20px; "><font class="Apple-style-span" color="#223CFB">/</font></span><span style="font: normal normal normal 10px/normal Helvetica; font-size: 21px; "><font class="Apple-style-span" color="#223CFB">∗ </font></span><span class="Apple-style-span" style="font-size: 20px; "><font class="Apple-style-span" color="#223CFB">Code to communicate nonlocal ghost point data </font></span><span style="font: normal normal normal 10px/normal Helvetica; font-size: 21px; "><font class="Apple-style-span" color="#223CFB">∗</font></span><span class="Apple-style-span" style="font-size: 20px; "><font class="Apple-style-span" color="#223CFB">/&nbsp;</font></span></div><div style="font-size: 25px; "><span class="Apple-style-span" style="font-size: 20px; "><span class="Apple-tab-span" style="white-space:pre"><font class="Apple-style-span" color="#223CFB">        </font></span><font class="Apple-style-span" color="#223CFB">VecGetArray(F, &amp;f );&nbsp;</font></span></div><div style="font-size: 25px; "><span class="Apple-style-span" style="font-size: 20px; "><span class="Apple-tab-span" style="white-space:pre"><font class="Apple-style-span" color="#223CFB">        </font></span><font class="Apple-style-span" color="#223CFB">/</font></span><span class="Apple-style-span" style="font-size: 20px; "><span style="font: normal normal normal 10px/normal Helvetica; font-size: 21px; "><font class="Apple-style-span" color="#223CFB">∗ </font></span></span><span class="Apple-style-span" style="font-size: 20px; "><font class="Apple-style-span" color="#223CFB">Code to compute local function components </font></span><span class="Apple-style-span" style="font-size: 20px; "><span style="font: normal normal normal 10px/normal Helvetica; font-size: 21px; "><font class="Apple-style-span" color="#223CFB">∗</font></span></span><span class="Apple-style-span" style="font-size: 20px; "><font class="Apple-style-span" color="#223CFB">/&nbsp;</font></span></div><div style="font-size: 25px; "><span class="Apple-style-span" style="font-size: 20px; "><span class="Apple-tab-span" style="white-space:pre"><font class="Apple-style-span" color="#223CFB">        </font></span><font class="Apple-style-span" color="#223CFB">VecRestoreArray(F, &amp;f );</font></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; font-size: 20px; "><span class="Apple-tab-span" style="white-space:pre"><font class="Apple-style-span" color="#223CFB">        </font></span><font class="Apple-style-span" color="#223CFB">return 0;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; font-size: 20px; "><font class="Apple-style-span" color="#223CFB"><br></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 9px/normal Helvetica; font-size: 20px; "><font class="Apple-style-span" color="#223CFB"><div style="color: rgb(0, 0, 0); font-size: medium; ">&nbsp;&nbsp; &nbsp; &nbsp; Would it be possible to get some advice please ?</div><div style="color: rgb(0, 0, 0); font-size: medium; "><br></div><div style="color: rgb(0, 0, 0); font-size: medium; "><br></div><div style="color: rgb(0, 0, 0); font-size: medium; "><span class="Apple-tab-span" style="white-space:pre">        </span>Thanks</div><div style="color: rgb(0, 0, 0); font-size: medium; "><br></div><div style="color: rgb(0, 0, 0); font-size: medium; "><span class="Apple-tab-span" style="white-space:pre">        </span>Tahar</div><div style="color: rgb(0, 0, 0); font-size: medium; "><br></div><div style="color: rgb(0, 0, 0); font-size: medium; "><br></div><div><br></div></font></div><br><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><span class="Apple-style-span" style="font-size: 12px; "><div>--------------------------------------------</div><div>T. Amari</div><div>Centre de Physique Theorique</div><div>Ecole Polytechnique</div><div>91128 Palaiseau Cedex France</div><div>tel : 33 1 69 33 42 52</div><div>fax: 33 1 69 33 49 49</div><div>email: &lt;<a href="mailto:amari@cpht.polytechnique.fr">mailto:amari@cpht.polytechnique.fr</a>&gt;</div><div>URL : <a href="http://www.cpht.polytechnique.fr/cpht/amari">http://www.cpht.polytechnique.fr/cpht/amari</a></div><div><br></div></span></div></div></span><br class="Apple-interchange-newline"></span><br class="Apple-interchange-newline">
</div>
<br></body></html>