コード例 #1
0
void SequentialSolver::solve_local(vec& res,
                           const system_type& sys,
                           const vec& rhs,
                           bool correct) const {

    if( d_iterateOnBilaterals.getValue() || !m_localSystem.H.nonZeros() )
        return solve_impl( res, sys, rhs, correct );

    const size_t localsize = m_localSystem.size();

    vec localrhs(localsize), localres(localsize);

    // reordering rhs
    m_localSub.toLocal( localrhs, rhs );
    // reordering res, for warm_start...
    m_localSub.toLocal( localres, res );

    // performing the solve on the reorganized system
    solve_impl( localres, m_localSystem, localrhs, correct );

    // reordering res
    m_localSub.fromLocal( res, localres );
}
コード例 #2
0
void solve(GF2E& d, const mat_GF2E& A, vec_GF2E& x,  const vec_GF2E& b)
{
   solve_impl(d, x, A, b, false);
}
コード例 #3
0
void solve(GF2E& d, vec_GF2E& x, const mat_GF2E& A, const vec_GF2E& b)
{
   solve_impl(d, x, A, b, true);
}
コード例 #4
0
ファイル: mat_lzz_pE.cpp プロジェクト: kenjinote/NTLSample
void solve(zz_pE& d, const mat_zz_pE& A, vec_zz_pE& x,  const vec_zz_pE& b)
{
   solve_impl(d, x, A, b, false);
}
コード例 #5
0
ファイル: mat_lzz_pE.cpp プロジェクト: kenjinote/NTLSample
void solve(zz_pE& d, vec_zz_pE& x, const mat_zz_pE& A, const vec_zz_pE& b)
{
   solve_impl(d, x, A, b, true);
}
コード例 #6
0
ファイル: mat_ZZ_p.cpp プロジェクト: tell/ntl-unix
void solve(ZZ_p& d, const mat_ZZ_p& A, vec_ZZ_p& x,  const vec_ZZ_p& b)
{
   solve_impl(d, x, A, b, false);
}
コード例 #7
0
ファイル: mat_ZZ_p.cpp プロジェクト: tell/ntl-unix
void solve(ZZ_p& d, vec_ZZ_p& x, const mat_ZZ_p& A, const vec_ZZ_p& b)
{
   solve_impl(d, x, A, b, true);
}
コード例 #8
0
ファイル: SudokuSolver.cpp プロジェクト: jlaire/dlx-cpp
Sudoku SudokuSolver::solve(const Sudoku& sudoku) const {
  return solve_impl(sudoku, false);
}
コード例 #9
0
ファイル: SudokuSolver.cpp プロジェクト: jlaire/dlx-cpp
Sudoku SudokuSolver::random_solution(const Sudoku& sudoku) const {
  return solve_impl(sudoku, true);
}
コード例 #10
0
void BaseSequentialSolver::correct(vec& res,
                               const system_type& sys,
                               const vec& rhs,
                               real /*damping*/ ) const {
    solve_impl(res, sys, rhs, true );
}
コード例 #11
0
void BaseSequentialSolver::solve(vec& res,
                             const system_type& sys,
                             const vec& rhs) const {
    solve_impl(res, sys, rhs, false );
}