Lines Matching +full:- +full:a

1 # Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors
2 # All Rights Reserved. See the top-level LICENSE and NOTICE files for details.
4 # SPDX-License-Identifier: BSD-2-Clause
18 # -------------------------------------------------------------------------------
20 # -------------------------------------------------------------------------------
28 # -------------------------------------------------------------------------------
29 # Test creation, setting, reading, restoring, and destroying of a vector
30 # -------------------------------------------------------------------------------
39 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
40 x.set_array(a, cmode=libceed.USE_POINTER)
46 # -------------------------------------------------------------------------------
48 # -------------------------------------------------------------------------------
56 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
57 x.set_array(a, cmode=libceed.USE_POINTER)
72 # -------------------------------------------------------------------------------
74 # -------------------------------------------------------------------------------
85 a = x.get_array_read()
91 # -------------------------------------------------------------------------------
93 # -------------------------------------------------------------------------------
104 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
105 x.set_array(a, cmode=libceed.USE_POINTER)
114 # -------------------------------------------------------------------------------
116 # -------------------------------------------------------------------------------
125 a = np.zeros(n, dtype=ceed.scalar_type())
126 x.set_array(a, cmode=libceed.USE_POINTER)
129 b[3] = -3.14
132 assert a[3] == np.float32(-3.14)
134 assert a[3] == -3.14
136 # -------------------------------------------------------------------------------
137 # Test creation, setting, reading, restoring, and destroying of a vector using
139 # -------------------------------------------------------------------------------
143 # Skip test for non-GPU backend
151 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
152 x.set_array(a, cmode=libceed.USE_POINTER)
162 # -------------------------------------------------------------------------------
164 # -------------------------------------------------------------------------------
173 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
174 x.set_array(a, cmode=libceed.USE_POINTER)
182 # -------------------------------------------------------------------------------
184 # -------------------------------------------------------------------------------
193 a = np.arange(0, n, dtype=ceed.scalar_type())
196 a[i] *= -1
197 x.set_array(a, cmode=libceed.USE_POINTER)
201 assert abs(norm - 45.) < TOL
205 assert abs(norm - np.sqrt(285.)) < TOL
209 assert abs(norm - 9.) < TOL
211 # -------------------------------------------------------------------------------
212 # Test taking the reciprocal of a vector
213 # -------------------------------------------------------------------------------
222 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
223 x.set_array(a, cmode=libceed.USE_POINTER)
228 assert abs(b[i] - 1. / (10 + i)) < TOL
230 # -------------------------------------------------------------------------------
232 # -------------------------------------------------------------------------------
242 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
243 x.set_array(a, cmode=libceed.COPY_VALUES)
244 y.set_array(a, cmode=libceed.COPY_VALUES)
246 y.axpy(-0.5, x)
248 assert np.allclose(.5 * a, b)
250 # -------------------------------------------------------------------------------
252 # -------------------------------------------------------------------------------
263 a = np.arange(0, n, dtype=ceed.scalar_type())
264 w.set_array(a, cmode=libceed.COPY_VALUES)
265 x.set_array(a, cmode=libceed.COPY_VALUES)
266 y.set_array(a, cmode=libceed.COPY_VALUES)
271 assert abs(b[i] - i * i) < 1e-14
276 assert abs(b[i] - i * i * i) < 1e-14
281 assert abs(b[i] - i * i * i * i) < 1e-14
286 assert abs(b[i] - i * i) < 1e-14
288 # -------------------------------------------------------------------------------
290 # -------------------------------------------------------------------------------
299 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
300 x.set_array(a, cmode=libceed.COPY_VALUES)
302 x.scale(-0.5)
304 assert np.allclose(-.5 * a, b)
306 # -------------------------------------------------------------------------------
308 # -------------------------------------------------------------------------------
318 with x.array_write() as a:
319 for i in range(len(a)):
320 a[i] = 3 * i
322 with x.array_read() as a:
323 for i in range(len(a)):
324 assert a[i] == 3 * i
326 # -------------------------------------------------------------------------------
328 # -------------------------------------------------------------------------------
338 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
339 x.set_array(a, cmode=libceed.COPY_VALUES)
340 y.set_array(a, cmode=libceed.COPY_VALUES)
342 y.axpby(-0.5, 1.0, x)
344 assert np.allclose(0.5 * a, b)
346 # -------------------------------------------------------------------------------
348 # -------------------------------------------------------------------------------
359 a = np.arange(10, 10 + n, dtype=ceed.scalar_type())
360 x.set_array(a, cmode=libceed.USE_POINTER)
369 assert y_array[i] == a[i]
372 # -------------------------------------------------------------------------------
374 # -------------------------------------------------------------------------------
389 # -------------------------------------------------------------------------------