ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
dense_linear_solver.hpp File Reference

Implements a dense Gauss solver. More...

Go to the source code of this file.

Namespaces

namespace  viennashe
 The main ViennaSHE namespace. All functionality resides inside this namespace.
 
namespace  viennashe::solvers
 Namespace containing a variety of different linear solvers.
 
namespace  viennashe::solvers::detail
 

Functions

template<typename NumericT , typename VectorType >
void viennashe::solvers::detail::pivot_matrix (viennashe::math::dense_matrix< NumericT > &B, VectorType &c, std::vector< std::size_t > pivot_vector, std::size_t current_row)
 
template<typename NumericT , typename VectorType >
VectorType viennashe::solvers::solve (viennashe::math::dense_matrix< NumericT > const &A, VectorType const &b, viennashe::solvers::linear_solver_config const &config, viennashe::solvers::dense_linear_solver_tag)
 Solves the provided system using a dense Gauss solver with partial pivoting. More...
 
template<typename NumericT , typename VectorType >
VectorType viennashe::solvers::solve (viennashe::math::sparse_matrix< NumericT > const &A, VectorType const &b, viennashe::solvers::linear_solver_config const &config, viennashe::solvers::dense_linear_solver_tag)
 Specialization for a sparse matrix. More...
 

Detailed Description

Implements a dense Gauss solver.

Definition in file dense_linear_solver.hpp.