====== CreateResonantSpectra ====== ### //CreateResonantSpectra($O_1$,$O_2$,$O_3$,$O_4$,$\psi$)// calculates \begin{equation} \langle \psi | O_3^{\dagger} \frac{1}{(\omega_1 - \mathrm{i} \Gamma_1/2 + E_0^{(1)} - O_1^{\dagger})} O_4^{\dagger} \frac{1}{(\omega_2 + \mathrm{i} \Gamma_2/2 + E_0^{(2)} - O_2)} O_4\frac{1}{(\omega_1 + \mathrm{i} \Gamma_1/2 + E_0^{(1)} - O_1)} O_3 | \psi \rangle, \end{equation} with $E_0^{(i)} = \langle \psi | O_i | \psi \rangle$. The spectrum is returned as a spectrum object. ### ===== Input ===== * $O_1$ : Operator * $O_2$ : Operator * $O_3$ : Operator * $O_4$ : Operator * $\psi$ : Wavefunction * Possible options are: * "NTri1" Positive integer specifying the number of states in the Krylov basis of $O_1$. (Standard value 100) * "NTri2" Positive integer specifying the number of states in the Krylov basis of $O_2$. (Standard value 100) * "epsilon" Positive real defining the smallest absolute value considered different than zero. (Standard value 1.49E-8) * "restrictions1" A list of restrictions defining restrictions on configurations and occupations included for $O_1$ . Allows one to do restricted active space calculations. Note that the action of $O_3$ and $O_4$ are not restricted and all excitations they can make are included. * "restrictions2" A list of restrictions defining restrictions on configurations and occupations included for $O_2$ . Allows one to do restricted active space calculations. Note that the action of $O_3$ and $O_4$ are not restricted and all excitations they can make are included. * "Emin1" Real value defining the minimum energy in the spectra (Standard value determined such that the spectrum fits into the range) * "Emax1" Real value defining the maximum energy in the spectra (Standard value determined such that the spectrum fits into the range) * "NE1" Positive integer defining the number of points in the spectrum. (Standard value 1000) * "Gamma1" Positive real defining the full width half maximum Lorenzian broadening. (Standard value 10*(Emax1-Emin1)/NE1) * "Emin2" Real value defining the minimum energy in the spectra (Standard value determined such that the spectrum fits into the range) * "Emax2" Real value defining the maximum energy in the spectra (Standard value determined such that the spectrum fits into the range) * "NE2" Positive integer defining the number of points in the spectrum. (Standard value 1000) * "Gamma2" Positive real defining the full width half maximum Lorenzian broadening. (Standard value 10*(Emax2-Emin2)/NE2) ===== Output ===== * //G// : Spectrum object. In the case that $O_3$ ($\{O_3^a, O_3^b\}$) , $O_4$ ($\{O_4^{\alpha}, O_4^{\beta}, O_4^{\gamma}\}$) and $\psi$ ($\{\psi_1,\psi_2,\psi_3\}$) are given as tables the order of spectra returned is: $\{$ $I_1^{a,\alpha}(E_0)$, $I_1^{a,\alpha}(E_1)$, $\dots$, $I_1^{a,\alpha}(E_{N_E})$, $I_1^{a,\beta}(E_0)$, $I_1^{a,\beta}(E_1)$, $\dots$, $I_1^{a,\beta}(E_{N_E})$, $I_1^{a,\gamma}(E_0)$, $I_1^{a,\gamma}(E_1)$, $\dots$, $I_1^{a,\gamma}(E_{N_E})$, $I_1^{b,\alpha}(E_0)$, $I_1^{b,\alpha}(E_1)$, $\dots$, $I_1^{b,\alpha}(E_{N_E})$, $I_1^{b,\beta}(E_0)$, $I_1^{b,\beta}(E_1)$, $\dots$, $I_1^{b,\beta}(E_{N_E})$, $I_1^{b,\gamma}(E_0)$, $I_1^{b,\gamma}(E_1)$, $\dots$, $I_1^{b,\gamma}(E_{N_E})$, $I_2^{a,\alpha}(E_0)$, $I_2^{a,\alpha}(E_1)$, $\dots$, $I_2^{a,\alpha}(E_{N_E})$, $I_2^{a,\beta}(E_0)$, $I_2^{a,\beta}(E_1)$, $\dots$, $I_2^{a,\beta}(E_{N_E})$, $I_2^{a,\gamma}(E_0)$, $I_2^{a,\gamma}(E_1)$, $\dots$, $I_2^{a,\gamma}(E_{N_E})$, $I_2^{b,\alpha}(E_0)$, $I_2^{b,\alpha}(E_1)$, $\dots$, $I_2^{b,\alpha}(E_{N_E})$, $I_2^{b,\beta}(E_0)$, $I_2^{b,\beta}(E_1)$, $\dots$, $I_2^{b,\beta}(E_{N_E})$, $I_2^{b,\gamma}(E_0)$, $I_2^{b,\gamma}(E_1)$, $\dots$, $I_2^{b,\gamma}(E_{N_E})$, $I_3^{a,\alpha}(E_0)$, $I_3^{a,\alpha}(E_1)$, $\dots$, $I_3^{a,\alpha}(E_{N_E})$, $I_3^{a,\beta}(E_0)$, $I_3^{a,\beta}(E_1)$, $\dots$, $I_3^{a,\beta}(E_{N_E})$, $I_3^{a,\gamma}(E_0)$, $I_3^{a,\gamma}(E_1)$, $\dots$, $I_3^{a,\gamma}(E_{N_E})$, $I_3^{b,\alpha}(E_0)$, $I_3^{b,\alpha}(E_1)$, $\dots$, $I_3^{b,\alpha}(E_{N_E})$, $I_3^{b,\beta}(E_0)$, $I_3^{b,\beta}(E_1)$, $\dots$, $I_3^{b,\beta}(E_{N_E})$, $I_3^{b,\gamma}(E_0)$, $I_3^{b,\gamma}(E_1)$, $\dots$, $I_3^{b,\gamma}(E_{N_E})$ $\}$ where the alphabetic, greek and numeral indices refer to $O_3$, $O_4$ and $\psi$. ===== Example ===== ### Calculates the resonant spectra for some toy Hamiltonian and transition operators. ### ==== Input ==== dofile("../definitions.Quanty") -- define an Hamiltonian (in this case a magnetic field of 6 tesla in the z direction) H1 = 6 * EnergyUnits.Tesla.value * (2*OppSz + OppLz) -- define a second Hamiltonian (in this case a magnetic field of 6 tesla in the z direction) H2 = 6 * EnergyUnits.Tesla.value * (2*OppSz + OppLz) -- define a transition operator (in this case a pulsed magnetic field of 20 tesla in the x direction) T1 = 20 * EnergyUnits.Tesla.value * (2*OppSx + OppLx) -- define a ground-state (in this case a p electron with spin and angular momentum down) psigrd = psim1dn -- define a feritale operator to be able to calculate resonant spectroscopy T2 = (2*OppSy + OppLy) -- calculate < psigrd | T1^dag 1/(w1-i*G1/2+E0-H1^dag) T2^dag 1/(w2+i*G2/2+E0-H2) T2 1/(w1+i*G1/2+E0-H1) T1 | psigrd > -- with E0 = spec = CreateResonantSpectra(H1, H2, T1, T2, psigrd, {{"NE1",2} , {"NE2",10}}) -- the real and imaginary=0 part on a fixed energy grid print(spec) ==== Result ==== Start of LanczosTriDiagonalizeKrylovRR #Spectra: 3 Emin______Emax -2.192128838174913E-04 1.516839581805201E-03 -2.192128838174913E-04 1.516839581805201E-03 -2.192128838174913E-04 1.516839581805201E-03 EminPole__EmaxPole -4.261691575999300E-05 1.372168543003309E-03 -3.252606517456513E-19 1.103426565393108E-03 -7.454184501560037E-05 1.231092634560993E-03 dE________Gamma 1.736052465622692E-04 8.680262328113460E-04 1.736052465622692E-04 8.680262328113460E-04 1.736052465622692E-04 8.680262328113460E-04 Energy Re[0] Im[0] Re[1] Im[1] Re[2] Im[2] -2.192128838175E-04 -4.567517681416985E+03 -5.543001799870324E+03 -6.525966405714727E+03 -7.880181085715437E+03 -9.384459417866910E+03 -1.130970660619754E+04 -4.560763725522E-05 -3.049277280510574E+03 -6.941998645128027E+03 -4.378985928344880E+03 -9.870966283781299E+03 -6.310071944361847E+03 -1.416835749667363E+04 1.279976093070E-04 -1.110398821142657E+03 -6.912151183558704E+03 -1.635935503976258E+03 -9.839344445259658E+03 -2.381205186729950E+03 -1.413028103055951E+04 3.016028558693E-04 -2.339718928433063E+02 -6.040288069886097E+03 -3.980926728647760E+02 -8.619719098196922E+03 -6.087166968383502E+02 -1.239320326724325E+04 4.752081024316E-04 -2.390678249447761E+02 -5.634601111286659E+03 -4.035726414751845E+02 -8.068711266115147E+03 -6.128411970706163E+02 -1.161934969943266E+04 6.488133489939E-04 -2.524732347767481E+02 -6.001004351733182E+03 -4.060760193483442E+02 -8.614860860968134E+03 -6.011480856818257E+02 -1.241731791050131E+04 8.224185955561E-04 3.679380250879433E+02 -6.833308993933237E+03 5.040215977236442E+02 -9.811795868961692E+03 7.258932025733963E+02 -1.413634888162722E+04 9.960238421184E-04 2.021779007891823E+03 -7.375129604228581E+03 2.886102637616710E+03 -1.058171170957882E+04 4.159362152701476E+03 -1.523242665463819E+04 1.169629088681E-03 4.003817796524420E+03 -6.533443251521155E+03 5.730077171546568E+03 -9.369302108441347E+03 8.248266324697368E+03 -1.348088402875583E+04 1.343234335243E-03 4.923590725326930E+03 -4.801398097101529E+03 7.048863360389564E+03 -6.883831893729633E+03 1.014238202103176E+04 -9.903347380254836E+03 1.516839581805E-03 4.881130744512203E+03 -3.318203623750060E+03 6.988195901103923E+03 -4.756658494950744E+03 1.005361328477628E+04 -6.843031437448207E+03 ===== Table of contents ===== {{indexmenu>.#1}}