<html>#2902: CarpetX: interpolation with z-reflection symmetry only works for Psi4
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Miren Radia</td></tr>
<tr><td style='text-align:right'> Status:</td><td>submitted</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'> Version:</td><td>development version</td></tr>
<tr><td style='text-align:right'> Type:</td><td>bug</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>major</td></tr>
<tr><td style='text-align:right'>Component:</td><td>CarpetX</td></tr>
</table>
<p>Currently the end of <code>CarpetX::interpolate</code> looks like this:</p>
<div class="codehilite language-c++"><pre><span></span><code> <span class="c1">// Apply symmetries to interpolated values</span>
<span class="n">assert</span><span class="p">(</span><span class="o">!</span><span class="n">reflection_x</span><span class="p">);</span>
<span class="n">assert</span><span class="p">(</span><span class="o">!</span><span class="n">reflection_y</span><span class="p">);</span>
<span class="n">assert</span><span class="p">(</span><span class="o">!</span><span class="n">reflection_upper_x</span><span class="p">);</span>
<span class="n">assert</span><span class="p">(</span><span class="o">!</span><span class="n">reflection_upper_y</span><span class="p">);</span>
<span class="n">assert</span><span class="p">(</span><span class="o">!</span><span class="n">reflection_upper_z</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">reflection_z</span><span class="p">)</span> <span class="p">{</span>
<span class="c1">// The code below is only valid for Psi4</span>
<span class="n">assert</span><span class="p">(</span><span class="n">nvars</span> <span class="o">==</span> <span class="mi">2</span><span class="p">);</span>
<span class="n">assert</span><span class="p">(</span><span class="n">varinds</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="n">CCTK_VarIndex</span><span class="p">(</span><span class="s">"Weyl::Psi4re"</span><span class="p">));</span>
<span class="n">assert</span><span class="p">(</span><span class="n">varinds</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="n">CCTK_VarIndex</span><span class="p">(</span><span class="s">"Weyl::Psi4im"</span><span class="p">));</span>
<span class="c1">// l^a = et^a + er^a</span>
<span class="c1">// n^a = et^a - er^a</span>
<span cl
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2902/carpetx-interpolation-with-z-reflection'>https://bitbucket.org/einsteintoolkit/tickets/issues/2902/carpetx-interpolation-with-z-reflection</a></p>
</html>