mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-02-23 18:20:47 +08:00
fix docs
This commit is contained in:
parent
ab5cc8284a
commit
0ad3494bd3
@ -302,23 +302,20 @@ template<typename MatrixType> class LU
|
||||
/** This method returns a solution x to the equation Ax=b, where A is the matrix of which
|
||||
* *this is the LU decomposition.
|
||||
*
|
||||
* If no solution exists, then the result is undefined. If only an approximate solution exists,
|
||||
* then the result is only such an approximate solution.
|
||||
*
|
||||
* \param b the right-hand-side of the equation to solve. Can be a vector or a matrix,
|
||||
* the only requirement in order for the equation to make sense is that
|
||||
* b.rows()==A.rows(), where A is the matrix of which *this is the LU decomposition.
|
||||
*
|
||||
* \returns a solution, if any exists. See notes below.
|
||||
* \returns a solution.
|
||||
*
|
||||
* \note_about_inexistant_solutions
|
||||
*
|
||||
* \note_about_arbitrary_choice_of_solution
|
||||
* \note_about_using_kernel_to_study_multiple_solutions
|
||||
*
|
||||
* Example: \include LU_solve.cpp
|
||||
* Output: \verbinclude LU_solve.out
|
||||
*
|
||||
* \note \note_about_inexistant_solutions
|
||||
*
|
||||
* \note \note_about_arbitrary_choice_of_solution
|
||||
* \note_about_using_kernel_to_study_multiple_solutions
|
||||
*
|
||||
* \sa TriangularView::solve(), kernel(), computeKernel(), inverse(), computeInverse()
|
||||
*/
|
||||
template<typename Rhs>
|
||||
|
@ -215,10 +215,10 @@ ALIASES = "only_for_vectors=This is only for vectors (either row-
|
||||
"eigenvalues_module=This is defined in the %Eigenvalues module. \code #include <Eigen/Eigenvalues> \endcode" \
|
||||
"label=\bug" \
|
||||
"redstar=<a href='#warningarraymodule' style='color:red;text-decoration: none;'>*</a>" \
|
||||
"nonstableyet=\warning This is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\" \
|
||||
"note_about_arbitrary_choice_of_solution=If there exist more than one solution, this method will arbitrarily choose one." \
|
||||
"nonstableyet=\warning This is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" \
|
||||
"note_about_arbitrary_choice_of_solution=If there exists more than one solution, this method will arbitrarily choose one." \
|
||||
"note_about_using_kernel_to_study_multiple_solutions=If you need a complete analysis of the space of solutions, take the one solution obtained by this method and add to it elements of the kernel, as determined by kernel()." \
|
||||
"note_about_inexistant_solutions=If only an approximate solution exists, then the result is only such an approximate solution. The case where no solution exists isn't treated separately, as that would require one to use an arbitrary threshold. If you want to check whether a solution exists, just call this function to get a solution and then compute the margin of error, or use MatrixBase::isApprox() directly, for instance like this: \code bool = a_solution_exists = (A*result).isApprox(b, precision); \endcode As long as the input matrices have finite numeric coefficients (no \c inf or \c nan values), the result will also have finite numeric coefficients, there is no risk of getting \nan values if no solution exists.""
|
||||
"note_about_inexistant_solutions=If only an approximate solution exists, then the result is only such an approximate solution. The case where no solution exists isn't treated separately: non-existent solutions are just \"very inaccurate solutions\". If you want to check whether a solution exists, just call this function to get a solution and then compute the error margin, or use MatrixBase::isApprox() directly, for instance like this: \code bool a_solution_exists = (A*result).isApprox(b, precision); \endcode As long as the input matrices have finite numeric coefficients (no \c inf or \c nan values), the result will also have finite numeric coefficients, there is no risk of getting \c nan values if no solution exists."
|
||||
|
||||
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
|
||||
# sources only. Doxygen will then generate output that is more tailored for C.
|
||||
|
@ -3,6 +3,6 @@ MatrixXd B = MatrixXd::Random(3,2);
|
||||
cout << "Here is the invertible matrix A:" << endl << A << endl;
|
||||
cout << "Here is the matrix B:" << endl << B << endl;
|
||||
MatrixXd X;
|
||||
if(A.lu().solve(B, &X))
|
||||
A.partialLu().solve(B, &X);
|
||||
cout << "Here is the (unique) solution X to the equation AX=B:" << endl << X << endl;
|
||||
cout << "Relative error: " << (A*X-B).norm() / B.norm() << endl;
|
||||
|
Loading…
Reference in New Issue
Block a user