From e83dae0d3e07e8aa7c9e45e30031eb4b50c9a153 Mon Sep 17 00:00:00 2001 From: markus holzer <markus.holzer@fau.de> Date: Thu, 17 Jun 2021 14:26:45 +0200 Subject: [PATCH] Fix sparse lbm --- lbmpy/boundaries/boundaryconditions.py | 13 +- lbmpy/sparse/mapping.py | 137 +++++++----- lbmpy_tests/test_esotwist_visualization.ipynb | 2 +- lbmpy_tests/test_sparse_lbm.ipynb | 196 +++++++++++++----- 4 files changed, 234 insertions(+), 114 deletions(-) diff --git a/lbmpy/boundaries/boundaryconditions.py b/lbmpy/boundaries/boundaryconditions.py index d863e7b6..24d9ba0b 100644 --- a/lbmpy/boundaries/boundaryconditions.py +++ b/lbmpy/boundaries/boundaryconditions.py @@ -173,12 +173,11 @@ class UBB(LbBoundary): def __call__(self, f_out, f_in, dir_symbol, inv_dir, lb_method, index_field): vel_from_idx_field = callable(self._velocity) vel = [index_field(f'vel_{i}') for i in range(self.dim)] if vel_from_idx_field else self._velocity - direction = dir_symbol assert self.dim == lb_method.dim, \ f"Dimension of UBB ({self.dim}) does not match dimension of method ({lb_method.dim})" - neighbor_offset = NeighbourOffsetArrays.neighbour_offset(direction, lb_method.stencil) + neighbor_offset = NeighbourOffsetArrays.neighbour_offset(dir_symbol, lb_method.stencil) velocity = tuple(v_i.get_shifted(*neighbor_offset) if isinstance(v_i, Field.Access) and not vel_from_idx_field @@ -193,7 +192,7 @@ class UBB(LbBoundary): c_s_sq = sp.Rational(1, 3) weight_of_direction = LbmWeightInfo.weight_of_direction vel_term = 2 / c_s_sq * sum([d_i * v_i for d_i, v_i in zip(neighbor_offset, velocity)]) * weight_of_direction( - direction, lb_method) + dir_symbol, lb_method) # Better alternative: in conserved value computation # rename what is currently called density to "virtual_density" @@ -205,12 +204,12 @@ class UBB(LbBoundary): density_equations = cqc.output_equations_from_pdfs(pdf_field_accesses, {'density': density_symbol}) density_symbol = lb_method.conserved_quantity_computation.defined_symbols()['density'] result = density_equations.all_assignments - result += [Assignment(f_in(inv_dir[direction]), - f_out(direction) - vel_term * density_symbol)] + result += [Assignment(f_in(inv_dir[dir_symbol]), + f_out(dir_symbol) - vel_term * density_symbol)] return result else: - return [Assignment(f_in(inv_dir[direction]), - f_out(direction) - vel_term)] + return [Assignment(f_in(inv_dir[dir_symbol]), + f_out(dir_symbol) - vel_term)] # end class UBB diff --git a/lbmpy/sparse/mapping.py b/lbmpy/sparse/mapping.py index 4c822f31..6b40d0fe 100644 --- a/lbmpy/sparse/mapping.py +++ b/lbmpy/sparse/mapping.py @@ -1,14 +1,28 @@ from typing import Tuple +import operator import numpy as np import sympy as sp +from lbmpy.advanced_streaming.indexing import BetweenTimestepsIndexing, NeighbourOffsetArrays +from lbmpy.advanced_streaming.utility import Timestep from lbmpy.boundaries.boundaryhandling import LbmWeightInfo -from pystencils import Assignment, Field, TypedSymbol +from pystencils import Assignment, Field, TypedSymbol, create_kernel from pystencils.boundaries.boundaryhandling import BoundaryOffsetInfo from pystencils.boundaries.createindexlist import ( boundary_index_array_coordinate_names, create_boundary_index_list, direction_member_name) +from pystencils.field import FieldType +from pystencils import Assignment, AssignmentCollection + + +def pdf_index(cell_index, direction_index, domain_size): + return cell_index + direction_index * domain_size + + +def inverse_idx(stencil, idx): + return stencil.index(tuple(-d_i for d_i in stencil[idx])) + class SparseLbMapper: """Manages the mapping of cell coordinates to indices and back. @@ -16,6 +30,7 @@ class SparseLbMapper: Args: flag_arr: integer array where each bit corresponds to a boundary or 'fluid' """ + def __init__(self, stencil, flag_arr, fluid_flag, no_slip_flag, other_boundary_mask): self._flag_arr = flag_arr self._coordinate_arr = None @@ -106,13 +121,6 @@ class SparseLbMapper: def create_index_array(self, ghost_layers=1): # TODO support different layouts here stencil = self.stencil - - def pdf_index(cell_index, direction_index): - return cell_index + direction_index * len(self) - - def inverse_idx(idx): - return stencil.index(tuple(-d_i for d_i in stencil[idx])) - flag_arr = self.flag_array no_slip_flag = self.no_slip_flag fluid_boundary_mask = self.other_boundary_mask | self.fluid_flag @@ -126,9 +134,9 @@ class SparseLbMapper: inv_neighbor_cell = np.array([cell_i - dir_i for cell_i, dir_i in zip(cell, direction)]) if flag_arr[tuple(inv_neighbor_cell)] & fluid_boundary_mask: neighbor_cell_idx = self.cell_idx(tuple(inv_neighbor_cell)) - result.append(pdf_index(neighbor_cell_idx, direction_idx)) + result.append(pdf_index(neighbor_cell_idx, direction_idx, len(self))) elif flag_arr[tuple(inv_neighbor_cell)] & no_slip_flag: # no-slip before periodicity! - result.append(pdf_index(own_cell_idx, inverse_idx(direction_idx))) + result.append(pdf_index(own_cell_idx, inverse_idx(stencil, direction_idx), len(self))) else: at_border = False for i, x_i in enumerate(inv_neighbor_cell): @@ -141,7 +149,7 @@ class SparseLbMapper: if at_border: assert flag_arr[tuple(inv_neighbor_cell)] & fluid_boundary_mask neighbor_cell_idx = self.cell_idx(tuple(inv_neighbor_cell)) - result.append(pdf_index(neighbor_cell_idx, direction_idx)) + result.append(pdf_index(neighbor_cell_idx, direction_idx, len(self))) else: raise ValueError("Could not find neighbor for {} direction {}".format(cell, direction)) @@ -153,55 +161,76 @@ class SparseLbMapper: class SparseLbBoundaryMapper: NEIGHBOR_IDX_NAME = 'nidx{}' - DIR_SYMBOL = TypedSymbol("dir", np.uint32) + DIR_SYMBOL = TypedSymbol("dir", np.int64) def __init__(self, boundary, method, pdf_field_sparse): full_pdf_field = Field.create_generic('pdfFull', spatial_dimensions=method.dim, index_dimensions=1) + full_pdf_field.field_type = FieldType.CUSTOM + prev_timestep = Timestep.BOTH + streaming_pattern = 'pull' additional_data_field = Field.create_generic('additionalData', spatial_dimensions=1, dtype=boundary.additional_data) - boundary_eqs = boundary(full_pdf_field, self.DIR_SYMBOL, method, additional_data_field) + + indexing = BetweenTimestepsIndexing( + full_pdf_field, method.stencil, prev_timestep, streaming_pattern, np.int64, np.int64) + + f_out, f_in = indexing.proxy_fields + dir_symbol = indexing.dir_symbol + inv_dir = indexing.inverse_dir_symbol + + boundary_eqs = boundary(f_out, f_in, dir_symbol, inv_dir, method, additional_data_field) + neighbor_offsets = {fa.offsets for eq in boundary_eqs for fa in eq.atoms(Field.Access)} neighbor_offsets = list(neighbor_offsets) - neighbor_offsets_dtype = [(self.NEIGHBOR_IDX_NAME.format(i), np.uint32) - for i in range(len(neighbor_offsets))] + neighbor_offsets_dtype = [(self.NEIGHBOR_IDX_NAME.format(i), np.int64) + for i in range(method.dim)] - index_field_dtype = np.dtype([('dir', np.uint32), + index_field_dtype = np.dtype([('dir', np.int64), *neighbor_offsets_dtype, *boundary.additional_data]) - index_field = Field.create_generic('indexField', spatial_dimensions=1, dtype=index_field_dtype) - boundary_eqs = boundary(full_pdf_field, self.DIR_SYMBOL, method, index_field) - - offset_subs = {off: sp.Symbol(self.NEIGHBOR_IDX_NAME.format(i)) for i, off in enumerate(neighbor_offsets)} - - new_boundary_eqs = [] - for eq in boundary_eqs: - substitutions = { - fa: pdf_field_sparse.absolute_access([index_field(offset_subs[fa.offsets].name)], fa.index) - for fa in eq.atoms(Field.Access) - if fa.field == full_pdf_field - } - new_boundary_eqs.append(eq.subs(substitutions)) - - self.boundary_eqs = new_boundary_eqs - self.boundary_eqs_orig = boundary_eqs + index_field = Field.create_generic("idx", spatial_dimensions=1, index_dimensions=1, dtype=np.int64) + + if isinstance(boundary_eqs, Assignment): + assignments = [boundary_eqs] + + if not isinstance(boundary_eqs, AssignmentCollection): + assignments = AssignmentCollection(boundary_eqs) + + accessor_subs = dict() + for fa in assignments.atoms(Field.Access): + if fa.field == f_out: + f_dir = 'out' + elif fa.field == f_in: + f_dir = 'in' + else: + continue + i = 1 if f_dir == "in" else 2 + accessor_subs[fa] = pdf_field_sparse.absolute_access((index_field(i),), ()) + + self.boundary_eqs = assignments.new_with_substitutions(accessor_subs) + self.boundary_eqs_orig = assignments self.method = method self.index_field_dtype = index_field_dtype self.neighbor_offsets = neighbor_offsets self.index_field = index_field + self.timesptep_indexing = indexing + self.boundary_functor = boundary def _build_substitutions(self): dim = self.method.dim stencil = self.method.stencil + neighbour_offset = NeighbourOffsetArrays(stencil) - result = [{BoundaryOffsetInfo.offset_from_dir(self.DIR_SYMBOL, dim)[current_dim]: offset[current_dim] + result = [{self.neighbor_offsets[0][current_dim]: offset[current_dim] for current_dim in range(dim)} for i, offset in enumerate(self.method.stencil) ] + for dir_idx, subs_dict in enumerate(result): inv_idx = stencil.index(tuple(-e for e in stencil[dir_idx])) - subs_dict[BoundaryOffsetInfo.inv_dir(self.DIR_SYMBOL)] = inv_idx + subs_dict[self.timesptep_indexing._index_array_symbol("in", True)] = inv_idx return result def create_index_arr(self, mapping: SparseLbMapper, boundary_mask, nr_of_ghost_layers=1): @@ -211,28 +240,36 @@ class SparseLbBoundaryMapper: flag_dtype(boundary_mask), flag_dtype(mapping.fluid_flag), nr_of_ghost_layers) - result = np.empty(idx_arr.shape, dtype=self.index_field_dtype) + result = [] dim = self.method.dim coord_names = boundary_index_array_coordinate_names[:dim] center_coordinates = idx_arr[coord_names] - substitutions = self._build_substitutions() - for j, neighbor_offset in enumerate(self.neighbor_offsets): - neighbor_coordinates = center_coordinates.copy() - offsets = np.array([tuple(int(sp.sympify(e).subs(substitution)) for e in neighbor_offset) - for substitution in substitutions]) - for i, coord_name in enumerate(coord_names): - neighbor_coordinates[coord_name] += offsets[:, i][idx_arr['dir']] - result[self.NEIGHBOR_IDX_NAME.format(j)] = mapping.cell_idx_bulk(neighbor_coordinates) - - result[direction_member_name] = idx_arr[direction_member_name] - # Find neighbor indices - return result + result = [] + for direction_idx, direction in enumerate(stencil): + if all(d_i == 0 for d_i in direction): + assert direction_idx == 0 + continue + for own_cell_idx, cell in enumerate(mapping.fluid_coordinates): + inv_neighbor_cell = np.array([cell_i - dir_i for cell_i, dir_i in zip(cell, direction)]) + if mapping.flag_array[tuple(inv_neighbor_cell)] & boundary_mask: + write = pdf_index(own_cell_idx, direction_idx, len(mapping)) + read = pdf_index(own_cell_idx, inverse_idx(stencil, direction_idx), len(mapping)) + result.append([direction_idx, write, read]) + + return np.array(result, dtype=np.int64) def assignments(self): - return [BoundaryOffsetInfo(self.method.stencil), - LbmWeightInfo(self.method), - Assignment(self.DIR_SYMBOL, self.index_field(self.DIR_SYMBOL.name)), + return [Assignment(self.DIR_SYMBOL, self.index_field(0)), *self.boundary_eqs] + + def get_kernel(self): + kernel = create_kernel(self.assignments(), ghost_layers=0) + + index_arrs_node = self.timesptep_indexing.create_code_node() + for node in self.boundary_functor.get_additional_code_nodes(self.method)[::-1]: + kernel.body.insert_front(node) + kernel.body.insert_front(index_arrs_node) + return kernel diff --git a/lbmpy_tests/test_esotwist_visualization.ipynb b/lbmpy_tests/test_esotwist_visualization.ipynb index c55a894d..4f84ad82 100644 --- a/lbmpy_tests/test_esotwist_visualization.ipynb +++ b/lbmpy_tests/test_esotwist_visualization.ipynb @@ -127,7 +127,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.5" + "version": "3.8.2" } }, "nbformat": 4, diff --git a/lbmpy_tests/test_sparse_lbm.ipynb b/lbmpy_tests/test_sparse_lbm.ipynb index 7e6ec4a0..b6ff4a5a 100644 --- a/lbmpy_tests/test_sparse_lbm.ipynb +++ b/lbmpy_tests/test_sparse_lbm.ipynb @@ -57,23 +57,87 @@ "lid_velocity = 0.01\n", "force = 1e-6\n", "\n", - "channel = True\n", + "channel = False\n", "if channel:\n", " kwargs={'force': (force, 0)}\n", "else:\n", " kwargs = {}\n", "\n", - "method = create_lb_method(stencil='D2Q9', relaxation_rate=omega, compressible=False, **kwargs)" + "method = create_lb_method(stencil='D2Q9', relaxation_rate=omega, compressible=True, **kwargs)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, + "outputs": [], + "source": [ + "stencil = get_stencil(\"D2Q9\")\n", + "dh = ps.create_data_handling(domain_size=domain_size, periodicity=(False, False))\n", + "\n", + "src = dh.add_array('src', values_per_cell=len(stencil), alignment=True)\n", + "dh.fill('src', 0.0, ghost_layers=True)\n", + "dst = dh.add_array('dst', values_per_cell=len(stencil), alignment=True)\n", + "dh.fill('dst', 0.0, ghost_layers=True)\n", + "\n", + "velField = dh.add_array('velField', values_per_cell=dh.dim, alignment=True)\n", + "dh.fill('velField', 0.0, ghost_layers=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 1152x432 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "ps.stencil.plot_2d(stencil)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEEAAAAVCAYAAAAZ6IOkAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB8klEQVRYCeWY7VHCQBCGgbGAqB3EDkAqUDoASjAdxJ/hr3aglkAJSAnSAXQg0kF8n+PCHDGOCZkJMdmZze3tfWTfze5d7jpxHHdcjqLId+tNk7Pw9ToOzWazUNW+o2qi6FucB2xdvjSkhrGKocpHo0g9pMc5c/FA8i7VXKvqX7aqnY+9U/mK4cYJqniSlyoHKBOy+jfVt+JbMY64lL52Tihqq/p/CMsdWC4kQE/iFyM5Dwt2gkpyrVPlBFvBC+4gWROmmsSEBoDbQBYvuL2eHqwFmzYAz8AI7imRMBK/Z3RogwrcI5zAgrduA+IMjOD2cQI7A6t/GwncPrvDlfjsWx4LlOxYiinz0kTjVnk7Z/RjTfCSLTKjvVqVwPAhjv5TKrDABADpQEgU8X4FtlX2CnBvcQIh4Zd9rQ3nstNUPZ5I2OAEcmqY4+3Xtg8Dj8g64Eslv6J1oF9tTRlH+q26Olr2JcwF4CbVwVSl59AE3YsJH5xG9CzUdvjLlJxss2c7YOW1VbYbsjYH5i5BjljjjLJ3B5pjLPbKzlPFeNnpi9e8i3SAzEFiL5Z6chRnlf8PxJUBuPdOkOGENZcNJy+QGkuqfDJp3cniBK9J5yQSsJsj84/jdAFAD5r0uUD/c3YFZ3AwwM0/myehq2uaLIwhOF1c3+LzzDCS0J4dAAAAAElFTkSuQmCC\n", + "text/latex": [ + "$\\displaystyle \\left( 1, \\ -1\\right)$" + ], + "text/plain": [ + "(1, -1)" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "stencil[8]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", "text/plain": [ "<Figure size 1152x432 with 2 Axes>" ] @@ -119,11 +183,11 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ - "mapping = SparseLbMapper(method.stencil, flag_arr, flags['fluid'], flags[noslip], flags[ubb])\n", + "mapping = SparseLbMapper(method.stencil, flag_arr, flags['fluid'], flags[noslip], 0)\n", "index_arr = mapping.create_index_array(ghost_layers)\n", "\n", "# Arrays\n", @@ -138,7 +202,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -160,7 +224,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -180,14 +244,17 @@ " {'velocity': vel_field})\n", "kernel_compute_u = ps.create_kernel(getter_eqs, ghost_layers=((0,0),) ).compile()\n", "\n", - "def get_velocity(arr=pdf_arr):\n", + "def get_velocity(arr=pdf_arr, ghost_layers=True):\n", " fluid_cell_arr = mapping.coordinates\n", " kernel_compute_u(f=pdf_arr[:mapping.num_fluid_cells], u=vel_arr)\n", " full_velocity_arr = np.zeros(flag_arr.shape + (2,), dtype=np.float64)\n", " full_velocity_arr.fill(np.nan)\n", " arr = fluid_cell_arr[:mapping.num_fluid_cells]\n", " full_velocity_arr[arr['x'], arr['y']] = vel_arr\n", - " return full_velocity_arr[1:-1, 1:-1]" + " if ghost_layers:\n", + " return full_velocity_arr\n", + " else:\n", + " return full_velocity_arr[1:-1, 1:-1]" ] }, { @@ -199,27 +266,9 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 11, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/latex": [ - "$\\displaystyle \\left\\{ d_{0} : {{d}_{0}^{0}}, \\ d_{1} : {{d}_{0}^{1}}, \\ d_{2} : {{d}_{0}^{2}}, \\ d_{3} : {{d}_{0}^{3}}, \\ d_{4} : {{d}_{0}^{4}}, \\ d_{5} : {{d}_{0}^{5}}, \\ d_{6} : {{d}_{0}^{6}}, \\ d_{7} : {{d}_{0}^{7}}, \\ d_{8} : {{d}_{0}^{8}}, \\ f_{0} : {{f}_{0}^{0}}, \\ f_{1} : {{f}_{\\mathbf{{idx}_{0}^{0}}}^{0}}, \\ f_{2} : {{f}_{\\mathbf{{idx}_{0}^{1}}}^{0}}, \\ f_{3} : {{f}_{\\mathbf{{idx}_{0}^{2}}}^{0}}, \\ f_{4} : {{f}_{\\mathbf{{idx}_{0}^{3}}}^{0}}, \\ f_{5} : {{f}_{\\mathbf{{idx}_{0}^{4}}}^{0}}, \\ f_{6} : {{f}_{\\mathbf{{idx}_{0}^{5}}}^{0}}, \\ f_{7} : {{f}_{\\mathbf{{idx}_{0}^{6}}}^{0}}, \\ f_{8} : {{f}_{\\mathbf{{idx}_{0}^{7}}}^{0}}\\right\\}$" - ], - "text/plain": [ - "{dâ‚€: d_C__0, dâ‚: d_C__1, dâ‚‚: d_C__2, d₃: d_C__3, dâ‚„: d_C__4, dâ‚…: d_C__5, d₆: d\n", - "_C__6, d₇: d_C__7, d₈: d_C__8, fâ‚€: f_C__0, fâ‚: f_b59661980ed8, fâ‚‚: f_c4b733d80\n", - "293, f₃: f_46a6e6d3a3b5, fâ‚„: f_31387ae7897f, fâ‚…: f_24d70d6a047a, f₆: f_c9de861\n", - "6062f, f₇: f_c16814a33bbc, f₈: f_52ab73425808}" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "#index_field = ps.Field.create_from_numpy_array(\"idx\", index_arr, index_dimensions=1)\n", "index_field = ps.Field.create_generic(\"idx\", spatial_dimensions=1, index_dimensions=1, dtype=index_arr.dtype)\n", @@ -232,13 +281,12 @@ "\n", "symbol_subs.update({sym: pdf_field_tmp(i) for i, sym in enumerate(method.post_collision_pdf_symbols)})\n", "\n", - "symbol_subs[method.pre_collision_pdf_symbols[0]] = pdf_field(0) # special case for center\n", - "symbol_subs" + "symbol_subs[method.pre_collision_pdf_symbols[0]] = pdf_field(0) # special case for center" ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -256,7 +304,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 13, "metadata": {}, "outputs": [], "source": [ @@ -268,11 +316,14 @@ " #TODO the following line is wrong: kernel contains accesses to index_field and pdf_field which have \n", " #different size: a correct kernel comes out when by change the shape is taken from index field, \n", " # when taken from pdf field, a wrong kernel is generated\n", - " ubb_kernel = ps.create_kernel(ubb_mapper.assignments(), ghost_layers=0).compile()\n", + " ubb_ast = ubb_mapper.get_kernel()\n", + " \n", + " # ps.show_code(ubb_ast)\n", + " \n", + " ubb_kernel = ubb_ast.compile()\n", " ubb_idx_arr = ubb_mapper.create_index_arr(mapping, flags[ubb])\n", - " ps.show_code(ubb_kernel.ast)\n", " def handle_ubb():\n", - " ubb_kernel(indexField=ubb_idx_arr, f=pdf_arr[:mapping.num_fluid_cells])\n", + " ubb_kernel(f=pdf_arr[:mapping.num_fluid_cells], idx=ubb_idx_arr)\n", "else:\n", " def handle_ubb():\n", " pass" @@ -287,13 +338,12 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "def time_step():\n", " global pdf_arr, pdf_arr_tmp, index_arr\n", - " handle_ubb()\n", " if target == 'gpu':\n", " gpu_pdf_arr = gpuarray.to_gpu(pdf_arr)\n", " gpu_pdf_arr_tmp = gpuarray.to_gpu(pdf_arr_tmp)\n", @@ -311,30 +361,33 @@ " d=pdf_arr_tmp[:mapping.num_fluid_cells], \n", " idx=index_arr)\n", " pdf_arr_tmp, pdf_arr = pdf_arr, pdf_arr_tmp\n", + " \n", + " handle_ubb()\n", "\n", "def run(steps=100):\n", " for t in range(steps):\n", " time_step()\n", - " return get_velocity()" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [], - "source": [ - "init()" + " return get_velocity(ghost_layers=False)" ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 15, "metadata": {}, "outputs": [ { "data": { - "image/png": "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ZmamV980jf1J3xwcHGBpaakxK9U3IYQy6+DgoDa2p+s8rWLfpJ5/wsTERHJsT7L29vZa+2Zpaam1b/b29hqzgHTfrK2tlfl/s29StS0sLJRZY/pmZ2enHLvUz/ETmvpWceyG/qxYW1srs1I/xxXrSH1Pn3y/HBwcYGJiorX202PTt2+MMVbpNM1cdT0A9AAwv8Lf3wUw86lzEgD4Vvj7dQCuur42r6AyxqoyhUJBrVu3JnNzc+rUqRPNnDmTbt68qXc+MTGRhBDKlZxNmzZpXcl52siRI1VWcs6ePat1JaeigoIC8vT0JDs7O3rjjTd0ruQ8bc2aNSorOfv379e6kvO06OholZWc69ev6529du0amZiYkIeHB/Xr1482bNhAeXl5eufHjRtHACgiIoK++eYbOn36tN59KyoqIj8/P7K1taXXX3+dFi1aRHfv3tW79qZNmwgA1axZk0aMGEF79+6lkpISvfNyuZxMTU2pXbt2NG3aNLp27Zre2du3b5OZmRm5u7tT3759ad26dZSTk6N3/rvvviMA1KhRI/rqq68oLi5O6yp7RSUlJVS9enWysbGhbt260YIFCyg9PV3v2jt27CAAVL16dRo2bBjt2rWLiouL9c736NGDTExMqE2bNvTzzz/T5cuX9c7euXOHLC0tydXVld577z1as2YNZWdn653/6aefCAA1aNCA/ve//9Hx48f17ltZWRnVrl2brKys6JVXXqF58+bRnTt39K69f/9+5VUdQ4cOpR07dmi9qoMxxl40aFlB1fwRv26pAPwq/N338TGpc1KEEKYAHADod6MVY4xVUVlZWRg2bBi2bNmic9VOSmZmJk6cOIFGjRppXT2SQo8+xENaWho8PT0Nrp2cnIxly5ahdevWWlePNLG2tsbly5cRFBRkcDYnJwcffvgh1qxZo3PVTsr9+/dx5MgRREREGNW30NBQpKamwtvb2+DaKSkpmD9/PqKiorSuUGtiZmaGxMREBAcHa111k5Kfn4933nkHy5Ytg4ODg8G109PTcfDgQTRp0sSovgUHByMlJQU+Pk9fJKVbamoqZs2ahTZt2mhdadXmwoULqFOnjsF9KywsRI8ePTB37lw4OTkZXPfOnTvYs2cPIiMjta5WalKtWjUkJSXBz89P98kStadMmYJ27dppXWnVpKysDOfPn0fdunUN7htjjFU2QUbsLgcAjyecVwC0x6OJ6EkAbxPRhQrnDAEQSkSDhBC9AHQnojd1fe2IiAiKi4szalyMMcYYY4wxxqouIcQpIoqQes7oFVQiKhNCDMWjjZBMACwkogtCiG/xaMl2E4AFAJYJIa4BeACgl7H1GGOMMcYYY4y93J7lEl8Q0VYAW586Nr7Cn4sAvPEsNRhjjDHGGGOM/d/wLLv4MsYYY4wxxhhjzw1PUBljjDHGGGOMVQk8QWWMMcYYY4wxViXwBJUxxhhjjDHGWJXAE1TGGGOMMcYYY1UCT1AZY4wxxhhjjFUJPEFljDHGGGOMMVYl8ASVMcYYY4wxxliVwBNUxhhjjDHGGGNVgiCiyh6DGiHEfQC3K3sc7D/HFUBGZQ+C/Z/Brzf2IvHrjb1I/HpjLxK/3v5vCiAiN6knquQElTFjCCHiiCiissfB/m/g1xt7kfj1xl4kfr2xF4lfb+xpfIkvY4wxxhhjjLEqgSeojDHGGGOMMcaqBJ6gspfJ3MoeAPs/hV9v7EXi1xt7kfj1xl4kfr0xFXwPKmOMMcYYY4yxKoFXUBljjDHGGGOMVQk8QWX/aUKIN4QQF4QQCiFExFPPjRVCXBNCXBZCdKqsMbKXixAi5vFr6poQYkxlj4e9fIQQC4UQ94QQCRWOOQshdgkhrj7+X6fKHCN7OQgh/IQQ+4QQFx//t3TY4+P8emPPnRDCUghxQghx7vHr7ZvHx6sJIY4//u/qKiGEeWWPlVUunqCy/7oEAN0BHKx4UAgRAqAXgLoAYgD8JoQwefHDYy+Tx6+hWQBiAYQAeOvxa42x52kxHv3/VkVjAOwholoA9jz+O2PPqgzAZ0QUAqApgCGP/z+NX2/s31AMoB0RhQFoACBGCNEUwGQA04ioJoAsAP0qb4isKuAJKvtPI6JEIros8dSrAFYSUTER3QRwDUCTFzs69hJqAuAaEd0gohIAK/HotcbYc0NEBwE8eOrwqwCWPP7zEgDdXuSY2MuJiNKI6PTjP+cCSATgA369sX8BPZL3+K9mjx8EoB2AtY+P8+uN8QSVvbR8ACRX+HvK42OMPQt+XbHK4kFEaY//nA7AozIHw14+QohAAA0BHAe/3ti/RAhhIoQ4C+AegF0ArgN4SERlj0/h/64ymFb2ABjTRQixG4CnxFNfEtHGFz0exhirTEREQgjegp89N0IIWwDrAAwnohwhhPI5fr2x54mIygE0EEI4AvgLQO3KHRGriniCyqo8IupgRCwVgF+Fv/s+PsbYs+DXFassd4UQXkSUJoTwwqPVB8aemRDCDI8mp8uJaP3jw/x6Y/8qInoohNgHoBkARyGE6eNVVP7vKuNLfNlLaxOAXkIICyFENQC1AJyo5DGx/76TAGo93nHQHI824tpUyWNi/zdsAtDn8Z/7AOCrR9gzE4+WShcASCSiqRWe4tcbe+6EEG6PV04hhLAC0BGP7nveB6DH49P49cYgiPiqDfbfJYR4DcAMAG4AHgI4S0SdHj/3JYAP8GiXwuFEtK2yxsleHkKIzgB+AWACYCERTajcEbGXjRBiBYA2AFwB3AXwFYANAFYD8AdwG8CbRPT0RkqMGUQI0RLAIQDnASgeH/4Cj+5D5dcbe66EEPXxaBMkEzxaJFtNRN8KIarj0aaDzgDOAHiHiIorb6SssvEElTHGGGOMMcZYlcCX+DLGGGOMMcYYqxJ4gsoYY4wxxhhjrErgCSpjjDHGGGOMsSqBJ6iMMcYYY4wxxqoEnqAyxhhjjDHGGKsSeILKGGOMMcYYY6xK4AkqY4wxxhhjjLEqgSeojDHGGGOMMcaqhP8HDrbDggRwH30AAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.quiver.Quiver at 0x7ff85f071910>" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", "text/plain": [ "<Figure size 1152x432 with 1 Axes>" ] @@ -346,9 +399,11 @@ } ], "source": [ + "timesteps = 100\n", + "\n", "init()\n", - "result = run(100)\n", - "plt.vector_field(result, step=1);" + "result = run(timesteps) # get_velocity(ghost_layers=False) # \n", + "plt.vector_field(result, step=1)" ] }, { @@ -360,7 +415,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -369,17 +424,46 @@ "else:\n", " reference = create_lid_driven_cavity(domain_size, relaxation_rate=omega, lid_velocity=lid_velocity,\n", " compressible=False)\n", - "reference.run(100)" + "reference.run(timesteps)" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 17, "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "AssertionError", + "evalue": "\nArrays are not almost equal to 7 decimals\n\nMismatched elements: 800 / 800 (100%)\nMax absolute difference: 0.00982559\nMax relative difference: 844.48439175\n x: MaskedArray([[[-2.1072287e-06, 3.2065898e-06],\n [-5.4380105e-06, 2.1508323e-05],\n [ 3.6419993e-06, 2.8800305e-05],...\n y: array([[[ 1.5551529e-06, 3.2613511e-07],\n [ 1.1259737e-05, -1.3894486e-05],\n [ 4.9984735e-06, -3.1780248e-05],...", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-17-e4aefa1cfce7>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtesting\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0massert_almost_equal\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mreference\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvelocity\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m:\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + " \u001b[0;31m[... skipping hidden 3 frame]\u001b[0m\n", + "\u001b[0;31mAssertionError\u001b[0m: \nArrays are not almost equal to 7 decimals\n\nMismatched elements: 800 / 800 (100%)\nMax absolute difference: 0.00982559\nMax relative difference: 844.48439175\n x: MaskedArray([[[-2.1072287e-06, 3.2065898e-06],\n [-5.4380105e-06, 2.1508323e-05],\n [ 3.6419993e-06, 2.8800305e-05],...\n y: array([[[ 1.5551529e-06, 3.2613511e-07],\n [ 1.1259737e-05, -1.3894486e-05],\n [ 4.9984735e-06, -3.1780248e-05],..." + ] + } + ], "source": [ "np.testing.assert_almost_equal(reference.velocity[:, :], result)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "plt.vector_field(reference.velocity[:, :], step=1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { -- GitLab