Skip to content

Commit f2336c3

Browse files
author
Documenter.jl
committed
build based on 383d8e4
1 parent 423776b commit f2336c3

File tree

10 files changed

+50
-50
lines changed

10 files changed

+50
-50
lines changed

dev/.documenter-siteinfo.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"documenter":{"julia_version":"1.11.6","generation_timestamp":"2025-08-15T19:09:34","documenter_version":"1.14.1"}}
1+
{"documenter":{"julia_version":"1.11.6","generation_timestamp":"2025-08-15T21:01:18","documenter_version":"1.14.1"}}

dev/advanced_usage/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
source_system = generate_gravitational(321, 1000)
1010

1111
fmm!(target_system, source_system)
12-
println(&quot;gravitational acceleration: &quot;, target_system.potential[5:7,1:10], &quot;...&quot;)</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">gravitational acceleration: [0.08493884822133471 -0.11084374528095761 0.041347632985565604 -0.1863622292822684 -0.08011810805054259 0.04306673245903066 0.0026037448998806746 0.03587428613837394 -0.08002640294442173 0.15009451094982013; 0.002073840920276872 0.32159304704241165 -0.03967273201136324 -0.005960667742001489 0.03828114050071747 0.14489807182906364 0.010013929319383668 0.05641013581893285 0.021727973779433876 0.0076810843882351145; 0.023957945365164404 -0.09630609717111542 -0.025023566343257052 0.13371455312852643 -0.04538444503621948 -0.07362887885237299 0.08060484661663683 -0.015529897358683232 -0.015618344404806379 0.10559335815763889]...</code></pre><div class="admonition is-success" id="Tip-b200cdf2474cf504"><header class="admonition-header">Tip<a class="admonition-anchor" href="#Tip-b200cdf2474cf504" title="Permalink"></a></header><div class="admonition-body"><p>The <code>fmm!</code> function can take any number of target and source systems, so long as they are passed as tuples. This allows for the simultaneous evaluation of multiple source systems on multiple target systems.</p></div></div><p>In practice, the source system might be a collection of systems, composed of a variety of datastructures. So long as the interface functions are defined for each system, we can pass a tuple of any number of systems as the source and or target. For example, we could evaluate the influence of a system of point masses, point vortices, and vortex filaments on two different target systems:</p><pre><code class="language-julia hljs">using LinearAlgebra
12+
println(&quot;gravitational acceleration: &quot;, target_system.potential[5:7,1:10], &quot;...&quot;)</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">gravitational acceleration: [0.08493884822133471 -0.11084374528095761 0.041347632985565604 -0.1863622292822684 -0.08011768455370595 0.04306673245903066 0.0026037448998806746 0.03587428613837394 -0.08002640294442173 0.15009451094982013; 0.002073840920276872 0.32159304704241165 -0.03967273201136324 -0.005960667742001489 0.038280843324364974 0.14489807182906364 0.010013929319383668 0.05641013581893285 0.021727973779433876 0.0076810843882351145; 0.023957945365164404 -0.09630609717111542 -0.025023566343257052 0.13371455312852643 -0.04538413100435865 -0.07362887885237299 0.08060484661663683 -0.015529897358683232 -0.015618344404806379 0.10559335815763889]...</code></pre><div class="admonition is-success" id="Tip-b200cdf2474cf504"><header class="admonition-header">Tip<a class="admonition-anchor" href="#Tip-b200cdf2474cf504" title="Permalink"></a></header><div class="admonition-body"><p>The <code>fmm!</code> function can take any number of target and source systems, so long as they are passed as tuples. This allows for the simultaneous evaluation of multiple source systems on multiple target systems.</p></div></div><p>In practice, the source system might be a collection of systems, composed of a variety of datastructures. So long as the interface functions are defined for each system, we can pass a tuple of any number of systems as the source and or target. For example, we could evaluate the influence of a system of point masses, point vortices, and vortex filaments on two different target systems:</p><pre><code class="language-julia hljs">using LinearAlgebra
1313

1414
# include vortex filament and particle models and interface functions
1515
vortex_path = normpath(joinpath(splitdir(pathof(FastMultipole))[1], &quot;..&quot;, &quot;test&quot;, &quot;vortex.jl&quot;))
@@ -41,4 +41,4 @@
4141
# test accuracy
4242
println(&quot;max error in target one: &quot;, maximum(abs.(target_one.potential[5:7,:] .- v1)))
4343
println(&quot;max error in target two: &quot;, maximum(abs.(target_two.gradient_stretching[1:3,:] .- v2)))</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">max error in target one: 1.4007503612439853e-5
44-
max error in target two: 1.0289615966441179e-5</code></pre><p>Note that <code>scalar_potential</code>, <code>gradient</code>, and <code>hessian</code> can be passed as a single boolean or as a tuple of booleans, one for each target system. This allows the user to specify which values are desired for each target system, and avoids unnecessary calculations for values that are not needed. In this case, we have set <code>scalar_potential=false</code> and <code>gradient=true</code> to indicate all target systems, but a tuple <code>hessian=(false,true)</code> to indicate different settings for each. It is worth remembering that these switches must be implemented by the user when overloading the <code>direct!</code> function for each system to act as a source.</p><div class="admonition is-success" id="Tip-39caa8a77e0973de"><header class="admonition-header">Tip<a class="admonition-anchor" href="#Tip-39caa8a77e0973de" title="Permalink"></a></header><div class="admonition-body"><p>The <code>fmm!</code> keyword arguments <code>scalar_potential</code>, <code>gradient</code>, and <code>hessian</code> can be passed as a single boolean or as a tuple of booleans, one for each target system. This allows the user to specify which values are desired for each target system, and avoids unnecessary calculations for values that are not needed.</p></div></div></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tuning/">« Tuning Parameters</a><a class="docs-footer-nextpage" href="../advanced_usage_2/">Automated Tuning »</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.14.1 on <span class="colophon-date" title="Friday 15 August 2025 19:09">Friday 15 August 2025</span>. Using Julia version 1.11.6.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
44+
max error in target two: 1.0289615966441179e-5</code></pre><p>Note that <code>scalar_potential</code>, <code>gradient</code>, and <code>hessian</code> can be passed as a single boolean or as a tuple of booleans, one for each target system. This allows the user to specify which values are desired for each target system, and avoids unnecessary calculations for values that are not needed. In this case, we have set <code>scalar_potential=false</code> and <code>gradient=true</code> to indicate all target systems, but a tuple <code>hessian=(false,true)</code> to indicate different settings for each. It is worth remembering that these switches must be implemented by the user when overloading the <code>direct!</code> function for each system to act as a source.</p><div class="admonition is-success" id="Tip-39caa8a77e0973de"><header class="admonition-header">Tip<a class="admonition-anchor" href="#Tip-39caa8a77e0973de" title="Permalink"></a></header><div class="admonition-body"><p>The <code>fmm!</code> keyword arguments <code>scalar_potential</code>, <code>gradient</code>, and <code>hessian</code> can be passed as a single boolean or as a tuple of booleans, one for each target system. This allows the user to specify which values are desired for each target system, and avoids unnecessary calculations for values that are not needed.</p></div></div></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tuning/">« Tuning Parameters</a><a class="docs-footer-nextpage" href="../advanced_usage_2/">Automated Tuning »</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.14.1 on <span class="colophon-date" title="Friday 15 August 2025 21:01">Friday 15 August 2025</span>. Using Julia version 1.11.6.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>

0 commit comments

Comments
 (0)