<p dir="auto">Please:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Check for duplicate issues.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Provide a complete example of how to reproduce the bug, wrapped in triple backticks like this:</li>
</ul>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="&gt;&gt;&gt; import jax.numpy as jnp
&gt;&gt;&gt; a = jnp.zeros((10, 100))
&gt;&gt;&gt; type(a)
 jaxlib.xla_extension.DeviceArray"><pre class="notranslate"><span class="pl-c1">&gt;&gt;</span><span class="pl-c1">&gt;</span> <span class="pl-k">import</span> <span class="pl-s1">jax</span>.<span class="pl-s1">numpy</span> <span class="pl-k">as</span> <span class="pl-s1">jnp</span>
<span class="pl-c1">&gt;&gt;</span><span class="pl-c1">&gt;</span> <span class="pl-s1">a</span> <span class="pl-c1">=</span> <span class="pl-s1">jnp</span>.<span class="pl-en">zeros</span>((<span class="pl-c1">10</span>, <span class="pl-c1">100</span>))
<span class="pl-c1">&gt;&gt;</span><span class="pl-c1">&gt;</span> <span class="pl-en">type</span>(<span class="pl-s1">a</span>)
 <span class="pl-s1">jaxlib</span>.<span class="pl-s1">xla_extension</span>.<span class="pl-v">DeviceArray</span></pre></div>
<p dir="auto">The indexing of the DeviceArray is right:</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="
&gt;&gt;&gt; print(type(a[0]))
 jaxlib.xla_extension.DeviceArray
"><pre class="notranslate"><span class="pl-c1">&gt;&gt;</span><span class="pl-c1">&gt;</span> <span class="pl-en">print</span>(<span class="pl-en">type</span>(<span class="pl-s1">a</span>[<span class="pl-c1">0</span>]))
 <span class="pl-s1">jaxlib</span>.<span class="pl-s1">xla_extension</span>.<span class="pl-v">DeviceArray</span></pre></div>
<p dir="auto">However, <code class="notranslate">iter</code> this DeviceArray get <code class="notranslate">numpy.ndarray</code>:</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="
&gt;&gt;&gt; for b in a: print(type(b))
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;
&lt;class 'numpy.ndarray'&gt;"><pre class="notranslate"><span class="pl-c1">&gt;&gt;</span><span class="pl-c1">&gt;</span> <span class="pl-k">for</span> <span class="pl-s1">b</span> <span class="pl-c1">in</span> <span class="pl-s1">a</span>: <span class="pl-en">print</span>(<span class="pl-en">type</span>(<span class="pl-s1">b</span>))
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span>
<span class="pl-c1">&lt;</span><span class="pl-k">class</span> <span class="pl-s">'numpy.ndarray'</span><span class="pl-c1">&gt;</span></pre></div>
<p dir="auto">I noticed that when I re-ordered the matrix multiplication order, the numerical stabilities can vary wildly (4 orders of magnitude). Further, even with the same seed, whether an operation is numerically stable can vary (significantly) between runs.</p>
<p dir="auto">The following were observed when running on an A6000 GPU. However, this appears fine when running on CPU, V100, or Google Colab (K80).</p>
<p dir="auto">Please:</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Check for duplicate issues.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> Provide a complete example of how to reproduce the bug, wrapped in triple backticks like this:</li>
</ul>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="import jax
# jax.config.update(&quot;jax_platform_name&quot;, &quot;cpu&quot;)

import numpy as np
import jax.numpy as jnp
d = 97
for r in range(20, 40):
    key = jax.random.PRNGKey(r)

    key, subkey = jax.random.split(key)
    a = jax.random.normal(key)

    key, subkey = jax.random.split(key)
    D = jax.random.normal(key, shape=[d, r])

    key, subkey = jax.random.split(key)
    v = jax.random.normal(key, shape=[d])

    diff = (D @ (D.T @ v) -  D @ D.T @ v)
    print(
        f&quot;Rank={r}: &quot;
        f&quot;a: {a:.3f}, \t&quot;
        f&quot;D(norm) {jnp.linalg.norm(D):.3f}, \t&quot;
        f&quot;v(norm) {jnp.linalg.norm(v):.2f}, \t&quot;
        f&quot;Error: {jnp.linalg.norm(diff):.3e}&quot;)"><pre class="notranslate"><span class="pl-k">import</span> <span class="pl-s1">jax</span>
<span class="pl-c"># jax.config.update("jax_platform_name", "cpu")</span>

<span class="pl-k">import</span> <span class="pl-s1">numpy</span> <span class="pl-k">as</span> <span class="pl-s1">np</span>
<span class="pl-k">import</span> <span class="pl-s1">jax</span>.<span class="pl-s1">numpy</span> <span class="pl-k">as</span> <span class="pl-s1">jnp</span>
<span class="pl-s1">d</span> <span class="pl-c1">=</span> <span class="pl-c1">97</span>
<span class="pl-k">for</span> <span class="pl-s1">r</span> <span class="pl-c1">in</span> <span class="pl-en">range</span>(<span class="pl-c1">20</span>, <span class="pl-c1">40</span>):
    <span class="pl-s1">key</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-v">PRNGKey</span>(<span class="pl-s1">r</span>)

    <span class="pl-s1">key</span>, <span class="pl-s1">subkey</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">split</span>(<span class="pl-s1">key</span>)
    <span class="pl-s1">a</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">normal</span>(<span class="pl-s1">key</span>)

    <span class="pl-s1">key</span>, <span class="pl-s1">subkey</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">split</span>(<span class="pl-s1">key</span>)
    <span class="pl-v">D</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">normal</span>(<span class="pl-s1">key</span>, <span class="pl-s1">shape</span><span class="pl-c1">=</span>[<span class="pl-s1">d</span>, <span class="pl-s1">r</span>])

    <span class="pl-s1">key</span>, <span class="pl-s1">subkey</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">split</span>(<span class="pl-s1">key</span>)
    <span class="pl-s1">v</span> <span class="pl-c1">=</span> <span class="pl-s1">jax</span>.<span class="pl-s1">random</span>.<span class="pl-en">normal</span>(<span class="pl-s1">key</span>, <span class="pl-s1">shape</span><span class="pl-c1">=</span>[<span class="pl-s1">d</span>])

    <span class="pl-s1">diff</span> <span class="pl-c1">=</span> (<span class="pl-v">D</span> @ (<span class="pl-v">D</span>.<span class="pl-v">T</span> @ <span class="pl-s1">v</span>) <span class="pl-c1">-</span>  <span class="pl-v">D</span> @ <span class="pl-v">D</span>.<span class="pl-v">T</span> @ <span class="pl-s1">v</span>)
    <span class="pl-en">print</span>(
        <span class="pl-s">f"Rank=<span class="pl-s1"><span class="pl-kos">{</span><span class="pl-s1">r</span><span class="pl-kos">}</span></span>: "</span>
        <span class="pl-s">f"a: <span class="pl-s1"><span class="pl-kos">{</span><span class="pl-s1">a</span>:.3f<span class="pl-kos">}</span></span>, <span class="pl-cce">\t</span>"</span>
        <span class="pl-s">f"D(norm) <span class="pl-s1"><span class="pl-kos">{</span><span class="pl-s1">jnp</span>.<span class="pl-s1">linalg</span>.<span class="pl-en">norm</span>(<span class="pl-v">D</span>):.3f<span class="pl-kos">}</span></span>, <span class="pl-cce">\t</span>"</span>
        <span class="pl-s">f"v(norm) <span class="pl-s1"><span class="pl-kos">{</span><span class="pl-s1">jnp</span>.<span class="pl-s1">linalg</span>.<span class="pl-en">norm</span>(<span class="pl-s1">v</span>):.2f<span class="pl-kos">}</span></span>, <span class="pl-cce">\t</span>"</span>
        <span class="pl-s">f"Error: <span class="pl-s1"><span class="pl-kos">{</span><span class="pl-s1">jnp</span>.<span class="pl-s1">linalg</span>.<span class="pl-en">norm</span>(<span class="pl-s1">diff</span>):.3e<span class="pl-kos">}</span></span>"</span>)</pre></div>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> If applicable, include full error messages/tracebacks.</li>
