From 4c070013e6a525f65f332597807ba68176416662 Mon Sep 17 00:00:00 2001
From: Andreas Kloeckner <inform@tiker.net>
Date: Fri, 8 Jan 2016 14:51:40 -0600
Subject: [PATCH] Domain checks for differentiation outputs

---
 grudge/symbolic/operators.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/grudge/symbolic/operators.py b/grudge/symbolic/operators.py
index 32d82a27..49cc8fa1 100644
--- a/grudge/symbolic/operators.py
+++ b/grudge/symbolic/operators.py
@@ -142,6 +142,9 @@ class DiffOperatorBase(Operator):
             dd_in = _sym().DD_VOLUME
         if dd_out is None:
             dd_out = dd_in.with_qtag(_sym().QTAG_NONE)
+        if dd_out.uses_quadrature():
+            raise ValueError("differentiation outputs are not on "
+                    "quadrature grids")
 
         super(DiffOperatorBase, self).__init__(dd_in, dd_out)
 
@@ -190,6 +193,9 @@ class RefDiffOperatorBase(ElementwiseLinearOperator):
             dd_in = _sym().DD_VOLUME
         if dd_out is None:
             dd_out = dd_in.with_qtag(_sym().QTAG_NONE)
+        if dd_out.uses_quadrature():
+            raise ValueError("differentiation outputs are not on "
+                    "quadrature grids")
 
         super(RefDiffOperatorBase, self).__init__(dd_in, dd_out)
 
-- 
GitLab