PAOFLOW.writers.write2bxsf4skeaf#
Functions#
|
Write per-band BXSF files in SKEAF-compatible format. |
Module Contents#
- PAOFLOW.writers.write2bxsf4skeaf.write2bxsf4skeaf(data_controller, bands, nbnd, indices)[source]#
Write per-band BXSF files in SKEAF-compatible format.
- Parameters:
data_controller (DataController) – Object providing
data_arraysanddata_attributes. Required arrays:b_vectors(shape(3, 3)). Required attributes:alat,nk1,nk2,nk3,workpath,outputdir.bands (np.ndarray, shape
(nk1, nk2, nk3, nbnd)) – Band eigenvalues on the 3-D k-grid (in eV).nbnd (int) – Number of bands to write; one BXSF file is created per band.
indices (Optional[array_like of int]) – 1-D array of included band indices (1-based in output). If
None, indices default to zero.
- Returns:
Creates
nbndfiles namedFermi_surf_band_{ib+1}.bxsfinside{workpath}/{outputdir}/.- Return type:
None
Notes
Unlike
write2bxsf(), this function writes one BXSF file per band to ensure compatibility with SKEAF (Supercell K-space Extremal Area Finder). Band energies are converted from eV to Rydberg (Ryd_conv = 0.0734986176) and the Fermi energy is set to zero. Reciprocal-lattice vectors are written in units of \(1/a_{\rm lat}\) (without the \(2\pi\) factor required by SKEAF).