Here we describe the AiiDA archive 'BaTiO3.aiida' which stores the data for vibrational spectra 
(with the different functionals employed in the study) and phonons from supercells calculations 
(for the DFT+U+V functional).

1. How to reproduce

The calculations were performed with the following packages, all open-source:

- Quantum ESPRESSO (pw.x): v7.2
- aiida-core: v2.3.0 (installation instructions: https://aiida.readthedocs.io/projects/aiida-core/en/latest/intro/get_started.html)
- aiida-quantumespresso: v4.3.0 (installation instructions: https://aiida-quantumespresso.readthedocs.io/en/latest/installation/index.html)
- aiida-vibroscopy: v1.0.2 (installation instructions: https://aiida-vibroscopy.readthedocs.io/en/latest/installation/index.html)

We note that minor version of the AiiDA codes should still provide the same results within numerical accuracy.

2. How to explore the data

The best way to explore the data is via a local installation of AiiDA. Nevertheless,
the data can still be navigated online through the direct REST-API interface of
Materials Cloud.

To help navigate the archive, we organized the data in the following groups:

- BaTiO3/PBEsol: WorkChain for IR-Raman, final VibrationalData, for the PBEsol vc-relaxed structure

- BaTiO3/PBEsol_U: WorkChain for IR-Raman, final VibrationalData, for the PBEsol+U(sc) vc-relaxed structure (U self-consistent)

- BaTiO3/PBEsol_U/PBEsol_geometry: WorkChain for IR-Raman, final VibrationalData, for the PBEsol+U(sc) relaxed structure at PBEsol lattice (U self-consistent)

- BaTiO3/PBEsol_U_V: WorkChain for IR-Raman and for Phonons (3x3x3 supercell), final VibrationalData, for the PBEsol+U(sc)+V(sc) vc-relaxed structure (U+V self-consistent)

- BaTiO3/PBEsol_U_V/PBEsol_geometry: WorkChain for IR-Raman and for Phonons (3x3x3 supercell), final VibrationalData, for the PBEsol+U(sc)+V(sc) relaxed structure at PBEsol lattice (U+V self-consistent)

The `VibrationalData` is a compact data node containing all the relevant quantities for phonons and vibrational spectra
(more information on its data structure can be found in the online documentation: 
https://aiida-vibroscopy.readthedocs.io/en/latest/reference/api/aiida_vibroscopy/data/index.html)

In particular, this data structure contains information about:
- Dielectric tensor
- Born effective charges
- Raman tensors
- Non-linear optical susceptibility tensor ($\chi^{(2)}$)
- Force constants 
- Unit cell
- Primitive matrix (which defines the primitive cell)
- Supercell matrix (supercell relative to the force constants)
- Atomic species and positions

3. Most relevant data nodes

The relevant `VibrationalData` nodes have the following UUID 
(a universal identifier referring to a specific node in the database;
the * indicates data computed using PBEsol lattice geometry):

- Infrared and Raman spectra VibrationalData:
    * PBEsol     : cc3e5599-0aec-416d-a00f-37eda6cbe673
    * PBEsol+U   : 984c2028-d744-446b-9163-7597690d9e00   
    * PBEsol+U*  : 0410cb11-eb2b-4abe-a77d-5112e453b34a    
    * PBEsol+U+V : 31a0ff38-4607-4ac8-aa2c-e1611102b47c      
    * PBEsol+U+V*: fec9e816-ff6f-4ab1-8f3e-dd4fdabaa947     

- Supercell phonon (3x3x3 supercell) VibrationalData:
    * PBEsol+U+V : 1ebd71e8-25a1-4fd1-b9be-976923a1d338
    * PBEsol+U+V*: a2b17e70-d23e-4d9f-9294-7235ea1cd3a0

4. Usage example

To plot the phonon band structure (after importing the database):

```python
import matplotlib.pyplot as plt
from phonopy.units import VaspToCm
from phonopy.phonon.band_structure import get_band_qpoints_and_path_connections

from aiida import load_profile
from aiida.orm import *

load_profile()

band_path   = [[[0, 0, 0], [0.5, 0, 0.0], [0.5, 0.0, 0.5],[0.5, 0.5, 0.5], [0, 0, 0], [0.5, 0.0, 0.5]]]
band_labels = ["$\\Gamma$", "L", "F", "T", "$\\Gamma$", "F"]
qpoints, connections = get_band_qpoints_and_path_connections(band_paths=band_path, npoints=501)

# Here for PBEsol+U+V@PBEsol+U+V
ph = load_node('1ebd71e8-25a1-4fd1-b9be-976923a1d338').outputs.vibrational_data.numerical_accuracy_2.get_phonopy_instance()
ph._factor = VaspToCm
ph.symmetrize_force_constants()
ph.symmetrize_force_constants_by_space_group()

ph.run_band_structure(paths=qpoints, labels=band_labels)
ph.plot_band_structure().show()
```

To plot IR and Raman spectra, please consult the online documentation 
https://aiida-vibroscopy.readthedocs.io/en/latest/howto/postprocess.html .