BUG: Real Space Forms are sometimes assembled incorrectly
I maintainer di solito rispondono entro 1 giorno
@connorjward ci sta già lavorando.
Dal 23/9/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Forms are sometimes assembled incorrectly. See the MWE below.
This is probably an important issue. It was causing instabilities in an Irksome script of mine, since Irksome internally uses real spaces in the MeshConstant class.
I presume the issue is due to compiler optimisations; the problem goes away by setting PYOP2_CFLAGS=-fno-tree-loop-vectorize.
from firedrake import *
mesh = UnitSquareMesh(5, 5)
# Create a vector function, and a real function
U = VectorFunctionSpace(mesh, "CG", 2)
u = Function(U).interpolate(as_vector((1, 0)))
R = FunctionSpace(mesh, "R", 0)
alpha = Function(R).assign(0)
# Compute errors between functionals, using different measures
def errors(measure):
# Create two functionals acting on Q = CG1
Q = FunctionSpace(mesh, "CG", 1)
q = TestFunction(Q)
F = dot(u, grad(q))*measure # This functional is non-zero
zero_term = alpha*q*measure # This functional is zero
# Form the Riesz representers of the functionals
combined = assemble(F + zero_term).riesz_representation("l2")
original = assemble(F).riesz_representation("l2")
zero = assemble(zero_term).riesz_representation("l2")
return errornorm(combined, original), norm(zero)
# Compute errors for default and degree-15 measures
default = errors(dx)
degree_15 = errors(dx(degree=15))
print(f"default: difference={default[0]:.3e}, zero term={default[1]:.3e}")
print(f"degree 15: difference={degree_15[0]:.3e}, zero term={degree_15[1]:.3e}")
# SCRIPT OUTPUT:
# default: difference=7.676e-18, zero term=0.000e+00
# degree 15: difference=3.546e-03, zero term=0.000e+00
- Lingua principale
- Python
- Stelle
- 684
- Fork
- 204
- Merge medio
- 4g 14h
- PR unite (30g)
- 46
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di firedrakeproject/firedrake
-
BUG: NonlinearVariationalSolver errors with adj_kwargsForse già presa @dham l’ha presa 151 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
firedrakeproject/firedrake#5186 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
firedrakeproject/firedrake#5091 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 1/5 1-3 ore Idoneità per principianti 82/100
firedrakeproject/firedrake#3556 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 22/100
firedrakeproject/firedrake#5644 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Function.assign on a subset fails with a Constant, a Real Function or abs in the expressionForse già presa @connorjward l’ha presa 2 giorni fa. Aperta
firedrakeproject/firedrake#5643 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di firedrakeproject/firedrake
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Sienna-Platform/SiennaSchemas#130 ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
firedrakeproject/Irksome#293 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
ida-arbeitszeit/workers-control#1578 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
aws-samples/sample-per-model-bedrock#898 ·
I maintainer di solito rispondono entro 1 giorno