<div dir="ltr"><div>Hi, </div><div>I need to solve an eigenvalue problem  <b>Ax=lmbda*x</b>, where A=(B^-H)*Q*B^-1 is a hermitian matrix, 'B^-H' refers to the hermitian of the inverse of the matrix B. Theoretically it would take around 1.8TB to explicitly compute the matrix B^-1 . A feasible way to solve this eigenvalue problem would be to use the LU factors of the B matrix instead. So the problem looks something like this: </div><div>                     (<b>((LU)^-H)*Q*</b><b>(LU)^-1)*</b><b>x = lmbda*x</b></div><div>For a guess value of the (normalised) eigen-vector 'x', </div><div>1) one would require to solve two linear equations to get '<b>Ax</b>', </div><div>        (LU)*y=x,             solve for 'y',</div><div>       ((LU)^H)*z=Q*y,   solve for 'z' </div><div>    then one can follow the conventional power-iteration procedure</div><div>2) update eigenvector: x= z/||z||<br></div><div>3) get eigenvalue using the Rayleigh quotient </div><div>4) go to step-1 and loop through with a conditional break.</div><div><br></div><div>Is there any example in petsc that does not require explicit declaration of the matrix '<b>A</b>' (<b>Ax=lmbda*x)</b><b> </b>and<b> </b>instead takes a vector '<b>Ax</b>' as input for an iterative algorithm (like the one above). I looked into some of the examples of eigenvalue problems ( it's highly possible that I might have overlooked, I am new to petsc) but I couldn't find a way to circumvent the explicit declaration of matrix A.</div><div><br></div><div>Maitri</div><div><br></div><div><br></div><div><br></div></div>