|
SCIP-SDP
2.0.0
|
interface methods for eigenvector computation and matrix multiplication using different versions of LAPACK and BLAS More...
Go to the source code of this file.
Functions | |
| EXTERN SCIP_RETCODE | SCIPlapackComputeIthEigenvalue (BMS_BLKMEM *blkmem, SCIP_Bool geteigenvectors, int n, SCIP_Real *A, int i, SCIP_Real *eigenvalue, SCIP_Real *eigenvector) |
| EXTERN SCIP_RETCODE | SCIPlapackMatrixVectorMult (int nrows, int ncols, SCIP_Real *matrix, SCIP_Real *vector, SCIP_Real *result) |
interface methods for eigenvector computation and matrix multiplication using different versions of LAPACK and BLAS
This file is used to call the LAPACK routine DSYEVR (double-symmetric-eigenvector computation) and the BLAS routine DGEMV (double-general-matrix-vector multiplication). It is needed because different SDP- solvers need different BLAS/LAPACK-versions with different data types (for example long long int for Openblas/SDPA vs. int for ATLAS/DSDP).
Definition in file lapack.h.
| EXTERN SCIP_RETCODE SCIPlapackComputeIthEigenvalue | ( | BMS_BLKMEM * | blkmem, |
| SCIP_Bool | geteigenvectors, | ||
| int | n, | ||
| SCIP_Real * | A, | ||
| int | i, | ||
| SCIP_Real * | eigenvalue, | ||
| SCIP_Real * | eigenvector | ||
| ) |
computes the i-th eigenvalue using LAPACK, where 1 is the smallest and n the largest, matrix has to be given with all n^2 entries
| blkmem | block memory |
| geteigenvectors | should also the eigenvectors be computed? |
| n | size of matrix |
| A | matrix for which eigenvalues should be computed |
| i | index of eigenvalue to be computed |
| eigenvalue | pointer to store eigenvalue |
| eigenvector | pointer to store eigenvector |
Referenced by cutUsingEigenvector(), SCIP_DECL_CONSLOCK(), and SCIPconsSdpCheckSdpCons().
| EXTERN SCIP_RETCODE SCIPlapackMatrixVectorMult | ( | int | nrows, |
| int | ncols, | ||
| SCIP_Real * | matrix, | ||
| SCIP_Real * | vector, | ||
| SCIP_Real * | result | ||
| ) |
performs matrix-vector-multiplication using BLAS
| nrows | number of rows in matrix |
| ncols | number of cols in matrix |
| matrix | the matrix we want to multiply |
| vector | vector we want to multiply with the matrix |
| result | pointer to store the resulting vector |
Definition at line 213 of file lapack_dsdp.c.
References F77_FUNC.
Referenced by cutUsingEigenvector().
1.8.6