---
# System prepended metadata

title: 分子雲同定アルゴリズム詳細

---

# 分子雲同定アルゴリズム詳細
## 領域内SPH粒子(分子雲中心の候補)構造体
**SPH粒子へのポインタと、粒子が分子雲に属しているかを表すフラグの組**
struct MCCandidate {
$\quad$   StructPhydroptr Ptr;
$\quad$   int Flag;
} MCCandidate;

Flagは以下のいずれかの値を取る

FREE    どの分子雲にも属していない
CENTER     分子雲の中心になっている
BELONG    分子雲に属しているが中心ではない

## アルゴリズム
1. 全SPH粒子(Phydro)から、**位置座標が領域内である粒子を抽出**して構造体の配列作成
2. 配列を**粒子ポテンシャル順にソート**

**9/26時点での実装はここまで**

---


3. ポテンシャルが低い順に**粒子が分子雲の中心かどうか判定**(以下の処理)
* 一定距離内の粒子を探索
* 見つかった粒子の密度が一定値以上ならば粒子質量を分子雲質量に加算
* 加算された質量が一定値以上になれば中心の粒子を分子雲中心とする
* 分子雲範囲内の粒子は以降の探索から除外(Flagを変更)

4. 分子雲中心の粒子位置を密度マップに描画
5. 分子雲の情報（中心位置、ポテンシャル、質量など）をテキストファイルに出力
