Skip to content

WADG should use overintegration #173

@inducer

Description

@inducer

@thomasgibson pointed out that our WADG could/should be able to take advantage of overintegration, which it currently doesn't. Consider the matrix we're supposed to apply:

image

(From the paper) Consider the current implementation:

grudge/grudge/op.py

Lines 645 to 653 in 2af3528

group_data.append(
# Based on https://arxiv.org/pdf/1608.03836.pdf
# true_Minv ~ ref_Minv * ref_M * (1/jac_det) * ref_Minv
actx.einsum("ei,ij,ej->ei",
jac_inv,
ref_mass_inverse,
vec_i,
tagged=(FirstAxisIsElementsTag(),))
)

The ref_Minv * ref_M * (1/jac_det) * ref_Minv * u shold really be (in weird pseudocode):

ref_Minv * ref_M("overintegrated") * (1/project("overintegrated", jac_det) * project("overintegrated", ref_Minv * u)

cc @lukeolson

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions