Skip to content

Commit

Permalink
added get_cell_weights to DomainContributions.jl
Browse files Browse the repository at this point in the history
  • Loading branch information
hammy4815 authored Jun 16, 2023
1 parent 94419b8 commit 5e238b0
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion src/CellData/DomainContributions.jl
Original file line number Diff line number Diff line change
Expand Up @@ -186,4 +186,24 @@ function integrate(f,b::CompositeMeasure)
tc = move_contributions(ic,b.itrian,b.ttrian)
add_contribution!(cont,b.ttrian,tc)
return cont
end
end

function get_cell_weights(dΩ::Gridap.CellData.Measure)
get_cell_weights(dΩ.quad)
end

function get_cell_weights(quad::Gridap.CellData.CellQuadrature)
if quad.data_domain_style == PhysicalDomain() && quad.integration_domain_style == PhysicalDomain()
quad.cell_weight
elseif quad.data_domain_style == ReferenceDomain() && quad.integration_domain_style == PhysicalDomain()
cell_map = get_cell_map(quad.trian)
cell_Jt = lazy_map(∇,cell_map)
cell_Jtx = lazy_map(evaluate,cell_Jt,quad.cell_point)
cell_m = lazy_map(Broadcasting(Gridap.TensorValues.meas),cell_Jtx)
lazy_map(Broadcasting(*),quad.cell_weight,cell_m)
elseif quad.data_domain_style == ReferenceDomain() && quad.integration_domain_style == ReferenceDomain()
quad.cell_weight
else
Gridap.Helpers.@notimplemented
end
end

0 comments on commit 5e238b0

Please sign in to comment.