```markdown
# TestReadIonCharges.pl Documentation

## 1. プログラムの動作

`TestReadIonCharges.pl` は、VASP（Vienna Ab initio Simulation Package）で使用される `INCAR` ファイルを読み込み、擬ポテンシャル情報や最終的なイオンの電荷と磁化を取得して表示するPerlスクリプトです。このプログラムは、以下の手順で動作します。

1. `INCAR` ファイルから擬ポテンシャル情報を読み込み、各擬ポテンシャルの詳細を表示します。
2. `INCAR` ファイルから総原子価電子数を取得し、表示します。
3. `INCAR` ファイルから最終的なイオンの電荷と磁化を取得し、各イオンについてその情報を表示します。

## 2. 必要な非標準ライブラリとインストールコマンドとインストール方法

このプログラムは、`Crystal::VASP` という非標準のPerlモジュールを使用しています。このモジュールは、VASPのファイルを解析するためのものです。

### インストール方法

`Crystal::VASP` モジュールはCPANに存在しない可能性があるため、以下の手順で手動でインストールする必要があります。

1. `Crystal::VASP` モジュールのソースコードを入手します。通常、これは開発者から直接提供されるか、特定のリポジトリから取得します。
2. モジュールのソースコードを適切なディレクトリに配置します。例えば、`d:/Programs/Perl/lib` に配置することで、スクリプト内の `use lib 'd:/Programs/Perl/lib';` 行で指定されたパスに一致させます。

## 3. 必要な入力ファイル

- `INCAR`: VASPの入力ファイルで、擬ポテンシャル情報や計算に必要なパラメータが含まれています。このファイルは、プログラムが擬ポテンシャル情報やイオンの電荷、磁化を取得するために必要です。

## 4. 実行後に生成される出力ファイル

このプログラムは、実行後に特定の出力ファイルを生成しません。出力はすべて標準出力（通常はコンソール）に表示されます。

## 5. コマンドラインでの使用例 (Usage)

以下は、このスクリプトをコマンドラインから実行する際の使用例です。

```bash
perl TestReadIonCharges.pl
```

このコマンドを実行する前に、`INCAR` ファイルがスクリプトと同じディレクトリに存在することを確認してください。また、`Crystal::VASP` モジュールが正しくインストールされていることを確認してください。
```
