mfsig.com
rosetta · 無料

Rosetta Stone — ユニバーサルファイル変換

ハブアンドスポークアーキテクチャ。すべてのリーダーが MolForge FullOutput Pydantic スキーマに正規化し、すべてのライターがそこから出力します。新しいベンダーの追加は、リーダー 1 つとライター 1 つだけ。

どの QM ベンダーにも独自の .cosmo 方言があります。単位の違い、列順の違い、原子インデックスの規約の違い。従来の回避策はベンダーごとの正規表現スクリプトで、各ラボが独自に保守し、いずれも fp64 でラウンドトリップしませんでした。

Rosetta Stone モジュールは、すべてのベンダー形式を 1 つのハブ — MolForge FullOutput — に集約します。Turbomole / COSMOtherm / xtb / MolForge CSV を本番サポート、Gaussian / NwChem / ORCA を部分サポート。自動検出はコンテンツのスニッフィングによりそれらを区別します。

形式サポートマトリクス

Turbomole + COSMOtherm:本番対応、fp64 ラウンドトリップ。xtb ネイティブダンプ:本番対応($gfn / # generated by xtb ヘッダにより Turbomole と区別)。MolForge CSV:ML パイプライン向けのネイティブ交換形式。ORCA cpcm.dat、Gaussian SCRF、NwChem cosmo:部分対応(最も一般的なバージョンレイアウトでのベストエフォート)。

新しいベンダーの追加

_parse_X_blocks(path) → _ParsedLegacy を記述し、単位を Bohr / Ų / 0 始まりの原子インデックスに正規化します。read_legacy_cosmo に自動検出の分岐を追加します。必要に応じて write_X_cosmo ライターを追加します。新しいベンダーあたりの所要時間:約 1 日。