Ejemplo n.º 1
0
    /**
     * C++ version of gsl_eigen_gen().
     * Computes the eigenvalues of A and stores them (unordered) in eval.
     * The diagonal and lower triangle of A are altered. The workspace should have size
     * @c n, where @c A has @c n rows and columns.
     * @param A A matrix (should be square)
     * @param B A matrix (should be square)
     * @param alpha This is where the eigenvalues are stored
     * @param beta This is where the eigenvalues are stored
     * @param w A workspace
     * @return Error code on failure
     */
    inline int gen( gsl::matrix& A, gsl::matrix& B, gsl::vector_complex& alpha, gsl::vector& beta,
		    gen_workspace& w ){ return gsl_eigen_gen( A.get(), B.get(), alpha.get(), beta.get(), w.get() ); }
Ejemplo n.º 2
0
    /**
     * C++ version of gsl_eigen_genv_QZ().
     * Computes the eigenvalues of A and stores them (unordered) in eval.
     * The diagonal and lower triangle of A are altered. The workspace should have size
     * @c n, where @c A has @c n rows and columns.
     * @param A A matrix (should be square)
     * @param B A matrix (should be square)
     * @param alpha This is where the eigenvalues are stored
     * @param beta This is where the eigenvalues are stored
     * @param evec This is where the eigenvectors are stored
     * @param Q A matrix (should be square)
     * @param Z A matrix (should be square)
     * @param w A workspace
     * @return Error code on failure
     */
    inline int genv_QZ( gsl::matrix& A, gsl::matrix& B, gsl::vector_complex& alpha,
			gsl::vector& beta, gsl::matrix_complex& evec,
			gsl::matrix& Q, gsl::matrix& Z, genv_workspace& w ){ return
	gsl_eigen_genv_QZ( A.get(), B.get(), alpha.get(), beta.get(), evec.get(), Q.get(), Z.get(), w.get() ); }
Ejemplo n.º 3
0
      /**
       * C++ version of gsl_permute_vector_inverse().
       * @param p A permutation
       * @param v A vector
       * @return Error code on failure
       */
      inline int vector_inverse( permutation const& p, gsl::vector& v ){
	return gsl_permute_vector_inverse( p.get(), v.get() ); }