Esempio n. 1
0
 def init_arrays(self):
     super().init_arrays()
     # sort arrays
     self.sorted_keys = carr.zeros(self.num_particles, dtype=np.int32,
                                   backend=self.backend)
     self.indices = carr.zeros(self.num_particles, dtype=np.int32,
                               backend=self.backend)
Esempio n. 2
0
    def init_arrays(self):
        # sort arrays
        self.bin_counts = carr.zeros(self.max_key,
                                     dtype=np.int32,
                                     backend=self.backend)
        self.start_indices = carr.zeros(self.max_key,
                                        dtype=np.int32,
                                        backend=self.backend)
        self.keys = carr.zeros(self.num_particles,
                               dtype=np.int32,
                               backend=self.backend)
        self.sorted_indices = carr.zeros(self.num_particles,
                                         dtype=np.int32,
                                         backend=self.backend)

        # neighbor arrays
        self.nbr_lengths = carr.zeros(self.num_particles,
                                      dtype=np.int32,
                                      backend=self.backend)
        self.nbr_starts = carr.zeros(self.num_particles,
                                     dtype=np.int32,
                                     backend=self.backend)
        self.nbrs = carr.zeros(2 * self.num_particles,
                               dtype=np.int32,
                               backend=self.backend)
Esempio n. 3
0
def test_extend(backend):
    check_import(backend)

    # Given
    dev_array = make_dev_array(backend)
    new_array = 2 + array.zeros(64, dtype=np.int32, backend=backend)

    # When
    dev_array.extend(new_array)

    # Then
    old_nparr = dev_array.get()
    new_nparr = new_array.get()
    assert np.all(old_nparr[-len(new_array)] == new_nparr)
Esempio n. 4
0
    def test_add_particles(self, backend):
        check_import(backend)
        self.setup()
        # Given
        pa = self.pa
        h = DeviceHelper(pa, backend=backend)

        # When
        pa.set_device_helper(h)
        x = array.zeros(4, np.float32, backend=backend)

        h.add_particles(x=x)

        # Then
        assert np.all(np.sort(h.x.get()) == np.array([0., 0., 0., 0., 0., 1.]))
Esempio n. 5
0
def test_cumsum(backend):
    check_import(backend)

    # Given
    a = array.ones(100, dtype=int, backend=backend)

    # When
    b = array.cumsum(a)

    # Then
    a.pull()
    b.pull()
    assert np.all(b.data == np.cumsum(a.data))

    # Test cumsum with an out argument
    # Given
    out = array.zeros(100, dtype=int, backend=backend)

    # When
    b = array.cumsum(a, out=out)

    # Then
    out.pull()
    assert np.all(out.data == np.cumsum(a.data))
Esempio n. 6
0
 def init_arrays(self):
     super().init_arrays()
     self.sort_offsets = carr.zeros(self.num_particles, dtype=np.int32,
                                    backend=self.backend)