From a45739952ba30f2b3bf1d158b07d6f46d0b7f6b4 Mon Sep 17 00:00:00 2001 From: Kyle Shores Date: Thu, 19 Sep 2024 13:23:18 -0500 Subject: [PATCH] putting back initial value --- include/micm/solver/lu_decomposition.inl | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/include/micm/solver/lu_decomposition.inl b/include/micm/solver/lu_decomposition.inl index 60e2c339..0453bae1 100644 --- a/include/micm/solver/lu_decomposition.inl +++ b/include/micm/solver/lu_decomposition.inl @@ -19,7 +19,7 @@ namespace micm const SparseMatrixPolicy& matrix) { LuDecomposition lu_decomp{}; - lu_decomp.Initialize(matrix, INFINITY); + lu_decomp.Initialize(matrix, typename SparseMatrixPolicy::value_type()); return lu_decomp; } @@ -304,10 +304,11 @@ namespace micm if (elem == std::numeric_limits::max()) { + U_vector[uik_nkj->first] = 0; std::fill(U_vector + uik_nkj_first, U_vector + uik_nkj_first + n_cells, 0); } else { - std::copy(A_vector + elem, A_vector + elem + n_cells, U_vector + uik_nkj_first); + std::copy(A_vector + *aik, A_vector + *aik + n_cells, U_vector + uik_nkj_first); } } for (std::size_t ikj = 0; ikj < uik_nkj->second; ++ikj) @@ -330,14 +331,8 @@ namespace micm lki_nkj_first = lki_nkj->first; if (*(do_aki++)) { - auto elem = *(aki++); - - if (elem == std::numeric_limits::max()) { - std::fill(L_vector + lki_nkj_first, L_vector + lki_nkj_first + n_cells, 0); - } - else { - std::copy(A_vector + elem, A_vector + elem + n_cells, L_vector + lki_nkj_first); - } + std::copy(A_vector + *aki, A_vector + *aki + n_cells, L_vector + lki_nkj_first); + ++aki; } for (std::size_t ikj = 0; ikj < lki_nkj->second; ++ikj) {