<< Chapter < Page | Chapter >> Page > |
In computing the results which are reported starting in "Numerical Results" , various techniques were used. Some techniques were successful and other techniques failed to give the desired or expected results, which led to alternate techniques being tried. A short description of our methods, including a description of spectral discretization, is given in the next section.
When we began gathering the data included here in our results, we started by programming the in [link] from [link] into MATLAB. Our next goal was to find the from these potential functions. We started by assuming and used a uniform grid to solve the ODE from the Liouville transformation [link] with forward Euler and the change of variables for [link] with composite trapezoid quadrature. Briefly, forward Euler gives a numerical approximation to the solution of the initial value problem
through the formula
where [link] . In order to facilitate finding the eigenvalues, we attempted to incorporate a Chebyshev grid for into the uniform grid. This is when we became aware something was not working properly. In an attempt to find the problem, we output the value of at each step, and we realized for some choices of and initial conditions, when reached 1, might be much less than 1 or even greater than 1. We had two choices at this point, we could choose values of and initial conditions and find the necessary value of which would result in being within some tolerance of 1 or we could solve the ODE in instead of . This second method is how we chose to continue our exploration.
With a uniform grid over and given , , and we used forward Euler to solve the ODE [link] and then implemented the change of variables. This resulted in strings of various lengths depending on the choice of , , and . These are illustrated in [link] .
We made the choice to restrict to strings of unit length and . To facilitate this choice, we included a bisection solver to find the necessary value of for a given that results in a string of length 1. After this determination is made, the resulting graphs are illustrated in [link] .
For a given by changing the choice of , with the necessary value of being determined to result in a unit string, the isospectral graphs, graphs with the same Dirichlet spectrum, are produced (seen in [link] ).
To compute the eigenvalues and eigenfunctions, we wanted to use spectral discretization, but because our method solves the ODE in , we could not choose at which values we would have values for . To overcome this, we used the MATLAB function "interp1" and used a cubic spline interpolation to find at the Chebyshev grid x values from the values we did have from solving the ODE in . Then, after adjusting the differential operator matrix, , and matrix, , for the Dirichlet boundary conditions, we used the MATLAB function "eig" to solve for , the diagonal matrix of generalized eigenvalues, and , a full matrix of corresponding eigenvectors, in the generalized eigenvalue problem, (from ). The eigenvalues were sorted, and the eigenvectors were sorted correspondingly, to produce the figures in this paper.
Notification Switch
Would you like to follow the 'The art of the pfug' conversation and receive update notifications?