以下は、Perlプログラム `ExtractCN.pl` の解析に基づくドキュメントです。

## 1. プログラムの動作

`ExtractCN.pl` は、結晶構造情報ファイル（CIFファイル）を読み込み、各原子の近接原子数（配位数）を計算し、その結果をCSVファイルに出力するプログラムです。具体的には、以下の手順で動作します：

1. CIFファイルを読み込み、結晶構造情報を取得します。
2. 結晶構造を展開し、全ての原子サイトのリストを取得します。
3. 各原子について、他の全ての原子との距離を計算し、指定された最大距離（`$MaxR`）以内にある原子をリストアップします。
4. さらに、より短い距離（`$MaxR2`）以内にある特定の原子（In, Ga, Zn, O）の数をカウントします。
5. 各原子について、近接原子の情報をCSV形式で出力します。

## 2. 必要な非標準ライブラリとインストールコマンドとインストール方法

このプログラムは、以下の非標準ライブラリを使用しています：

- `Utils`
- `JFile`
- `Crystal::CIF`
- `Crystal::Crystal`

これらのライブラリは、PerlのCPAN（Comprehensive Perl Archive Network）からインストールできる可能性がありますが、カスタムライブラリである可能性もあります。その場合、ソースコードやモジュールが提供されているディレクトリに配置する必要があります。

CPANからインストールする場合のコマンド例：
```bash
cpan install Utils
cpan install JFile
cpan install Crystal::CIF
cpan install Crystal::Crystal
```

ただし、これらのモジュールがCPANに存在しない場合は、提供元の指示に従ってインストールしてください。

## 3. 必要な入力ファイル

- CIFファイル: 結晶構造情報を含むCIFファイルが必要です。デフォルトでは、`aIGZO-Dens608-PBE/VCRelax/a-IGZOm184-Dens608-MDRelaxed-final.cif` が指定されています。

## 4. 実行後に生成される出力ファイル

- `CN.csv`: 各原子の配位数と近接原子の情報がCSV形式で出力されます。

## 5. コマンドラインでの使用例 (Usage)

以下は、コマンドラインでの使用例です：

```bash
perl ExtractCN.pl
```

このプログラムは、スクリプト内で指定されたCIFファイルを読み込み、結果を`CN.csv`に出力します。CIFファイルのパスや出力ファイル名を変更したい場合は、スクリプト内の該当部分を編集してください。