<html>#2361: remove requirement for different scheduling when using or not using presync
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Roland Haas</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>new</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td></td></tr>
<tr><td style='text-align:right'>     Type:</td><td>enhancement</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>major</td></tr>
<tr><td style='text-align:right'>Component:</td><td></td></tr>
</table>

<p>In its initial implementation, using PreSync to automatically apply boundary conditions requires changes to user thorns. Namely patterns like this:</p>
<div class="codehilite language-perl"><pre><span></span><span class="n">schedule</span> <span class="n">Foo_SelectBCs</span> <span class="n">IN</span> <span class="n">MoL_PostStep</span>
<span class="p">{</span>
  <span class="n">LANG:</span> <span class="n">C</span>
<span class="p">}</span> <span class="s">&quot;Select Boundary conditions for variables&quot;</span>
<span class="n">schedule</span> <span class="n">group</span> <span class="n">ApplyBCs</span> <span class="n">as</span> <span class="n">Foo_ApplyBCs</span> <span class="n">in</span> <span class="n">MoL_PostStep</span> <span class="n">AFTER</span> <span class="n">Foo_SelectBCs</span>
<span class="p">{</span>
<span class="p">}</span> <span class="s">&quot;Apply boundary conditions&quot;</span>
</pre></div>


<p>needs to be replaced by something like this</p>
<div class="codehilite"><pre><span></span>schedule Foo_SelectBCs IN Presync_Select
{
  LANG: C
} &quot;Select Boundary conditions for variables&quot;
</pre></div>


<p>However it should be possible to remove this need to change schedule.ccl by making the code remember calls to <code>SelectXXXForBC</code> (and possible warn if subsequent calls select different bc for already known variables) and making <code>ApplyBCs</code> an empty group.</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2361/remove-requirement-for-different'>https://bitbucket.org/einsteintoolkit/tickets/issues/2361/remove-requirement-for-different</a></p>
</html>