Skip to content

Commit b73d689

Browse files
committed
tests: Fix typo in interpolation and shore up tests
1 parent 8590c81 commit b73d689

3 files changed

Lines changed: 43 additions & 4 deletions

File tree

devito/operations/interpolators.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,8 @@ def _augment_implicit_dims(self, implicit_dims, extras=None):
254254
for v in extras:
255255
try:
256256
if v.grid.is_SubDomain:
257-
edims.extend([d for d in v.grid.dims if d.root in self._gdims])
257+
edims.extend([d for d in v.grid.dimensions
258+
if d.is_Sub and d.root in self._gdims])
258259
except AttributeError:
259260
pass
260261

examples/userapi/07_functions_on_subdomains.ipynb

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3013,15 +3013,38 @@
30133013
"execution_count": 48,
30143014
"id": "692979ac-8bbf-4349-8b3f-ab98f11667bc",
30153015
"metadata": {},
3016-
"outputs": [],
3016+
"outputs": [
3017+
{
3018+
"name": "stdout",
3019+
"output_type": "stream",
3020+
"text": [
3021+
"4263.511\n"
3022+
]
3023+
}
3024+
],
30173025
"source": [
3018-
"assert np.isclose(np.linalg.norm(rec.data), 4263.511, atol=0, rtol=1e-4)"
3026+
"print(np.linalg.norm(rec.data))\n",
3027+
"# assert np.isclose(np.linalg.norm(rec.data), 4263.511, atol=0, rtol=1e-4)"
30193028
]
30203029
}
30213030
],
30223031
"metadata": {
3032+
"kernelspec": {
3033+
"display_name": "Python 3 (ipykernel)",
3034+
"language": "python",
3035+
"name": "python3"
3036+
},
30233037
"language_info": {
3024-
"name": "python"
3038+
"codemirror_mode": {
3039+
"name": "ipython",
3040+
"version": 3
3041+
},
3042+
"file_extension": ".py",
3043+
"mimetype": "text/x-python",
3044+
"name": "python",
3045+
"nbconvert_exporter": "python",
3046+
"pygments_lexer": "ipython3",
3047+
"version": "3.11.5"
30253048
}
30263049
},
30273050
"nbformat": 4,

tests/test_interpolation.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import pytest
44
from sympy import Float
55

6+
from conftest import assert_structure
67
from devito import (Grid, Operator, Dimension, SparseFunction, SparseTimeFunction,
78
Function, TimeFunction, DefaultDimension, Eq, switchconfig,
89
PrecomputedSparseFunction, PrecomputedSparseTimeFunction,
@@ -958,6 +959,10 @@ def test_interpolate_subdomain(self):
958959
assert np.all(np.isclose(sr0.data, check0))
959960
assert np.all(np.isclose(sr1.data, check1))
960961
assert np.all(np.isclose(sr2.data, check2))
962+
assert_structure(op,
963+
['p_sr0', 'p_sr0rsr0xrsr0y', 'p_sr1',
964+
'p_sr1rsr1xrsr1y', 'p_sr2', 'p_sr2rsr2xrsr2y'],
965+
'p_sr0rsr0xrsr0yp_sr1rsr1xrsr1yp_sr2rsr2xrsr2y')
961966

962967
def test_interpolate_subdomain_sinc(self):
963968
"""
@@ -997,6 +1002,10 @@ def test_interpolate_subdomain_sinc(self):
9971002

9981003
assert np.all(np.isclose(sr0.data, sr2.data))
9991004
assert np.all(np.isclose(sr1.data, sr2.data))
1005+
assert_structure(op,
1006+
['p_sr0', 'p_sr0rsr0xrsr0y', 'p_sr1',
1007+
'p_sr1rsr1xrsr1y', 'p_sr2', 'p_sr2rsr2xrsr2y'],
1008+
'p_sr0rsr0xrsr0yp_sr1rsr1xrsr1yp_sr2rsr2xrsr2y')
10001009

10011010
def test_inject_subdomain(self):
10021011
"""
@@ -1041,6 +1050,9 @@ def test_inject_subdomain(self):
10411050

10421051
assert np.all(np.isclose(f0.data, check0))
10431052
assert np.all(np.isclose(f1.data, check1))
1053+
assert_structure(op,
1054+
['p_sr0rsr0xrsr0y'],
1055+
'p_sr0rsr0xrsr0y')
10441056

10451057
def test_inject_subdomain_sinc(self):
10461058
"""
@@ -1070,6 +1082,9 @@ def test_inject_subdomain_sinc(self):
10701082

10711083
assert np.all(np.isclose(f0.data, f2.data[:9, -9:]))
10721084
assert np.all(np.isclose(f1.data, f2.data[1:-1, 1:-1]))
1085+
assert_structure(op,
1086+
['p_sr0rsr0xrsr0y'],
1087+
'p_sr0rsr0xrsr0y')
10731088

10741089
@pytest.mark.parallel(mode=4)
10751090
def test_interpolate_subdomain_mpi(self, mode):

0 commit comments

Comments
 (0)