|
85 | 85 | @assert ForwardDiff.partials(f_df, 1) ≈ D * v # the Jacobian of `f(u) = D * u` is `D`</code></pre><p>You can of course also use this with nonlinear functions, e.g.,</p><pre><code class="language-julia hljs">f(u, D) = u .* (D * (u.^2))
|
86 | 86 |
|
87 | 87 | f_df = f(u_v, D)</code></pre><pre class="documenter-example-output"><code class="nohighlight hljs ansi">8-element StructArray(::Vector{Float64}, ::Vector{ForwardDiff.Partials{1, Float64}}) with eltype ForwardDiff.Dual{Nothing, Float64, 1}:
|
88 |
| - Dual{Nothing}(-0.982560931907929,-2.5792615530876803) |
89 |
| - Dual{Nothing}(-1.2152958978040544,8.179560996444094) |
90 |
| - Dual{Nothing}(-18.696096188366262,-34.19736184449564) |
91 |
| - Dual{Nothing}(1.2578927203635262,0.42636081630334066) |
92 |
| - Dual{Nothing}(27.688340742663765,-17.799634808452844) |
93 |
| - Dual{Nothing}(-57.773403106586514,4.048126556384261) |
94 |
| - Dual{Nothing}(9.293027133401,23.529673947307714) |
95 |
| - Dual{Nothing}(-1.3985998415603969,-6.947132376168914)</code></pre><p>The Jacobian of this function is</p><pre><code class="language-julia hljs">using LinearAlgebra |
| 88 | + Dual{Nothing}(5.235667970533866,-28.483427362084157) |
| 89 | + Dual{Nothing}(-20.01280037289096,33.183672939659196) |
| 90 | + Dual{Nothing}(-38.214847932278,51.54757351567062) |
| 91 | + Dual{Nothing}(8.415665233938569,26.215857720767367) |
| 92 | + Dual{Nothing}(3.887876627862616,-40.7036821993153) |
| 93 | + Dual{Nothing}(7.402157244402636,23.316195824666664) |
| 94 | + Dual{Nothing}(-32.68639189413452,46.56845015117429) |
| 95 | + Dual{Nothing}(12.946650377238129,-38.429895539551595)</code></pre><p>The Jacobian of this function is</p><pre><code class="language-julia hljs">using LinearAlgebra |
96 | 96 |
|
97 | 97 | J = Diagonal(D * u.^2) + 2 .* u .* Matrix(D) * Diagonal(u)
|
98 | 98 |
|
|
116 | 116 | <span class="sgr32"><span class="sgr1"> Status</span></span> `~/work/SummationByPartsOperators.jl/SummationByPartsOperators.jl/docs/Manifest.toml`
|
117 | 117 | <span class="sgr90"> [f6369f11] </span>ForwardDiff v0.10.38
|
118 | 118 | <span class="sgr90"> [09ab397b] </span>StructArrays v0.6.18
|
119 |
| - <span class="sgr90"> [9f78cca6] </span>SummationByPartsOperators v0.5.82-DEV `~/work/SummationByPartsOperators.jl/SummationByPartsOperators.jl`</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tutorials/twodimensional_linear_advection/">« Linear advection equation in two dimensions</a><a class="docs-footer-nextpage" href="../applications/">Applications & references »</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="Thursday 14 August 2025 15:21">Thursday 14 August 2025</span>. Using Julia version 1.6.7.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> |
| 119 | + <span class="sgr90"> [9f78cca6] </span>SummationByPartsOperators v0.5.82-DEV `~/work/SummationByPartsOperators.jl/SummationByPartsOperators.jl`</code></pre></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="../tutorials/twodimensional_linear_advection/">« Linear advection equation in two dimensions</a><a class="docs-footer-nextpage" href="../applications/">Applications & references »</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 04:09">Friday 15 August 2025</span>. Using Julia version 1.6.7.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> |
0 commit comments