# VASPFS.pl Documentation

## 1. プログラムの動作

`VASPFS.pl`は、VASP（Vienna Ab initio Simulation Package）を用いた電子バンド構造計算を補助するスクリプトです。このスクリプトは、以下の機能を提供します：

- `MakeKPOINTS`: k点リストを生成します。
- `CalBands`: バンド計算を実行します。
- `MakeBXSF`: バンド構造データをBXSF形式に変換します。
- `ViewFS`: BXSFファイルを可視化します。
- `all`: 上記のすべてのステップを順に実行します。

## 2. 必要な非標準ライブラリとインストールコマンドとインストール方法

このスクリプトは、以下の非標準Perlモジュールを使用しています：

- `Utils`
- `MyApplication`
- `Crystal::VASP`
- `Crystal::WIEN2k`

これらのモジュールは、スクリプトの冒頭で指定されたディレクトリに存在する必要があります。これらのモジュールがPerlの標準ライブラリに含まれていない場合、手動でインストールする必要があります。インストール方法は、通常、モジュールのソースコードをダウンロードし、Perlのライブラリパスに配置することです。

## 3. 必要な入力ファイル

- `INCAR`: VASPの入力ファイル。
- `KPOINTS`: k点情報を含むファイル。
- `EIGENVAL`: バンドエネルギー情報を含むファイル。
- `OUTCAR`: VASPの出力ファイルで、フェルミエネルギーなどの情報を含む。

## 4. 実行後に生成される出力ファイル

- `*.klist`: k点リストファイル。
- `*.bxsf`: バンド構造データを含むBXSFファイル。

## 5. コマンドラインでの使用例 (Usage)

以下は、`VASPFS.pl`の使用例です：

```bash
perl VASPFS.pl --Action=all /path/to/data
```

このコマンドは、指定されたデータディレクトリ内で、すべてのステップ（k点リストの生成、バンド計算、BXSFファイルの生成、可視化）を実行します。

他のアクションを指定することもできます：

- `--Action=MakeKPOINTS`: k点リストのみを生成します。
- `--Action=CalBands`: バンド計算のみを実行します。
- `--Action=MakeBXSF`: BXSFファイルのみを生成します。
- `--Action=ViewFS`: BXSFファイルを可視化します。

オプションの引数として、`--EFmin`、`--EFmax`、`--aKProduct`、`--UseSymmetry`などを指定することができます。これらの引数は、エネルギー範囲や対称性の使用など、計算の詳細を制御します。