Skip to content

Commit

Permalink
add ad testing to 2d problem
Browse files Browse the repository at this point in the history
  • Loading branch information
zjwegert committed Sep 27, 2024
1 parent 86e1137 commit 25c9ce3
Showing 1 changed file with 12 additions and 3 deletions.
15 changes: 12 additions & 3 deletions scripts/Embedded/MWEs/zach_embedded_boundary_integral.jl
Original file line number Diff line number Diff line change
Expand Up @@ -218,13 +218,22 @@ dom_contrib_t1 = ∫(-(_n⋅∇(fh))*dv/(norm ∘ (∇(φh))))dΓ

# Construct DomainContribution and assemble
dom_contrib = dom_contrib_t1 + dom_contrib_t2
dj2_exp_vec = assemble_vector(dom_contrib,V_φ)
djΓ_exp_vec = assemble_vector(dom_contrib,V_φ)

### Visualisation and testing
# AD
diff_Γ = DifferentiableTriangulation(Γ)
dΓ2 = Measure(diff_Γ,2*order)
(φ) = (1)dΓ2
djΓ = gradient(jΓ,φh)
djΓ_contrib = DomainContribution()
Gridap.CellData.add_contribution!(djΓ_contrib,diff_Γ.trian,get_array(djΓ),+)
djΓ_vec_out = assemble_vector(djΓ_contrib,V_φ)

# Visualisation
bgcell_to_inoutcut = compute_bgcell_to_inoutcut(model,geo)
writevtk(
Ω,"results/Result",
cellfields=["φh"=>φh,"∇φ"=>(φh),"dj2"=>FEFunction(V_φ,dj2_exp_vec)],
cellfields=["φh"=>φh,"∇φ"=>(φh),"djΓ_analytic"=>FEFunction(V_φ,djΓ_exp_vec),"djΓ"=>FEFunction(V_φ,djΓ_vec_out)],
celldata=["inoutcut"=>bgcell_to_inoutcut]
)

Expand Down

0 comments on commit 25c9ce3

Please sign in to comment.