This commit is contained in:
CircleCI Docs
2025-03-05 21:30:09 +00:00
parent 75441e48ef
commit a943912d4c
733 changed files with 41418 additions and 30412 deletions

View File

@@ -165,42 +165,48 @@ $(function(){initNavTree('linalg_8h_source.html',''); initResizable(true); });
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#ae6d97829459353fe3b31c8a0867c0ca2"> 63</a></span>std::pair&lt;array, array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#ae6d97829459353fe3b31c8a0867c0ca2">qr</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a64364b880e99914cf47bf756fa8dbaf0"> 65</a></span>std::vector&lt;array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a64364b880e99914cf47bf756fa8dbaf0">svd</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#ad966a0b6bff176c9f933534ed62389a2"> 67</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#ad966a0b6bff176c9f933534ed62389a2">inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#aba1994571326326717b5b5e38c2e0661"> 69</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#aba1994571326326717b5b5e38c2e0661">tri_inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span>std::vector&lt;array&gt;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a6358b3b4398289f30ada4c2712a9d88d"> 66</a></span><a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a6358b3b4398289f30ada4c2712a9d88d">svd</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> compute_uv, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s <span class="comment">/* = {} */</span>);</div>
<div class="foldopen" id="foldopen00067" data-start="{" data-end="}">
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a64364b880e99914cf47bf756fa8dbaf0"> 67</a></span><span class="keyword">inline</span> std::vector&lt;array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a6358b3b4398289f30ada4c2712a9d88d">svd</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {}) {</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a6358b3b4398289f30ada4c2712a9d88d">svd</a>(a, <span class="keyword">true</span>, s);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>}</div>
</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a46c8a4f806f0a97a4323e91189aa512b"> 71</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a46c8a4f806f0a97a4323e91189aa512b">cholesky</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#ad966a0b6bff176c9f933534ed62389a2"> 71</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#ad966a0b6bff176c9f933534ed62389a2">inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> </div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#ad9f8348091e5ff4f74ad456e9fbd3e01"> 73</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#ad9f8348091e5ff4f74ad456e9fbd3e01">pinv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#aba1994571326326717b5b5e38c2e0661"> 73</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#aba1994571326326717b5b5e38c2e0661">tri_inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#aef0fe4894c5cf98792d59859c6d20511"> 75</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#aef0fe4894c5cf98792d59859c6d20511">cholesky_inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a46c8a4f806f0a97a4323e91189aa512b"> 75</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a46c8a4f806f0a97a4323e91189aa512b">cholesky</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a7a426a92cb02c0d125e41f8915e66f7f"> 77</a></span>std::vector&lt;array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a7a426a92cb02c0d125e41f8915e66f7f">lu</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#ad9f8348091e5ff4f74ad456e9fbd3e01"> 77</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#ad9f8348091e5ff4f74ad456e9fbd3e01">pinv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#abf10561bef3450b83a45aef161ee8b6e"> 79</a></span>std::pair&lt;array, array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#abf10561bef3450b83a45aef161ee8b6e">lu_factor</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#aef0fe4894c5cf98792d59859c6d20511"> 79</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#aef0fe4894c5cf98792d59859c6d20511">cholesky_inv</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a66590bfcec381e952b27630da0a31953"> 81</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a66590bfcec381e952b27630da0a31953">solve</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a7a426a92cb02c0d125e41f8915e66f7f"> 81</a></span>std::vector&lt;array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a7a426a92cb02c0d125e41f8915e66f7f">lu</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a5e6e53f7a04688baa1329d166511febe"> 83</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a5e6e53f7a04688baa1329d166511febe">solve_triangular</a>(</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b,</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>,</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#abcda3fbda45183c21e7f27aa0dde64e6"> 92</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#abcda3fbda45183c21e7f27aa0dde64e6">cross</a>(</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b,</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">int</span> axis = -1,</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a00c8e24432b0773dac64b8602bd142ba"> 98</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a00c8e24432b0773dac64b8602bd142ba">eigvalsh</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, std::string UPLO = <span class="stringliteral">&quot;L&quot;</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span>std::pair&lt;array, array&gt;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a2180be504f639fd471ea622641c1b0ca"> 101</a></span><a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a2180be504f639fd471ea622641c1b0ca">eigh</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, std::string UPLO = <span class="stringliteral">&quot;L&quot;</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span>} <span class="comment">// namespace mlx::core::linalg</span></div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#abf10561bef3450b83a45aef161ee8b6e"> 83</a></span>std::pair&lt;array, array&gt; <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#abf10561bef3450b83a45aef161ee8b6e">lu_factor</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a66590bfcec381e952b27630da0a31953"> 85</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a66590bfcec381e952b27630da0a31953">solve</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a5e6e53f7a04688baa1329d166511febe"> 87</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a5e6e53f7a04688baa1329d166511febe">solve_triangular</a>(</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a,</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b,</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">bool</span> upper = <span class="keyword">false</span>,</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#abcda3fbda45183c21e7f27aa0dde64e6"> 96</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#abcda3fbda45183c21e7f27aa0dde64e6">cross</a>(</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a,</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; b,</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">int</span> axis = -1,</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a00c8e24432b0773dac64b8602bd142ba"> 102</a></span><a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a> <a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a00c8e24432b0773dac64b8602bd142ba">eigvalsh</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, std::string UPLO = <span class="stringliteral">&quot;L&quot;</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span>std::pair&lt;array, array&gt;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"><a class="line" href="namespacemlx_1_1core_1_1linalg.html#a2180be504f639fd471ea622641c1b0ca"> 105</a></span><a class="code hl_function" href="namespacemlx_1_1core_1_1linalg.html#a2180be504f639fd471ea622641c1b0ca">eigh</a>(<span class="keyword">const</span> <a class="code hl_class" href="classmlx_1_1core_1_1array.html">array</a>&amp; a, std::string UPLO = <span class="stringliteral">&quot;L&quot;</span>, <a class="code hl_typedef" href="namespacemlx_1_1core.html#a95fc1013cc48fbfee0c54310711a5e58">StreamOrDevice</a> s = {});</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span>} <span class="comment">// namespace mlx::core::linalg</span></div>
</div>
<div class="ttc" id="aarray_8h_html"><div class="ttname"><a href="array_8h.html">array.h</a></div></div>
<div class="ttc" id="aclassmlx_1_1core_1_1array_html"><div class="ttname"><a href="classmlx_1_1core_1_1array.html">mlx::core::array</a></div><div class="ttdef"><b>Definition</b> array.h:24</div></div>
@@ -210,7 +216,7 @@ $(function(){initNavTree('linalg_8h_source.html',''); initResizable(true); });
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a2180be504f639fd471ea622641c1b0ca"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a2180be504f639fd471ea622641c1b0ca">mlx::core::linalg::eigh</a></div><div class="ttdeci">std::pair&lt; array, array &gt; eigh(const array &amp;a, std::string UPLO=&quot;L&quot;, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a46c8a4f806f0a97a4323e91189aa512b"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a46c8a4f806f0a97a4323e91189aa512b">mlx::core::linalg::cholesky</a></div><div class="ttdeci">array cholesky(const array &amp;a, bool upper=false, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a5e6e53f7a04688baa1329d166511febe"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a5e6e53f7a04688baa1329d166511febe">mlx::core::linalg::solve_triangular</a></div><div class="ttdeci">array solve_triangular(const array &amp;a, const array &amp;b, bool upper=false, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a64364b880e99914cf47bf756fa8dbaf0"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a64364b880e99914cf47bf756fa8dbaf0">mlx::core::linalg::svd</a></div><div class="ttdeci">std::vector&lt; array &gt; svd(const array &amp;a, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a6358b3b4398289f30ada4c2712a9d88d"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a6358b3b4398289f30ada4c2712a9d88d">mlx::core::linalg::svd</a></div><div class="ttdeci">std::vector&lt; array &gt; svd(const array &amp;a, bool compute_uv, StreamOrDevice s)</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a66590bfcec381e952b27630da0a31953"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a66590bfcec381e952b27630da0a31953">mlx::core::linalg::solve</a></div><div class="ttdeci">array solve(const array &amp;a, const array &amp;b, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_a7a426a92cb02c0d125e41f8915e66f7f"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#a7a426a92cb02c0d125e41f8915e66f7f">mlx::core::linalg::lu</a></div><div class="ttdeci">std::vector&lt; array &gt; lu(const array &amp;a, StreamOrDevice s={})</div></div>
<div class="ttc" id="anamespacemlx_1_1core_1_1linalg_html_aba1994571326326717b5b5e38c2e0661"><div class="ttname"><a href="namespacemlx_1_1core_1_1linalg.html#aba1994571326326717b5b5e38c2e0661">mlx::core::linalg::tri_inv</a></div><div class="ttdeci">array tri_inv(const array &amp;a, bool upper=false, StreamOrDevice s={})</div></div>