From b0d70e670fbcb542793a3f736101c8d527da6212 Mon Sep 17 00:00:00 2001 From: Kaushik Kulkarni <kaushikcfd@gmail.com> Date: Mon, 9 May 2022 16:09:06 -0500 Subject: [PATCH] CI: modernize the freezes on DOFArrays --- test/test_arraycontext.py | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/test/test_arraycontext.py b/test/test_arraycontext.py index 49c5649..7b88698 100644 --- a/test/test_arraycontext.py +++ b/test/test_arraycontext.py @@ -32,7 +32,7 @@ from arraycontext import ( ArrayContext, dataclass_array_container, with_container_arithmetic, serialize_container, deserialize_container, - freeze, thaw, + freeze, thaw, with_array_context, FirstAxisIsElementsTag, PyOpenCLArrayContext, PytatoPyOpenCLArrayContext, @@ -188,22 +188,9 @@ def _deserialize_dof_container( for i, (stream_i, v) in enumerate(iterable))) -@freeze.register(DOFArray) -def _freeze_dofarray(ary, actx=None): - assert actx is None - return type(ary)( - None, - tuple(ary.array_context.freeze(subary) for subary in ary.data)) - - -@thaw.register(DOFArray) -def _thaw_dofarray(ary, actx): - if ary.array_context is not None: - raise ValueError("cannot thaw DOFArray that already has an array context") - - return type(ary)( - actx, - tuple(actx.thaw(subary) for subary in ary.data)) +@with_array_context.register(DOFArray) +def _with_actx_dofarray(ary, actx): + return type(ary)(actx, ary.data) # }}} @@ -1195,6 +1182,11 @@ class Velocity2D: array_context: ArrayContext +@with_array_context.register(Velocity2D) +def _with_actx_velocity_2d(ary, actx): + return type(ary)(ary.u, ary.v, actx) + + def scale_and_orthogonalize(alpha, vel): from arraycontext import rec_map_array_container actx = vel.array_context -- GitLab