SHG from Floquet formulation
Second Harmonic Generation in AlAs

In this tutorial, we will calculate the second harmonic generation of bulk AlAs using the Floquet formulation as described in the reference [1]. The great advance of the Floquet formulation is that is very fast compared to the real-time one, but at present is limited to the independent particle approximation with the possibility to include scissor operator.
Lumen databases can be downloaded here: AlAs_DBs.tar.gz (10 MB).
Notice that in order to use the Floquet part of Lumen you have to compile the specific module with the command:
make fl-project
This will new exectutables yambo_fl and ypp_fl.
The first steps of this tutorials are the same as the tutorial on non-linear response using the real-time approach Real time approach to non-linear response (SHG).
We suppose that you already solved the Kohn-Sham system, did the setup and removed symmetries as it was done in tutorial Real time approach to non-linear response (SHG).
We consider an external field in the [1,1,0].
Floquet calculation of SHG
You can generate the input file with the command yambo_fl -f:
floptics # [R] Floquet approach to Non-linear spectroscopy % NLBands 3 | 6 | # [NL] Bands % % NLEnRange -1.000000 |-1.000000 | eV # [NL] Energy range (for loop on frequencies NLEnSteps/=0 % NLEnSteps= 30 # [NL] Energy steps NLDamping= 0.150000 eV # [NL] Damping NLCorrelation= "IPA" # [NL] Correlation ("IPA/HARTREE/TDDFT/LRC/LRW/JGM/SEX/LSEX/LHF") HARRLvcs= 10417 RL # [HA] Hartree RL components EXXRLvcs= 10417 RL # [XX] Exchange RL components % Field1_Dir 1.000000 | 1.000000 | 0.000000 | # [RT Field1] Versor | 0.000000 | # [RT Field1] Versor % Field1_Int= 1000.00 kWLm2 # [RT Field1] Intensity Xorder= 2 # [FL] Max order of the response/exc functions Xthresh_1= 0.100000 # [FL] Self-consistent threshold on 1st order response function Xthresh_2= 0.100000 # [FL] Self-consistent threshold on 2nd order response function Xthresh_3= 0.100000 # [FL] Self-consistent threshold on 3rd order response function
The line |1.000000 | 1.000000 | 0.000000 | # [RT Field1] Versor referees to the direction of the external field (x,y,0).
The default parameters of Lumen are already tuned for second-harmonic generation, so the only thing you have to change is the band range, between 3 and 6 and the energy range between 1.0-5.0 eV and the number of energy steps in this interval that we set to 10. Notice that you cannot set to zero the lowest value of the energy range because this will requires a simulation that lasts infinite time, see below.
Run yambo_fl, this will take more or less 2 minutes.
Results and comparison with real-time
The results are stored in the files: o.chi_q1_floquet_order_x where x is the different order from 0 to Xorder as specified in the input. In the figure below we compare the results with the one from real-time simulation real-time results.

References
- ↑ Ignacio M Alliati and Myrta Grüning, Floquet formulation of the dynamical Berry-phase approach to nonlinear optics in extended systems, Electron. Struct. 5 017001 (2023)