Skip to content

Commit

Permalink
build based on 0be5550
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Oct 11, 2024
1 parent ee0facc commit 95e6a2b
Show file tree
Hide file tree
Showing 44 changed files with 257 additions and 180 deletions.
2 changes: 1 addition & 1 deletion dev/.documenter-siteinfo.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"documenter":{"julia_version":"1.11.0","generation_timestamp":"2024-10-11T05:17:40","documenter_version":"1.7.0"}}
{"documenter":{"julia_version":"1.11.0","generation_timestamp":"2024-10-11T18:31:35","documenter_version":"1.7.0"}}
78 changes: 39 additions & 39 deletions dev/api/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dev/block_krylov/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@
restart::Bool=false, reorthogonalization::Bool=false,
atol::T=√eps(T), rtol::T=√eps(T), itmax::Int=0,
timemax::Float64=Inf, verbose::Int=0, history::Bool=false,
callback=solver-&gt;false, iostream::IO=kstdout)</code></pre><p><code>T</code> is an <code>AbstractFloat</code> such as <code>Float32</code>, <code>Float64</code> or <code>BigFloat</code>. <code>FC</code> is <code>T</code> or <code>Complex{T}</code>.</p><pre><code class="nohighlight hljs">(X, stats) = block_gmres(A, B, X0::AbstractMatrix; kwargs...)</code></pre><p>Block-GMRES can be warm-started from an initial guess <code>X0</code> where <code>kwargs</code> are the same keyword arguments as above.</p><p>Solve the linear system AX = B of size n with p right-hand sides using block-GMRES.</p><p><strong>Input arguments</strong></p><ul><li><code>A</code>: a linear operator that models a matrix of dimension n;</li><li><code>B</code>: a matrix of size n × p.</li></ul><p><strong>Optional argument</strong></p><ul><li><code>X0</code>: a matrix of size n × p that represents an initial guess of the solution X.</li></ul><p><strong>Keyword arguments</strong></p><ul><li><code>memory</code>: if <code>restart = true</code>, the restarted version block-GMRES(k) is used with <code>k = memory</code>. If <code>restart = false</code>, the parameter <code>memory</code> should be used as a hint of the number of iterations to limit dynamic memory allocations. Additional storage will be allocated if the number of iterations exceeds <code>memory</code>;</li><li><code>M</code>: linear operator that models a nonsingular matrix of size <code>n</code> used for left preconditioning;</li><li><code>N</code>: linear operator that models a nonsingular matrix of size <code>n</code> used for right preconditioning;</li><li><code>ldiv</code>: define whether the preconditioners use <code>ldiv!</code> or <code>mul!</code>;</li><li><code>restart</code>: restart the method after <code>memory</code> iterations;</li><li><code>reorthogonalization</code>: reorthogonalize the new matrices of the block-Krylov basis against all previous matrix;</li><li><code>atol</code>: absolute stopping tolerance based on the residual norm;</li><li><code>rtol</code>: relative stopping tolerance based on the residual norm;</li><li><code>itmax</code>: the maximum number of iterations. If <code>itmax=0</code>, the default number of iterations is set to <code>2 * div(n,p)</code>;</li><li><code>timemax</code>: the time limit in seconds;</li><li><code>verbose</code>: additional details can be displayed if verbose mode is enabled (verbose &gt; 0). Information will be displayed every <code>verbose</code> iterations;</li><li><code>history</code>: collect additional statistics on the run such as residual norms;</li><li><code>callback</code>: function or functor called as <code>callback(solver)</code> that returns <code>true</code> if the block-Krylov method should terminate, and <code>false</code> otherwise;</li><li><code>iostream</code>: stream to which output is logged.</li></ul><p><strong>Output arguments</strong></p><ul><li><code>X</code>: a dense matrix of size n × p;</li><li><code>stats</code>: statistics collected on the run in a <a href="../api/#Krylov.SimpleStats"><code>SimpleStats</code></a> structure.</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/JuliaSmoothOptimizers/Krylov.jl/blob/014cb6f499c750ee8c13b9ebbd79768f96926703/src/block_gmres.jl#L8-L55">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Krylov.block_gmres!" href="#Krylov.block_gmres!"><code>Krylov.block_gmres!</code></a><span class="docstring-category">Function</span><span class="is-flex-grow-1 docstring-article-toggle-button" title="Collapse docstring"></span></header><section><div><pre><code class="language-julia hljs">solver = block_gmres!(solver::BlockGmresSolver, B; kwargs...)
solver = block_gmres!(solver::BlockGmresSolver, B, X0; kwargs...)</code></pre><p>where <code>kwargs</code> are keyword arguments of <a href="#Krylov.block_gmres"><code>block_gmres</code></a>.</p><p>See <a href="../api/#Krylov.BlockGmresSolver"><code>BlockGmresSolver</code></a> for more details about the <code>solver</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/JuliaSmoothOptimizers/Krylov.jl/blob/014cb6f499c750ee8c13b9ebbd79768f96926703/src/block_gmres.jl#L58-L65">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../solvers/gsp/">« Generalized saddle-point and non-Hermitian partitioned systems</a><a class="docs-footer-nextpage" href="../inplace/">In-place methods »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Friday 11 October 2024 05:17">Friday 11 October 2024</span>. Using Julia version 1.11.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
callback=solver-&gt;false, iostream::IO=kstdout)</code></pre><p><code>T</code> is an <code>AbstractFloat</code> such as <code>Float32</code>, <code>Float64</code> or <code>BigFloat</code>. <code>FC</code> is <code>T</code> or <code>Complex{T}</code>.</p><pre><code class="nohighlight hljs">(X, stats) = block_gmres(A, B, X0::AbstractMatrix; kwargs...)</code></pre><p>Block-GMRES can be warm-started from an initial guess <code>X0</code> where <code>kwargs</code> are the same keyword arguments as above.</p><p>Solve the linear system AX = B of size n with p right-hand sides using block-GMRES.</p><p><strong>Input arguments</strong></p><ul><li><code>A</code>: a linear operator that models a matrix of dimension n;</li><li><code>B</code>: a matrix of size n × p.</li></ul><p><strong>Optional argument</strong></p><ul><li><code>X0</code>: a matrix of size n × p that represents an initial guess of the solution X.</li></ul><p><strong>Keyword arguments</strong></p><ul><li><code>memory</code>: if <code>restart = true</code>, the restarted version block-GMRES(k) is used with <code>k = memory</code>. If <code>restart = false</code>, the parameter <code>memory</code> should be used as a hint of the number of iterations to limit dynamic memory allocations. Additional storage will be allocated if the number of iterations exceeds <code>memory</code>;</li><li><code>M</code>: linear operator that models a nonsingular matrix of size <code>n</code> used for left preconditioning;</li><li><code>N</code>: linear operator that models a nonsingular matrix of size <code>n</code> used for right preconditioning;</li><li><code>ldiv</code>: define whether the preconditioners use <code>ldiv!</code> or <code>mul!</code>;</li><li><code>restart</code>: restart the method after <code>memory</code> iterations;</li><li><code>reorthogonalization</code>: reorthogonalize the new matrices of the block-Krylov basis against all previous matrix;</li><li><code>atol</code>: absolute stopping tolerance based on the residual norm;</li><li><code>rtol</code>: relative stopping tolerance based on the residual norm;</li><li><code>itmax</code>: the maximum number of iterations. If <code>itmax=0</code>, the default number of iterations is set to <code>2 * div(n,p)</code>;</li><li><code>timemax</code>: the time limit in seconds;</li><li><code>verbose</code>: additional details can be displayed if verbose mode is enabled (verbose &gt; 0). Information will be displayed every <code>verbose</code> iterations;</li><li><code>history</code>: collect additional statistics on the run such as residual norms;</li><li><code>callback</code>: function or functor called as <code>callback(solver)</code> that returns <code>true</code> if the block-Krylov method should terminate, and <code>false</code> otherwise;</li><li><code>iostream</code>: stream to which output is logged.</li></ul><p><strong>Output arguments</strong></p><ul><li><code>X</code>: a dense matrix of size n × p;</li><li><code>stats</code>: statistics collected on the run in a <a href="../api/#Krylov.SimpleStats"><code>SimpleStats</code></a> structure.</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://github.com/JuliaSmoothOptimizers/Krylov.jl/blob/0be555033bd23b103f70b7551e6c0a7189c8e09b/src/block_gmres.jl#L8-L55">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Krylov.block_gmres!" href="#Krylov.block_gmres!"><code>Krylov.block_gmres!</code></a><span class="docstring-category">Function</span><span class="is-flex-grow-1 docstring-article-toggle-button" title="Collapse docstring"></span></header><section><div><pre><code class="language-julia hljs">solver = block_gmres!(solver::BlockGmresSolver, B; kwargs...)
solver = block_gmres!(solver::BlockGmresSolver, B, X0; kwargs...)</code></pre><p>where <code>kwargs</code> are keyword arguments of <a href="#Krylov.block_gmres"><code>block_gmres</code></a>.</p><p>See <a href="../api/#Krylov.BlockGmresSolver"><code>BlockGmresSolver</code></a> for more details about the <code>solver</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/JuliaSmoothOptimizers/Krylov.jl/blob/0be555033bd23b103f70b7551e6c0a7189c8e09b/src/block_gmres.jl#L58-L65">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../solvers/gsp/">« Generalized saddle-point and non-Hermitian partitioned systems</a><a class="docs-footer-nextpage" href="../inplace/">In-place methods »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="auto">Automatic (OS)</option><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="catppuccin-latte">catppuccin-latte</option><option value="catppuccin-frappe">catppuccin-frappe</option><option value="catppuccin-macchiato">catppuccin-macchiato</option><option value="catppuccin-mocha">catppuccin-mocha</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.7.0 on <span class="colophon-date" title="Friday 11 October 2024 18:31">Friday 11 October 2024</span>. Using Julia version 1.11.0.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit 95e6a2b

Please sign in to comment.