Communityライティング&編集github.com

CNS-OIST/steps-modeling-skill

STEPS(steps.interface / API_2)反応拡散モデルを作成するAIエージェントスキルです。

steps-modeling-skill とは?

このスキルは、STEPSシミュレータ(v3.6以降)で推奨されるAPI_2(`steps.interface`)を用いて確率的反応拡散モデルを作成するAIエージェント向けのルール集です。STEPSは3Dジオメトリ上で確率的な反応拡散シミュレーションを行い、このスキルはそのマニュアル(https://steps.sourceforge.net/manual)の規則に加え、AIエージェントがよく陥る落とし穴をエンコードしています。 主なルールとして、インポート順序(`import steps.interface`を最初に行い、サブモジュールを`from ... import *`でインポート)、オブジェクトの自動命名(代入文の左辺変数名がそのままシミュレーション内のパスに使われる)、ループ内での`.Create()`使用時の注意点(`name=`引数を使う)、反応記述の`with`ブロックとReactionManagerの使い方、パッチの内外区画の指定順序、単位系(SI単位、ただし濃度はモル濃度)、ResultSelectorを使ったデータ記録、実行ループの構造、予約語の回避などが含まれています。 さらに、空間的テトラエクスト(Tetexact)シミュレーションのスケルトンコード例、スクリプトの検証ツール(validate_steps_script.py)の使い方、デバッグ時のチェックリストも提供されます。このスキルは、STEPSスクリプトを書くAIエージェントが典型的な間違いを犯さないように設計されており、新しい落とし穴が見つかった場合には、検証ツールとドキュメントを同時に更新するよう推奨しています。

対応~Claude Code~Codex CLI~Cursor
npx skills add CNS-OIST/steps-modeling-skill

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

STEPSモデリング(API_2 / steps.interface)

STEPSは3Dジオメトリ上の確率的反応拡散をシミュレートします。v3.6以降、慣用的なインターフェースはAPI_2(steps.interface)です — Pythonらしいコンテキストマネージャスタイルです。すべての新しいモデルはこれで書きましょう。このスキルはマニュアル(https://steps.sourceforge.net/manual)の規則に加え、AIエージェントがよくひっかかる落とし穴をエンコードしています。

完全なチートシートはreference.mdを参照(ソルバーテーブル、単位、EField/複合体/並列、ResultSelectorのレシピ、パイプラインからのメッシュメモ)。テンプレートから始めて適応してください。以下のルールは絶対に間違えてはいけないものです。

基本ルール

  1. インポート順。 最初にimport steps.interface、次にサブモジュールをスターインポート。API_1とAPI_2を一つのスクリプトで混在させないこと。

    import steps.interface
    from steps.model import *
    from steps.geom import *
    from steps.rng import *
    from steps.sim import *
    from steps.saving import *
    
  2. オブジェクトは代入から名前を得る。 cyt = Compartment.Create(...) はソース行を読み取ってオブジェクトを'cyt'と名付けます。その後シミュレーションパスではsim.cyt.Ca.Countのように参照します。つまり、左辺の変数名がそのままシミュレーション名になります — 使いたい名前を選び、有効なPython識別子である必要があります。

  3. .Create()には実際のname = X.Create(...)というソース行が必要です。 ループ内、内包表記、複数行呼び出し、python -c、またはソースがないREPLでは失敗します(

関連スキル