diff --git a/packages/amesos2/src/Amesos2_Superludist_FunctionMap.hpp b/packages/amesos2/src/Amesos2_Superludist_FunctionMap.hpp index 92dc738599f..7a5dae67997 100644 --- a/packages/amesos2/src/Amesos2_Superludist_FunctionMap.hpp +++ b/packages/amesos2/src/Amesos2_Superludist_FunctionMap.hpp @@ -444,9 +444,14 @@ namespace Amesos2 { static void SolveInit(SLUD::amesos2_superlu_dist_options_t* options, SLUD::SuperMatrix* A, SLUD::int_t* perm_r, SLUD::int_t* perm_c, SLUD::int_t nrhs, type_map::LUstruct_t* lu, SLUD::gridinfo_t* grid, - type_map::SOLVEstruct_t* solve_struct) + type_map::SOLVEstruct_t* solve_struct, + SLUD::D::dScalePermstruct_t* scale_perm) { +#if SUPERLU_DIST_MAJOR_VERSION > 9 || (SUPERLU_DIST_MAJOR_VERSION == 9 && SUPERLU_DIST_MINOR_VERSION >= 3) + SLUD::D::dSolveInit(options, A, perm_r, perm_c, nrhs, A->nrow, lu, grid, solve_struct, scale_perm); +#else SLUD::D::dSolveInit(options, A, perm_r, perm_c, nrhs, lu, grid, solve_struct); +#endif } static void LUstructInit(SLUD::int_t m, SLUD::int_t n, @@ -714,9 +719,14 @@ namespace Amesos2 { static void SolveInit(SLUD::amesos2_superlu_dist_options_t* options, SLUD::SuperMatrix* A, SLUD::int_t* perm_r, SLUD::int_t* perm_c, SLUD::int_t nrhs, type_map::LUstruct_t* lu, SLUD::gridinfo_t* grid, - type_map::SOLVEstruct_t* solve_struct) + type_map::SOLVEstruct_t* solve_struct, + SLUD::Z::zScalePermstruct_t* scale_perm) { +#if SUPERLU_DIST_MAJOR_VERSION > 9 || (SUPERLU_DIST_MAJOR_VERSION == 9 && SUPERLU_DIST_MINOR_VERSION >= 3) + SLUD::Z::zSolveInit(options, A, perm_r, perm_c, nrhs, A->nrow, lu, grid, solve_struct, scale_perm); +#else SLUD::Z::zSolveInit(options, A, perm_r, perm_c, nrhs, lu, grid, solve_struct); +#endif } static void LUstructInit(SLUD::int_t m, SLUD::int_t n, type_map::LUstruct_t* lu) diff --git a/packages/amesos2/src/Amesos2_Superludist_def.hpp b/packages/amesos2/src/Amesos2_Superludist_def.hpp index 571bfb9f7f8..3bc8a0f14b8 100644 --- a/packages/amesos2/src/Amesos2_Superludist_def.hpp +++ b/packages/amesos2/src/Amesos2_Superludist_def.hpp @@ -676,7 +676,7 @@ namespace Amesos2 { } function_map::SolveInit(&(data_.options), &(data_.A), data_.perm_r.getRawPtr(), data_.perm_c.getRawPtr(), as(nrhs), &(data_.lu), - &(data_.grid), &(data_.solve_struct)); + &(data_.grid), &(data_.solve_struct), &(data_.scale_perm)); // Flag that we can reuse this solve_struct unless another // symbolicFactorization is called between here and the next // solve.