Main /
## Plotting Vibronic Wavefunctions Generated With Xsim## Main.PlottingVibronicWavefunctionsGeneratedWithXsim HistoryHide minor edits - Show changes to markup December 04, 2013, at 05:41 PM
by
- Changed lines 29-30 from:
left-most column), intensities (in central column) and offset from the lowest root (right-hand column, in cm-1). The xsimconst program uses this information to find the roots in the LBASIS and LEVECS files that correspond to these states, and then proceeds to construct the remaining vector. to:
left-most column), intensities (in central column) and offset from the lowest root (right-hand column, in cm-1). The Changed line 44 from:
which are the wavefunctions for the states with the associated energy. These can now be rennamed to plotfile.in (as above), and you can now proceed to (3) below.\\ to:
which are the wavefunctions for the states with the associated energy. These can now be rennamed to plotfile.in (as above), and you can now proceed to (3) below.\\ Changed line 50 from:
where input is the usual xsim input file that was used to generate the wavefunction. In order to make a plot, one additional keyword must be included: to:
where input is the usual July 30, 2013, at 11:16 PM
by - July 30, 2013, at 11:15 PM
by
- Changed line 62 from:
Output:
to:
July 30, 2013, at 11:14 PM
by
- Changed line 28 from:
the entry immediately after Plotroots means that six wavefunctions will be constructed. The following lines (which are taken from the fort.20 file produced by xsim) give the eigenvalues (eV in to:
the entry immediately after Plotroots means that six wavefunctions will be constructed. The following lines (which are taken from the fort.20 file produced by July 30, 2013, at 11:13 PM
by
- Changed line 31 from:
to:
July 30, 2013, at 11:12 PM
by
- Added lines 30-31:
July 30, 2013, at 11:09 PM
by
- Changed lines 1-2 from:
For interpretive purposes, one might want to look at the wavefunctions produced by the to:
For interpretive purposes, one might want to look at the wavefunctions produced by the Changed lines 17-27 from:
keyword to your Plotroots 6 -0.395698072715971 1.372600825906208E-002 558.840893830490 -0.336615182517430 4.281480354483751E-002 1035.37394472682 -0.307337923582097 2.572448753157076E-002 1271.50967666976 -0.298430595114833 2.865920756915017E-002 1343.35173442247 -0.273975449003787 3.160906765614277E-002 1540.59471538112 -0.256027361967664 1.512601468720900E-003 1685.35501137096 to:
keyword to your July 30, 2013, at 11:07 PM
by
- Changed lines 11-12 from:
to your xsim input file. However: BE CAREFUL. A typical xsim calculation for me will include perhaps 10,000,000 basis functions and 1,000 Lanczos iterations. Such a calculation would result in the storage of 1000 vectors, which are all 80 Mb in length, for a total of 80 Gb (the additional storage of the 1000 eigenvectors of the 1000x1000 tridiagonal matrix is a trivial addition here). Using Storevectors with a large basis set and many Lanczos iterations is perhaps a good way to get you on the wrong side of your friendly system manager. This information will be stored in the LEVECS file (the eigenvectors of the tridiagonal matrix and the associated eigenvalues) and LBASIS, which contains the Lanczos trial vectors. Now, the real eigenvectors of the Hamiltonian in the full direct-product Born-Huang basis are approximated by linear combinations of the Lanczos trial vectors, with the weights specified by the appropriate eigenvector. to:
to your Changed lines 17-28 from:
keyword to your xsim input file. (not done) 3. Generate a plot with the xvibplot executable:
where input is the usual xsim input file that was used to generate the wavefunction. In order to make a plot, one additional keyword must be included: Plotcoord to:
keyword to your Plotroots 6 -0.395698072715971 1.372600825906208E-002 558.840893830490 -0.336615182517430 4.281480354483751E-002 1035.37394472682 -0.307337923582097 2.572448753157076E-002 1271.50967666976 -0.298430595114833 2.865920756915017E-002 1343.35173442247 -0.273975449003787 3.160906765614277E-002 1540.59471538112 -0.256027361967664 1.512601468720900E-003 1685.35501137096 the entry immediately after Plotroots means that six wavefunctions will be constructed. The following lines (which are taken from the fort.20 file produced by xsim) give the eigenvalues (eV in left-most column), intensities (in central column) and offset from the lowest root (right-hand column, in cm-1). The xsimconst program uses this information to find the roots in the LBASIS and LEVECS files that correspond to these states, and then proceeds to construct the remaining vector. c) With the Plotroots input shown above, the actual Lanczos approximations to the Hamiltonian eigenvectors are generated by\\ Changed lines 33-36 from:
which means that the wavefunction will be projected onto the x,y plane where x and y are the numbers of the corresponding xsim input file coordinates. For the moment (although this will be changed to be optional in the future), all other coordinates are set to 0. For example, if you have a six mode system, and your Plotcoord record is Plotcoord to:
Changed lines 35-45 from:
then running Output:
After All of these functions can be nicely plotted with gnuplot as follows: set palette to:
where input is again the Changed lines 37-42 from:
which will show a perspective view. It is perhaps most easy to "interpret" the wavefunctions from an "overhead" view, which can be generated by adding the "set view" gnuplot directive: set palette to:
d) After running Added lines 39-76:
outfile00558.84 outfile01271.50 outfile01540.59
Plotcoord Plotcoord Output:
After All of these functions can be nicely plotted with gnuplot as follows: set palette set palette Deleted line 77:
July 30, 2013, at 09:57 PM
by
- Changed lines 11-13 from:
to your xsim input file. However: BE CAREFUL. A typical xsim calculation for me will include perhaps 10,000,000 basis functions and 1,000 Lanczos iterations. Such a calculation would result in the storage of 1000 vectors, which are all 80 Mb in length, for a total of 80 Gb (the additional storage of the 1000 eigenvectors of the 1000x1000 tridiagonal matrix is a trivial addition here). Using Storevectors with a large basis set and many Lanczos iterations is perhaps a good way to get you on the wrong side of your friendly system manager. This information will be stored in the LEVECS file (the eigenvectors of the tridiagonal matrix) and LVECTOR, which contains the Lanczos trial vectors. Now, the real eigenvectors of the Hamiltonian are approximated by linear combinations of the Lanczos trial vector, with the weights specified by the appropriate eigenvector. b) The easiest way to construct the Lanczos eigenvectors is by adding the to:
to your xsim input file. However: BE CAREFUL. A typical xsim calculation for me will include perhaps 10,000,000 basis functions and 1,000 Lanczos iterations. Such a calculation would result in the storage of 1000 vectors, which are all 80 Mb in length, for a total of 80 Gb (the additional storage of the 1000 eigenvectors of the 1000x1000 tridiagonal matrix is a trivial addition here). Using Storevectors with a large basis set and many Lanczos iterations is perhaps a good way to get you on the wrong side of your friendly system manager. This information will be stored in the LEVECS file (the eigenvectors of the tridiagonal matrix and the associated eigenvalues) and LBASIS, which contains the Lanczos trial vectors. Now, the real eigenvectors of the Hamiltonian in the full direct-product Born-Huang basis are approximated by linear combinations of the Lanczos trial vectors, with the weights specified by the appropriate eigenvector. b) The easiest way to construct the Lanczos approximation to the full eigenvectors is to add the July 30, 2013, at 09:55 PM
by
- Changed lines 7-19 from:
(fill this in) to:
a) You must store the Lanczos trial vectors and the eigenvectors of the ultimate tridiagonal matrix. To do this, simply add the keyword Storevectors to your xsim input file. However: BE CAREFUL. A typical xsim calculation for me will include perhaps 10,000,000 basis functions and 1,000 Lanczos iterations. Such a calculation would result in the storage of 1000 vectors, which are all 80 Mb in length, for a total of 80 Gb (the additional storage of the 1000 eigenvectors of the 1000x1000 tridiagonal matrix is a trivial addition here). Using Storevectors with a large basis set and many Lanczos iterations is perhaps a good way to get you on the wrong side of your friendly system manager. This information will be stored in the LEVECS file (the eigenvectors of the tridiagonal matrix) and LVECTOR, which contains the Lanczos trial vectors. Now, the real eigenvectors of the Hamiltonian are approximated by linear combinations of the Lanczos trial vector, with the weights specified by the appropriate eigenvector. b) The easiest way to construct the Lanczos eigenvectors is by adding the Plotroots keyword to your xsim input file. (not done) July 30, 2013, at 06:22 PM
by
- Changed line 22 from:
to:
\\ July 30, 2013, at 06:21 PM
by
- Changed line 17 from:
to:
\\ Changed line 34 from:
to:
\\ July 30, 2013, at 06:21 PM
by
- Changed line 41 from:
to:
\\ July 30, 2013, at 06:20 PM
by
- Changed lines 15-17 from:
Plotcoord x y to:
Plotcoord Changed lines 20-22 from:
Plotcoord 2 5 to:
Plotcoord Changed lines 31-34 from:
set palette set pm3d splot 'psia' w points palette to:
set palette Changed lines 37-40 from:
set palette set pm3d set view 0,0 splot 'psia' w points palette to:
set palette July 30, 2013, at 06:19 PM
by
- Changed lines 3-5 from:
1. Obtain a vibronic wavefunction, either by doing a Davidson diagonalization or by appropriate linear combinations of Lanczos trial vectors (see below). If the wavefunction is generated by the Davidson procedure, it will be found in the file called GUESSVECTOR. Rename this file to plotfile.in. 2. Generate a plot with the xvibplot executable: to:
1. Obtain a vibronic wavefunction, either by doing a Davidson diagonalization or by appropriate linear combinations of Lanczos trial vectors (see below). If the wavefunction is generated by the Davidson procedure, it will be found in the file called GUESSVECTOR. Rename this file to plotfile.in, and go to (3) below. 2. It is often hard/impossible to converge excited state roots to get precise eigenvectors. However, there is a provision to generate (quite good) approximate wavefunctions by expanding the (near) eigenvector in the basis of the tridiagonal Lanczos representation. In order to do this: (fill this in) 3. Generate a plot with the xvibplot executable: July 30, 2013, at 06:17 PM
by
- Added lines 1-40:
For interpretive purposes, one might want to look at the wavefunctions produced by the 1. Obtain a vibronic wavefunction, either by doing a Davidson diagonalization or by appropriate linear combinations of Lanczos trial vectors (see below). If the wavefunction is generated by the Davidson procedure, it will be found in the file called GUESSVECTOR. Rename this file to plotfile.in. 2. Generate a plot with the xvibplot executable:
Plotcoord x y which means that the wavefunction will be projected onto the x,y plane where x and y are the numbers of the corresponding xsim input file coordinates. For the moment (although this will be changed to be optional in the future), all other coordinates are set to 0. For example, if you have a six mode system, and your Plotcoord record is Plotcoord 2 5 then running Output:
After All of these functions can be nicely plotted with gnuplot as follows: set palette set pm3d splot 'psia' w points palette which will show a perspective view. It is perhaps most easy to "interpret" the wavefunctions from an "overhead" view, which can be generated by adding the "set view" gnuplot directive: set palette set pm3d set view 0,0 splot 'psia' w points palette Of course, the same recipe works for psib, psic ... and psisquared. The last of these is generally the most useful one. |

Page last modified on December 04, 2013, at 05:41 PM

This page has been visited 1834 times since December 2010.

CFOUR is partially supported by the U.S. National Science Foundation.