diff --git a/src/scheme/EulerKineticSolver2D.cpp b/src/scheme/EulerKineticSolver2D.cpp index 6cc316eb8234d6418fc608eed83cc3525468b497..8f7f0af61e0d92441db063036041bcecfb9810e8 100644 --- a/src/scheme/EulerKineticSolver2D.cpp +++ b/src/scheme/EulerKineticSolver2D.cpp @@ -275,8 +275,7 @@ class EulerKineticSolver2D } auto node_boundary = getMeshNodeBoundary(mesh, bc_descriptor->boundaryDescriptor()); - Array<int8_t> is_boundary_cell{p_mesh->numberOfCells()}; - auto is_boundary_node = p_mesh->connectivity().isBoundaryNode(); + Array<size_t> is_boundary_cell{p_mesh->numberOfCells()}; is_boundary_cell.fill(0); @@ -290,7 +289,9 @@ class EulerKineticSolver2D is_boundary_cell[cell_id] = 1; } } + size_t nb_boundary_cells = sum(is_boundary_cell); + Array<CellId> cell_list{nb_boundary_cells}; size_t index = 0; @@ -924,7 +925,6 @@ class EulerKineticSolver2D getInflowBoundaryCells(const BoundaryConditionList& bc_list) { CellValue<bool> is_boundary_cell{p_mesh->connectivity()}; - auto is_boundary_node = p_mesh->connectivity().isBoundaryNode(); is_boundary_cell.fill(false); diff --git a/src/scheme/EulerKineticSolverMoodFV.cpp b/src/scheme/EulerKineticSolverMoodFV.cpp index a6e5cc032ad7ec82c3ad09d93953e7a13fe4777a..240591b2c54632eb8fa9d90c414b472175eb3139 100644 --- a/src/scheme/EulerKineticSolverMoodFV.cpp +++ b/src/scheme/EulerKineticSolverMoodFV.cpp @@ -1094,7 +1094,7 @@ class EulerKineticSolverMoodFV (lambda_vector.size() != Fn_rho_u.size() or (lambda_vector.size() != Fn_rho_u.size()))) { throw NormalError("Incompatible dimensions of lambda vector and Fn"); } - m_inv_dx_table = [=] { + m_inv_dx_table = [=, this] { CellValue<double> inv_dx_table{m_mesh.connectivity()}; parallel_for( m_mesh.numberOfCells(),