def test_reduced_corner_cases(self, lattice):
     # test whether there is always a sym-eq rotation that falls into the FZ
     N = np.random.randint(10, 40)
     size = np.ones(3) * np.pi**(2. / 3.)
     grid = grid_filters.coordinates0_node([N + 1, N + 1, N + 1], size,
                                           -size * .5)
     evenly_distributed = Orientation.from_cubochoric(x=grid[:-2, :-2, :-2],
                                                      lattice=lattice)
     assert evenly_distributed.shape == evenly_distributed.reduced.shape
 def test_unordered_coordinates(self,function,mode):
     origin = np.random.random(3)
     size   = np.random.random(3)*10.+origin
     cells  = np.random.randint(8,32,(3))
     unordered = grid_filters.coordinates0_node(cells,size,origin).reshape(-1,3)
     if mode:
         with pytest.raises(ValueError):
             function(unordered,mode)
     else:
         function(unordered,mode)
Exemple #3
0
 def test_coordinates(self, default, mode):
     if mode == 'cell':
         a = grid_filters.coordinates0_point(default.cells, default.size,
                                             default.origin)
         b = default.coordinates0_point.reshape(tuple(default.cells) +
                                                (3, ),
                                                order='F')
     elif mode == 'node':
         a = grid_filters.coordinates0_node(default.cells, default.size,
                                            default.origin)
         b = default.coordinates0_node.reshape(tuple(default.cells + 1) +
                                               (3, ),
                                               order='F')
     assert np.allclose(a, b)
Exemple #4
0
 def test_compare_reference_rectilinearGrid(self, update, ref_path,
                                            tmp_path):
     cells = np.array([5, 6, 7], int)
     size = np.array([.6, 1., .5])
     rectilinearGrid = VTK.from_rectilinear_grid(cells, size)
     c = grid_filters.coordinates0_point(cells, size).reshape(-1,
                                                              3,
                                                              order='F')
     n = grid_filters.coordinates0_node(cells, size).reshape(-1,
                                                             3,
                                                             order='F')
     rectilinearGrid.add(c, 'cell')
     rectilinearGrid.add(n, 'node')
     if update:
         rectilinearGrid.save(ref_path / 'rectilinearGrid')
     else:
         reference = VTK.load(ref_path / 'rectilinearGrid.vtr')
         assert rectilinearGrid.__repr__() == reference.__repr__() and \
                np.allclose(rectilinearGrid.get('cell'),c)
Exemple #5
0
 def test_coord0(self):
     size = np.random.random(3)  # noqa
     cells = np.random.randint(8, 32, (3))
     c = grid_filters.coordinates0_point(cells + 1, size + size / cells)
     n = grid_filters.coordinates0_node(cells, size) + size / cells * .5
     assert np.allclose(c, n)
Exemple #6
0
 def test_coordinates0_node(self):
     size = np.random.random(3)  # noqa
     cells = np.random.randint(8, 32, (3))
     coord = grid_filters.coordinates0_node(cells, size)
     assert np.allclose(coord[-1, -1, -1],
                        size) and coord.shape == tuple(cells + 1) + (3, )