Perhaps, solving the finite barrier analytically, is the easiest way to obtain the energy states. However, it isn't so versatile. To solve more complicated band structure in 1D time independent Schrödinger equation, we have chosen to use finite difference method.
Let y0 , y1, y2,…. yn-1 be n discrete values of y, assuming the values to be zero at the boundary. Then in general the first and second derivatives at each point can be approximated by :
4.1
1D time independent Schrodinger equation is :
4.2
Using the definition 4.1, equation 4.2 becomes
![]()
then form a matrix as
4.3
This is a problem of solving an eigensystem. The eigenvalues of C gives the n-th energy level of the wavefunction, and the n-th column eigenvector represents the values of the n-th wavefunction at each grid point. Calculating the eigenvalue and eigenvectors of the matrix C, and hence, yields n excited state energies of the wavefunction and corresponding values of the wavefunction at each (n) grid points.
Solver features:
1. Self define potential shape ( Arbitrary Potential)
2. Self define effective masses according to the structure
3. Included Fermi level
4. 2D Carrier concentrations
5. Can be adapted to holes or electrons

This graph shows the results using 1 Å per step as which has used an analytical solution previously.
Buy this program for $19.99