<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div class="">@Markus,</div>
<div class=""><br class="">
</div>
<div class="">I passed a communicator I got from the Dune::Fem::MPIManager but the error persists:</div>
<div class=""><br class="">
</div>
<div class="">dune-peits: /home/vagrant/dune-grid-2.6.0/dune/grid/io/file/dgfparser/gridptr.hh:291: const std::vector<double>& Dune::GridPtr<GridType>::parameters(const Entity&) const [with Entity = Dune::Entity<0, 3, const Dune::ALU3dGrid<3, 3, (Dune::ALU3dGridElementType)4,
 Dune::ALUGridMPIComm>, Dune::ALU3dGridEntity>; GridType = Dune::ALUGrid<3, 3, (Dune::ALUGridElementType)0, (Dune::ALUGridRefinementType)0>]: Assertion `(unsigned int)gridView.indexSet().index( entity ) < elParam_.size()' failed.</div>
<div class=""><br class="">
</div>
<div class="">When I print out the indexSet.size( 0 ) from which elParam_.size() is initialised, I get:</div>
<div class=""><br class="">
</div>
<div class="">
<div class="">indexSet.size( 0 ) before the elParam_ initialisation: 0</div>
<div class="">After the DFGfactory call, after initialize, elParam_ size is: 0</div>
</div>
<div class=""><br class="">
</div>
<div class="">For the MPI rank 1. Any thoughts maybe ?</div>
<div class="">That’d be really appreciated.</div>
<div class=""><br class="">
</div>
<div class="">Best wishes,</div>
<br class="">
<div class="">
<div style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
Dr. Roland Guichard </div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
Research Software Engineer</div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
UCL-RITS</div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
Internal Extension: 86947</div>
External Number: 02031086947
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<br class="">
</div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<br class="">
</div>
<br class="Apple-interchange-newline">
</div>
</div>
<br class="Apple-interchange-newline">
</div>
<br class="Apple-interchange-newline">
<br class="Apple-interchange-newline">
</div>
<div><br class="">
<blockquote type="cite" class="">
<div class="">On 5 Jul 2019, at 15:06, Guichard, Roland <<a href="mailto:r.guichard@ucl.ac.uk" class="">r.guichard@ucl.ac.uk</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div class="">
<div style="letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
Thank you for the clarification. Some comments below:</div>
</div>
</div>
</div>
</div>
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On 5 Jul 2019, at 14:38, Jö Fahlke <<a href="mailto:jorrit.fahlke@wwu.de" class="">jorrit.fahlke@wwu.de</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div class="">Am Fr,  5. Jul 2019, 12:28:51 +0000 schrieb Guichard, Roland:<br class="">
<blockquote type="cite" class="">I see thanks.<br class="">
A quick question though, does it mean that there are several MPI initializations possible within Dune and the communicator that needs to be passed to the GridPtr (from dune-fem) is responsible for handling the mesh in parallel ?<br class="">
</blockquote>
<br class="">
MPI_Init is only ever called once.<br class="">
</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Yes, but potentially through multiple ways. I mean by this that for instance the Dune::Fem::MPIManager::initialize( argc, argv ) implicitly calls the <span class="n">MPIHelper</span><span class="o">::</span><span class="n">instance</span><span class="p">(</span>
<span class="n">argc</span><span class="p">,</span> <span class="n">argv</span> <span class="p">
). I understand that managers are wrappers around the MPIHelper one. However what I don’t quiet get so far is that, in the code, MPI ranks and size are retrieved using direct MPI calls:</span></div>
<div class=""><span class="p"><br class="">
</span></div>
<div class=""><span class="p">
<div class="">MPI_Comm_rank(MPI_COMM_WORLD, &myRank);</div>
<div class="">MPI_Comm_size(MPI_COMM_WORLD, &numProcs);</div>
<div class=""><br class="">
</div>
<div class="">But since the managers provide that functionality I don’t see the point in doing this. Ideally and for readability, you would access anything you need through a single manager. And this also applies to the communicator. </div>
<div class="">But that is merely my opinion.</div>
</span></div>
<div class=""><br class="">
</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<div class="">Though it is up to the grid manager implementation which MPI communicators are<br class="">
supported.  Some managers may implicitly assume MPI_COMM_WORLD, others may not<br class="">
support MPI at all (which is implicitly equivalent to MPI_COMM_SELF).<br class="">
</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">Hm, do I need to understand managers in a larger scope that MPI only then ? </div>
<div class=""><br class="">
</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<div class="">For yet others it may be possible to specify the communicator when<br class="">
constructing the grid.  So if you obtained that communicator by splitting<br class="">
MPI_COMM_WORLD into two subsets of nodes, you will end up with two independent<br class="">
grids, each operating within one of the subsets.<br class="">
</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">OK got that one.</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<div class=""><br class="">
Regards,<br class="">
Jö.<br class="">
<br class="">
-- <br class="">
Jorrit (Jö) Fahlke, Institute for Computational und Applied Mathematics,<br class="">
University of Münster, Orleans-Ring 10, D-48149 Münster<br class="">
Tel: +49 251 83 35146 Fax: +49 251 83 32729<br class="">
<br class="">
This message is protected by DoubleROT13 encryption<br class="">
Attempting to decode it violates the DMCA/WIPO acts<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</body>
</html>