# MCAT Converter 説明書

本プログラムは、測定データを用途に応じて MRM変換、SCAN変換、XIC変換 するための Windows アプリケーションです。画面上には各機能に対応したタブが用意されており、CSV / TSV の設定表を読み込みながら変換を実行できます。

## 1. プログラムの概要

機能1

### MRM変換

MRM のクロマトグラムを出力する機能です。設定表でターゲット名、出力コピー数、最大強度、補正強度を指定できます。 条件に応じて、コピー側に飽和補正をかけた出力にも対応します。

機能2

### SCAN変換

MS1 / MS2 のスペクトル出力機能です。出力の有無と最小強度を設定表から切り替えられます。 スペクトルは折れ線で表示しやすい形式になるよう整形されて保存されます。

機能3

### XIC変換

指定 m/z と保持時間範囲に基づいて XIC を抽出する機能です。 必要に応じて RT アンカーによる補正ファイルも別途出力できます。

## 2. 画面構成

ファイル追加 / 選択削除 / 一覧クリア
MRM変換 / Scan変換 / XIC変換

### 入力ファイル

ドラッグ＆ドロップ対応
測定ファイル一覧
XIC シート
MRM シート
SCAN 設定
設定表を編集 / 読込 / 保存
XIC: Name, Pol, Mz, ppm, Start, End ...
MRM: Target Name, Copies, Max Intensity, Correction Strength
SCAN: Spectrum Type, Enabled, Min Intensity

### ログ

> loaded / converted / finished ...
進捗表示 0〜100%

領域 | 内容
--- | ---
左上ボタン | 入力ファイルの追加、選択削除、一覧クリアを行います。
右上ボタン | MRM変換、Scan変換、XIC変換を実行します。
左側リスト | 変換対象ファイルの一覧です。ドラッグ＆ドロップで追加できます。
右側タブ | XIC / MRM / SCAN の各設定表を編集・読込・保存します。
ログ | 読込結果、変換結果、エラー内容などを表示します。
進捗バー | 全体の処理進捗を 0〜100% で表示します。

## 3. 共通の使い方

1. 変換したい測定ファイルを、左側の一覧に追加します。
2. 右側タブで、必要な設定表を読み込むか、画面上で直接編集します。
3. 上部の変換ボタンから、目的の変換機能を実行します。
4. 処理状況は下部のログと進捗バーで確認します。
5. 変換後は入力ファイルのあるフォルダに出力ファイルが保存されます。

設定表のグリッドは貼り付け操作にも対応しており、表形式データを Ctrl + V で入力できます。

## 4. MRM変換

MRM変換は、各ターゲットのクロマトグラムを出力する機能です。上部の 「MRM変換」 ボタンで実行します。 MRM タブでは CSV / TSV の読込・保存ができ、4列の設定表を編集できます。

列名 | 内容
--- | ---
Target Name | ターゲット名です。変換対象の化合物名に対応します。
Copies | 出力コピー数です。1 の場合は通常出力のみです。2 以上にすると、補正版コピーを追加出力できます。
Max Intensity | 飽和とみなす強度の目安です。0 以下の場合は補正を行いません。
Correction Strength | 補正の強さです。値を大きくすると飽和補正が強くなります。0 以下では補正しません。

補足： コード上では、Copies > 1 かつ Max Intensity > 0、 さらに Correction Strength > 0 のとき、コピー側のクロマトグラムに補正が適用されます。 1つ目の出力は元データのまま保持されます。

### 出力のイメージ

- 入力ファイルから必要に応じて .hmd を生成します。
- その後、各測定について sample_name.txt 形式のテキストを出力します。
- 出力内容は chromatogramList 形式で、時間配列と強度配列を含みます。

## 5. SCAN変換

SCAN変換は、MS1 / MS2 スペクトルをテキストとして出力する機能です。上部の 「Scan変換」 ボタンで実行します。 SCAN タブでは、MS1 と MS2 それぞれについて出力有無と最小強度を設定できます。

列名 | 内容
--- | ---
Spectrum Type | MS1 または MS2 を指定します。
Enabled | そのスペクトル種別を出力するかどうかを指定します。
Min Intensity | この値未満のシグナルを削除します。ノイズ除去の目安として使用します。

### 特長

- MS1 / MS2 を個別にオン・オフできます。
- 最小強度を設定することで、弱いシグナルを除いたスペクトル出力が可能です。
- 保存時は、折れ線グラフで描きやすいようにゼロ点を補って整形されます。

## 6. XIC変換

XIC変換は、指定した m/z、保持時間範囲、極性などの条件に基づいて抽出イオンクロマトグラムを作成する機能です。 上部の 「XIC変換」 ボタンで実行します。

列名 | 内容
--- | ---
Target Name | ターゲット名です。
Polarity | + / - / positive / negative を指定できます。
Mz | 抽出対象 m/z です。
ppm | 許容幅です。m/z の抽出範囲計算に使用されます。
Start | 抽出開始保持時間です。
End | 抽出終了保持時間です。
MzRef | 必要に応じて使う参照 m/z です。MS2 条件選択時に利用されます。
Mz2 | Q3 などの追加 m/z です。指定があると MS2 系として処理されます。
RT | 補正先保持時間です。ピーク時刻との対応付けにより補正出力に利用されます。

### 出力ファイル

- *_xic.txt：通常の XIC 出力
- *_xic_corr.txt：RT アンカーがある場合の補正後 XIC 出力

補足： RT 列に値があるターゲットについては、抽出されたピークの最大位置と指定 RT を対応付けてアンカーを作り、 そのアンカーをもとに時間補正された XIC を別ファイルとして保存します。

## 7. CSV / TSV 読込・保存について

各タブには読込ボタンと保存ボタンがあります。設定内容は CSV または TSV として保存できるため、 一度作成した条件表を再利用しやすくなっています。

- XIC タブ：XIC読込(CSV) / XIC保存(CSV)
- MRM タブ：MRM読込(CSV) / MRM保存(CSV)
- SCAN タブ：SCAN読込(CSV) / SCAN保存(CSV)

## 8. ログと進捗の見方

### ログ欄

読込完了、変換完了、エラー内容などが順番に表示されます。 変換できなかった場合は、対象ファイル名とともに原因確認の手がかりになります。

### 進捗バー

全対象ファイルに対する処理率を 0〜100% で表示します。 複数ファイルをまとめて変換したときの進み具合を把握できます。

## 9. 使い方の例

### 例1：MRM変換

まず測定ファイルを追加し、MRM タブにターゲット設定を入力します。 その後、MRM変換 を押すと、各測定のクロマトグラムが TXT として出力されます。

### 例2：SCAN変換

SCAN タブで MS1 / MS2 の出力有無と最小強度を設定し、 Scan変換 を押すと、スペクトル一覧が TXT として保存されます。

### 例3：XIC変換

XIC タブにターゲットごとの m/z、ppm、保持時間範囲を入力して XIC変換 を実行すると、抽出クロマトグラムが保存されます。 RT を設定している場合は、補正後のファイルも追加で生成されます。

## 10. 注意事項

- 入力ファイルと同じフォルダに変換後ファイルが保存されます。
- 設定表の列順はできるだけ変更せず、想定された順序で入力してください。
- XIC 変換は最低 6 列（Name, Pol, Mz, ppm, Start, End）が必要です。
- ログにエラーが表示された場合は、設定値や入力ファイルの存在を確認してください。