Quantcast
Channel: Intel® Software - Intel® oneAPI Math Kernel Library & Intel® Math Kernel Library
Viewing all articles
Browse latest Browse all 3005

Feast can't find eigenvalues in the specified interval

$
0
0

Hi,

I am trying to solve eigenvalue problem using zfeast_hcsrev routine, here is the excerpt from my code

MKL_INT fpm[128];
feastinit(fpm);
fpm[0] = 1;
fpm[1] = 20;
char uplo = 'U';
MKL_INT n = 85;
double emin = 11.4;
double emax = 12;
double epsout;
MKL_INT loop;
MKL_INT m0 = 20;
MKL_INT m;
double en[m0];
std::complex<double>* xeig = new complex<double>[nimbsize * m0];
double res[m0];
MKL_INT info;
zfeast_hcsrev(&uplo, &n, (const MKL_Complex16*) baseHamFull.mat, (const long long int*) baseHamFull.ia,
 (const long long int*) baseHamFull.ja, fpm, &epsout, &loop, &emin, &emax,
 &m0, en, (MKL_Complex16*) xeig, &m, res, &info);

And here is what I get:

Intel MKL Extended Eigensolvers: complex double precision driver
Intel MKL Extended Eigensolvers: List of input parameters fpm(1:64)-- if different from default
Intel MKL Extended Eigensolvers: fpm(1)=1
Intel MKL Extended Eigensolvers: fpm(2)=20
Search interval [1.140000000000000e+01;1.200000000000000e+01]
Intel MKL Extended Eigensolvers: Size subspace 20
#Loop | #Eig  |    Trace     | Error-Trace |  Max-Residual
Intel MKL Extended Eigensolvers WARNING: No eigenvalue has been found in the proposed search interval.
==>INFO code =: 1
Intel MKL Extended Eigensolvers WARNING: No eigenvalue has been found in the proposed search interval.
==>INFO code =: 1
1    0

You can see in the files the matrix which I have supplied in CSR format. I know that there are eigenvalues in this range, by solving with different library. Some of the eigenvalues are

11.8341    11.839    11.877    11.8801    11.8922    11.9136    11.9127    11.9215    11.929    11.9321    11.9489    11.9538    11.9518    11.9586    11.9678    11.9763    11.9837    11.9935    11.9974 12.0009

Can you say what I am doing wrong? Also in my problems usually I need lowest eigenvalues, but don't usually know the range where to look for them. Is there a way to implement this in Feast or not?

Thank you for your help.

Areg Ghazaryan

 

AttachmentSize
Downloadtext/plaina.txt33.83 KB
Downloadtext/plainia.txt382 bytes
Downloadtext/plainja.txt4.23 KB

Viewing all articles
Browse latest Browse all 3005

Trending Articles