Skip to content

Commit

Permalink
build based on a09020c
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Jun 13, 2024
1 parent 339152b commit d820520
Show file tree
Hide file tree
Showing 32 changed files with 74 additions and 110 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.10.4","generation_timestamp":"2024-06-12T21:54:00","documenter_version":"1.4.1"}}
{"documenter":{"julia_version":"1.10.4","generation_timestamp":"2024-06-13T15:13:43","documenter_version":"1.4.1"}}
4 changes: 2 additions & 2 deletions dev/api/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dev/ascii/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dev/bc/bc_debug/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -340,5 +340,5 @@
# Animation
record(fig, "diff_adv_right.gif", range(0.0, 100.0; length=150); framerate = 30) do t
pmsh.color = sol(t).C
end</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">&quot;diff_adv_right.gif&quot;</code></pre><p><img src="../diff_adv_right.gif" alt="Diffusion-Advection result and your first BC Decapode!"/></p><pre class="documenter-example-output"><code class="nohighlight hljs ansi">[ Info: Page built in 101 seconds.
[ Info: This page was last built at 2024-06-12T21:45:58.155.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../poiseuille/poiseuille/">« Pipe Flow</a><a class="docs-footer-nextpage" href="../../ascii/">ASCII Operators »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Wednesday 12 June 2024 21:53">Wednesday 12 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
end</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">&quot;diff_adv_right.gif&quot;</code></pre><p><img src="../diff_adv_right.gif" alt="Diffusion-Advection result and your first BC Decapode!"/></p><pre class="documenter-example-output"><code class="nohighlight hljs ansi">[ Info: Page built in 100 seconds.
[ Info: This page was last built at 2024-06-13T15:05:38.983.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../poiseuille/poiseuille/">« Pipe Flow</a><a class="docs-footer-nextpage" href="../../ascii/">ASCII Operators »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Thursday 13 June 2024 15:13">Thursday 13 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Binary file modified dev/bsh/budyko_sellers_halfar.jld2
Binary file not shown.
24 changes: 4 additions & 20 deletions dev/bsh/budyko_sellers_halfar/index.html

Large diffs are not rendered by default.

64 changes: 32 additions & 32 deletions dev/canon/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dev/ch/cahn-hilliard/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
fₘ = sim(sd, nothing, DiagonalHodge());</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">(::Main.var&quot;#f#3&quot;{PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, PreallocationTools.FixedSizeDiffCache{Vector{Float64}, Vector{ForwardDiff.Dual{nothing, Float64, 12}}}, SparseArrays.SparseMatrixCSC{Float64, Int32}}) (generic function with 1 method)</code></pre><h2 id="Getting-the-Solution"><a class="docs-heading-anchor" href="#Getting-the-Solution">Getting the Solution</a><a id="Getting-the-Solution-1"></a><a class="docs-heading-anchor-permalink" href="#Getting-the-Solution" title="Permalink"></a></h2><p>Now that everything is set up and ready, we can solve the equation. We run the simulation for 200 time units to see the long-term evolution of the fluid. Note we only save the solution at intervals of 0.1 time units in order to reduce the memory-footprint of the solve.</p><pre><code class="language-julia hljs">tₑ = 200
prob = ODEProblem(fₘ, u₀, (0, tₑ), constants)
soln = solve(prob, Tsit5(), saveat=0.1);
soln.retcode</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">ReturnCode.Success = 1</code></pre><p>And we can see the result as a gif.</p><p><img src="../CahnHilliard_Rect.gif" alt="&quot;CahnHilliardRes&quot;"/></p><pre class="documenter-example-output"><code class="nohighlight hljs ansi">[ Info: Page built in 181 seconds.
[ Info: This page was last built at 2024-06-12T21:49:48.652.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../navier_stokes/ns/">« Vortices</a><a class="docs-footer-nextpage" href="../../klausmeier/klausmeier/">Klausmeier »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Wednesday 12 June 2024 21:53">Wednesday 12 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
soln.retcode</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">ReturnCode.Success = 1</code></pre><p>And we can see the result as a gif.</p><p><img src="../CahnHilliard_Rect.gif" alt="&quot;CahnHilliardRes&quot;"/></p><pre class="documenter-example-output"><code class="nohighlight hljs ansi">[ Info: Page built in 180 seconds.
[ Info: This page was last built at 2024-06-13T15:09:27.054.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../navier_stokes/ns/">« Vortices</a><a class="docs-footer-nextpage" href="../../klausmeier/klausmeier/">Klausmeier »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Thursday 13 June 2024 15:13">Thursday 13 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
16 changes: 8 additions & 8 deletions dev/cism/cism/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -204,14 +204,14 @@
[ Info: Done</code></pre><p>We can benchmark the compiled simulation with <code>@benchmarkable</code>. This macro runs many samples of the simulation function so we get an accurate estimate of the simulation time. The simulation time is quite fast compared to the CISM benchmarks. These results are run automatically via GitHub Actions as part of our docs build, which is not optimized for numerical simulations.</p><pre><code class="language-julia hljs"># Time the simulation

b = @benchmarkable solve(prob, Tsit5(), saveat=0.1)
c = run(b)</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">BenchmarkTools.Trial: 204 samples with 1 evaluation.
Range <span class="sgr90">(</span><span class="sgr36"><span class="sgr1">min</span></span><span class="sgr35">max</span><span class="sgr90">): </span><span class="sgr36"><span class="sgr1">22.258 ms</span></span><span class="sgr35">81.733 ms</span> <span class="sgr90"></span> GC <span class="sgr90">(</span>min … max<span class="sgr90">): </span>0.00% … 14.41%
Time <span class="sgr90">(</span><span class="sgr34"><span class="sgr1">median</span></span><span class="sgr90">): </span><span class="sgr34"><span class="sgr1">22.775 ms </span></span><span class="sgr90"></span> GC <span class="sgr90">(</span>median<span class="sgr90">): </span>0.00%
Time <span class="sgr90">(</span><span class="sgr32"><span class="sgr1">mean</span></span> ± <span class="sgr32">σ</span><span class="sgr90">): </span><span class="sgr32"><span class="sgr1">24.273 ms</span></span> ± <span class="sgr32"> 5.690 ms</span> <span class="sgr90"></span> GC <span class="sgr90">(</span>mean ± σ<span class="sgr90">): </span>2.13% ± 5.49%
c = run(b)</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">BenchmarkTools.Trial: 195 samples with 1 evaluation.
Range <span class="sgr90">(</span><span class="sgr36"><span class="sgr1">min</span></span><span class="sgr35">max</span><span class="sgr90">): </span><span class="sgr36"><span class="sgr1">22.932 ms</span></span><span class="sgr35">64.142 ms</span> <span class="sgr90"></span> GC <span class="sgr90">(</span>min … max<span class="sgr90">): </span>0.00% … 14.43%
Time <span class="sgr90">(</span><span class="sgr34"><span class="sgr1">median</span></span><span class="sgr90">): </span><span class="sgr34"><span class="sgr1">23.157 ms </span></span><span class="sgr90"></span> GC <span class="sgr90">(</span>median<span class="sgr90">): </span>0.00%
Time <span class="sgr90">(</span><span class="sgr32"><span class="sgr1">mean</span></span> ± <span class="sgr32">σ</span><span class="sgr90">): </span><span class="sgr32"><span class="sgr1">25.281 ms</span></span> ± <span class="sgr32"> 6.025 ms</span> <span class="sgr90"></span> GC <span class="sgr90">(</span>mean ± σ<span class="sgr90">): </span>1.95% ± 5.19%

<span class="sgr34"></span> <span class="sgr32"> </span>
<span class="sgr34"></span>█▁▅<span class="sgr32"></span>▁▁▁▁▁▁▁▁▁▄▆▁▄▁▁▄▁▁▁▄▁▄▁▆▅▁▁▄▁▁▁▁▁▁▁▁▁▁▁▄▁▁▁▁▁▁▁▁▅
22.3 ms<span class="sgr90"> Histogram: <span class="sgr1">log(</span>frequency<span class="sgr1">)</span> by time</span> 42.8 ms <span class="sgr1">&lt;</span>
<span class="sgr34"></span> <span class="sgr32"> </span>
<span class="sgr34"></span>▄▄▁<span class="sgr32"></span>▁▁▁▁▄▁▁▆▆▄▆▁▁▁▁▁▁▁▁▁▁▄▁▁▁▁▁▁▁▁▁▁▁▄▁▅▆▆▁▄▄▁▁▁▁▁▁▁▁▁▁▅
22.9 ms<span class="sgr90"> Histogram: <span class="sgr1">log(</span>frequency<span class="sgr1">)</span> by time</span> 47 ms <span class="sgr1">&lt;</span>

Memory estimate<span class="sgr90">: </span><span class="sgr33">48.33 MiB</span>, allocs estimate<span class="sgr90">: </span><span class="sgr33">3878</span>.</code></pre><p>Here we save the solution information to a <a href="../ice_dynamics2D.jld2">file</a>.</p><pre><code class="language-julia hljs">@save &quot;ice_dynamics2D.jld2&quot; soln</code></pre><p>We recall that these dynamics are of the &quot;shallow slope&quot; and &quot;shallow ice&quot; approximations. So, at the edge of our parabolic dome of ice, we expect increased error as the slope increases. On the interior of the dome, we expect the dynamics to match more closely that given by the analytic model. We will see that the CISM results likewise accumulate error in the same neighborhood.</p><p><img src="../halfar_quote.png" alt="&quot;Halfar Small Ice Approximation Quote&quot;"/></p><pre><code class="language-julia hljs"># Plot the final conditions
function plot_final_conditions()
Expand Down Expand Up @@ -271,4 +271,4 @@
msh.color = soln(t).dynamics_h
end
end</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">&quot;ice_dynamics_cism.gif&quot;</code></pre><p><img src="../ice_dynamics_cism.gif" alt="&quot;Ice Dynamics"/></p><p>For comparison&#39;s sake, we paste the results produced by CISM below. We observe that the error likewise accumulates around the edge of the dome, with more accurate predictions on the interior. We note that our simulation produces slight over-estimates on the interior, but there are further strategies that one can employ to increase accuracy, such as tweaking the error tolerance of the solver, and so on.</p><p>Not that since the DEC is based on triangulated meshes, the &quot;resolution&quot; of the CISM benchmark and the Decapodes implementation cannot be directly compared. An advantage of the DEC is that we do not need to operate on uniform grids. For example, you could construct a mesh that is finer along the dome edge, where you need more resolution, and coarser as you are farther away from the reach of the ice.</p><p><img src="../official_res.png" alt="CISM Results"/></p><p>We saw in this document how to create performant and accurate simulations in the Decapodes framework, and compared against the CISM library . Although we do not expect to be both more performant and accurate compared to every hand-crafted simulation, Decapodes makes up for this difference in terms of development time, flexibility, and composition. For example, the original implementation of the Decapodes shallow ice model took place over a couple of afternoons.</p><p>Since Decapodes targets high-level representations of physics, it is uniquely suited to incorporating knowledge from subject matter experts to increase simulation accuracy. This process does not require an ice dynamics expert to edit physics equations that have already been weaved into solver code.</p><p>Further improvements to the Decapodes library are made continuously. We are creating implementations of DEC operators that are constructed and execute faster. And we are in the beginning stages of 3D simulations using the DEC.</p><pre class="documenter-example-output"><code class="nohighlight hljs ansi">[ Info: Page built in 31 seconds.
[ Info: This page was last built at 2024-06-12T21:50:19.189.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../klausmeier/klausmeier/">« Klausmeier</a><a class="docs-footer-nextpage" href="../../ice_dynamics/ice_dynamics/">Glacial Flow »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Wednesday 12 June 2024 21:53">Wednesday 12 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
[ Info: This page was last built at 2024-06-13T15:09:57.615.</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../../klausmeier/klausmeier/">« Klausmeier</a><a class="docs-footer-nextpage" href="../../ice_dynamics/ice_dynamics/">Glacial Flow »</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></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.4.1 on <span class="colophon-date" title="Thursday 13 June 2024 15:13">Thursday 13 June 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit d820520

Please sign in to comment.