I have an idea, but i don’t know how to implemented it. I would like to pass a temporary variables to store the eigenvectors of
eigen! - by default
eigen! uses the original matrix.
I am confident that this is possible to do, because inside
eigen function, a new matrix to store the eigenvectors must be created. I need some help to point out where this happen, then my naive thoughs would be to create a new function, and pass my matrix as argument.
The rest of algorithms does not need to change, therefore, less probability of issues.
Below I show my expected behavior, if, somehow, it helps.
using LinearAlgebra A = rand(4,4) λ₁, ψ₁ = eigen(A) λ₂, ψ₂ = eigen!(A) @show all(λ₁ .≈ λ₂) @show all(ψ₁ .≈ ψ₂) A_mine = zeros(A) λ₃ = eigen!(A, A_mine) ### what I need @show all(ψ₁ .≈ A_mine) ### of course should be true