# Solving Time-independent 2D Schrodinger equation with finite difference method

53 views (last 30 days)
Dibakar Yadav on 11 Apr 2016
Answered: Laurent NEVOU on 15 Jan 2018
Hi, I need to solve a 2D time-independent Schrodinger equation using Finite Difference Method(FDM). The potential is assumed to be 0 throughout and I am using standard five point finite difference discretization scheme. My grid size in two directions x and y (say Nx & Ny) is rather large, Nx=Ny=160.
So the size of the FDM matrix is (25600,25600) though it is sparse. I need only smallest 15-20 eigenvalues and corresponding eigenvectors.
Can someone suggest how to get the eigenvalues without dealing with the entire matrix which will obviously cause memory issues. Will SVD help?
PS: I am going through the methods to store large sparse matrices, any suggestions on storing the matrix elements will be greatly appreciated.
Thanks and Regards, Dibakar

Milos Dubajic on 22 May 2016
You can use spdiags to create sparse matrices which will help you to save memory.

John D'Errico on 11 Apr 2016
Just use the tool designed to solve your problem.
help eigs

Laurent NEVOU on 15 Jan 2018
Look at this example: https://github.com/LaurentNevou/Schrodinger2D_demo

### Categories

Find more on Linear Algebra in Help Center and File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by