DOI: 10.5281/zenodo.10462849
title: Data and code for "Combining ultrahigh index with exceptional nonlinearity in resonant transition metal dichalcogenide nanodisks."

description: # Data and code for "Combining ultrahigh index with exceptional nonlinearity in resonant transition metal dichalcogenide nanodisks."

 

## Contents

 

* `chi2-dft`: DFT calculations of the chi(2) nonlinear susceptibility tensor

* `shg-exp`: explicit spectra of the SHG from a flake and resonant disks

 

## Description of the data

 

The data are organized as follows:

 

* `chi2-dft/plot_chi2.{py,m}`: plotting scripts for python and matlab

* `chi2-dft/shg-3R-MoS2-chi2.*`: binary dataset for plotting chi2 and plot thereof

* `chi2-dft/nlo`: folder with scripts for data reproduction and structure file

* `chi2-dft/nlo/shg-lg`: folder with chi2 tensor elements, numpy format; used for plotting with python

 

* `shg-exp/disk-specs`: data and matlab script to plot explicit SHG spectra of the disks

`shg-exp/disk-specs/D*_***nm_1s_03mW.asc/` - D* - disk number 1,2,3; ***nm - pump wavelength 810-910-1020nm; 1s - signal collection time in seconds;03mW - pump power in mW

* `shg-exp/flake-specs`: data and matlab script to plot explicit SHG spectra and log-log power dependence of the thin flake

`shg-exp/flake-specs/***nm_*.*mw_0.5s_H8_3R_MoS2.asc/` - ***nm - pump wavelength 800:10:1040nm; *.*mW - pump power in mW; 0.5s - signal collection time in seconds;

 

## Reproduction of the data

 

The DFT calculations were performed using GPAW (https://wiki.fysik.dtu.dk/gpaw/index.html) and the nonlinear optical response approach (https://wiki.fysik.dtu.dk/gpaw/tutorialsexercises/opticalresponse/nlopt/nlopt.html). The scripts are in a form suitable for cluster calculations and use global WALLTIME/STARTTIME parameters. Calculation of the SHG spectrum is set up such that one call of the script in a cluster environment will run one tensor element calculation and then exit. The calculations of the data consist of the following steps:

 

1. Ground-state (gs) calculation:

   * `chi2-dft/nlo/gs.py` -- plane wave calculations for the `rlx-3R-MoS2-bulk.xyz` structure file using the plane wave mode, 500 eV cutoff, PBE xc-functional. Other parameters are in the `setting.py` file.

   * Generates the `gs.gpw` file.

2. Calculation of unoccupied bands:

   * Requires finished ground-state calculation.

   * `chi2-dft/nlo/unocc.py`

   * This step is optional is the required number of bands calculated in the `gs` step is sufficient.

   * Generates the `unocc.gpw` file.

3. Calculate the matrix elements:

   * Requires finished ground-state calculation (`gs.gpw`)

   or

   * unoccupied bands calculation (`unocc.gpw`)

   * `chi2-dft/nlo/mommat.py`

   * Generates the `mml.npz` file.

4. Calculation of the SHG spectrum:

   * Requires the calculated matrix elements (`mml.npz` file).

   * `chi2-dft/nlo/shg.py` -- computes one chi2 tensor element from the `mml.npz` file. Designed to run in a HPC environment. Will look for the first nonexistent `abc` tensor element in folder and calculate it. Rerun the script to calculate additional ones or rewrite the script to calculate all required elements in one loop.