</ul>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="# Output from Run 1
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 8.764e-05
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 8.498e-05
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 8.744e-05
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 1.707e-01   &lt;---
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05"><pre class="notranslate"><code class="notranslate"># Output from Run 1
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 8.764e-05
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 8.498e-05
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 8.744e-05
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 1.707e-01   &lt;---
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05
</code></pre></div>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="# Output from another Run
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 8.764e-05
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 1.292e-01   &lt;---
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 1.684e-01   &lt;---
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 7.667e-05
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05"><pre class="notranslate"><code class="notranslate"># Output from another Run
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 8.764e-05
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 1.292e-01   &lt;---
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 1.684e-01   &lt;---
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 7.667e-05
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05
</code></pre></div>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="# Output from another Run
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 1.489e-01   &lt;---
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 8.498e-05
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 8.744e-05
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 7.667e-05
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05"><pre class="notranslate"><code class="notranslate"># Output from another Run
Rank=20: a: 0.753, 	D(norm) 43.465, 	v(norm) 10.75, 	Error: 1.057e-01   &lt;---
Rank=21: a: 0.963, 	D(norm) 44.669, 	v(norm) 9.45, 	Error: 6.323e-05
Rank=22: a: 0.269, 	D(norm) 46.610, 	v(norm) 10.44, 	Error: 8.321e-05
Rank=23: a: -0.232, 	D(norm) 47.038, 	v(norm) 10.07, 	Error: 7.781e-05
Rank=24: a: -1.412, 	D(norm) 48.142, 	v(norm) 10.59, 	Error: 1.489e-01   &lt;---
Rank=25: a: 0.038, 	D(norm) 48.904, 	v(norm) 8.98, 	Error: 7.407e-05
Rank=26: a: -0.816, 	D(norm) 49.992, 	v(norm) 10.28, 	Error: 9.853e-05
Rank=27: a: 1.559, 	D(norm) 51.330, 	v(norm) 10.49, 	Error: 6.900e-05
Rank=28: a: 0.204, 	D(norm) 52.076, 	v(norm) 9.70, 	Error: 8.498e-05
Rank=29: a: -0.143, 	D(norm) 52.809, 	v(norm) 10.20, 	Error: 9.320e-05
Rank=30: a: 0.024, 	D(norm) 53.732, 	v(norm) 9.13, 	Error: 8.484e-05
Rank=31: a: 0.889, 	D(norm) 55.202, 	v(norm) 10.40, 	Error: 9.107e-05
Rank=32: a: 0.427, 	D(norm) 56.583, 	v(norm) 10.34, 	Error: 8.759e-05
Rank=33: a: 0.398, 	D(norm) 57.486, 	v(norm) 10.12, 	Error: 8.744e-05
Rank=34: a: -1.186, 	D(norm) 56.714, 	v(norm) 9.43, 	Error: 8.845e-05
Rank=35: a: -0.012, 	D(norm) 58.444, 	v(norm) 9.27, 	Error: 7.667e-05
Rank=36: a: 0.712, 	D(norm) 58.687, 	v(norm) 9.36, 	Error: 7.037e-05
Rank=37: a: -0.177, 	D(norm) 60.725, 	v(norm) 9.32, 	Error: 8.887e-05
Rank=38: a: 0.247, 	D(norm) 61.139, 	v(norm) 10.34, 	Error: 8.436e-05
Rank=39: a: -1.059, 	D(norm) 62.312, 	v(norm) 9.58, 	Error: 9.310e-05
</code></pre></div>