拡散のみのフィット向け GITTModel、pybamm のみのユーザー向けの ionworks-model ダウンロード、ルーティングされたすべてのリソース向けのアプリ URL ヘルパー、そしてより明確な設定エラー
GITTModel — ファーストクラスの拡散のみモデル
GITTModel と HalfCellGITTModel が ionworkspipeline の
ファーストクラスモデル(ionworks_schema 側にも対応するクラス)と
なった。GITT フィットは圧倒的に SPMe ではなくこの軽量モデルを
使用する: 電極ごとの x 平均粒子拡散、単一のまとめられたオーム抵抗、
固定された OCP、そして Butler-Volmer 動力学、電解質ダイナミクス、
熱効果は一切なし。組み込みモデルとして出荷することでサーバー側の
GITT フィットがアンロックされ、新しいハーフセル GITT フィット
テンプレートを支えるようになる。素の pybamm 向けに ionworks 定義モデルをダウンロード
ionworks-schema / ionworks-api のみを持ち、ライセンス付きの
ionworkspipeline パッケージを持たないユーザーが、ionworks 定義の
モデル(ECM、LumpedSPMR、MSMR モデル、GITTModel)を素の
pybamm でロードして実行できる形式で取得できるようになった。
プラットフォームがライセンスを持つサーバー側でモデルをビルドし、
ロード可能なシリアライゼーションを返し、Python SDK 経由で
公開される。ルーティングされたすべてのリソース向けのアプリ URL ヘルパー
SDK のclient.urls が単一の .measurement() メソッドから、
完全な Web アプリリンクビルダー一式 — project、model、
parameterized_model、optimization、pipeline、study、
simulation、cell_specification、cell_instance など — に
成長し、呼び出し側が ID から app.ionworks.com URL を手作業で
組み立てる必要がなくなった。ヘルパーは環境を認識し、クライアントが
構成されている API 環境に応じて正しいホストを導出する。より厳格で明確なパイプライン設定
ionworkspipeline におけるユーザー起因のエラーのほとんどが、
内部エラーとしてオンコールにページングするのではなく、
設定ミス — 誤ったフィールド型、範囲外の値、欠落したキー — を
ユーザーへの明確な Configuration error にルーティングする
ようになった。これと並行して、進行中のスキーマ契約強化の
取り組みが境界でのオプティマイザ設定の検証を開始した:
ネイティブオプティマイザに対応しないキーを渡すこと(例:
DifferentialEvolution(popsize=5, maxiter=10))が、これまでの
ように黙って飲み込まれるのではなく、送信時にハードエラーになる
ようになった。Pipeline
Pipeline
改善
- 目的および変数レベルのコストスコープの真実のソースが整理され、
重み付き
Wasserstein(位置シフト型 dQ/dV)と変数ごとのSSEが、 各コストが消費すべき変数に明示的にスコープされた状態で、 1 つの目的にわたって共有できるようになった。電極バランシングの 計算には、モデル自身のフルウィンドウ電圧軸で dQ/dV を出力する オプションが追加され、重み付き Wasserstein がデータグリッド上 ではなく電圧でピークを揃えられる。 - 厳格なオプティマイザオプション検証: 不明なオプティマイザ
キー(およびメソッド/オプションの不一致)は送信時に拒否され、
実行時にもアクション可能なメッセージで不明なオプションを
拒否する — 以前の挙動では黙って無視されていた。型付き
オプションラッパー(
CMAESOptions、PSOOptions、DEOptions、XNESOptions、BayesianOptimizationOptions、SOBEROptions、TuRBOOptions)は引き続きオプションを渡す 推奨手段である。 - フィッティングと設計最適化のパスで使われる失敗時のペナルティ 処理が統一され、両者が乖離することがなくなった。
- ECM のクーロンカウント容量基準がセグメントごとに計算される ようになった。マルチ測定フィットでは以前は連結されたセグメント 境界をまたいで累積積分が蓄積され、容量推定値がほぼセグメント ごとのスループットの合計まで膨らみ、容量サニティチェック警告が 誤って発生していた。
- シンボリックな境界を持つジオメトリがシミュレーション設定 経由で渡された場合の処理が修正され、シミュレーションが ビルドされる前に正しく解釈されるようになり、ソルバーが 詰まることがなくなった。
- カスタムモデルに対してシリアライズされたジオメトリ関連の 設定が、インスタンスごとのデフォルトとして正しく尊重される ようになった。
Python API
Python API
改善
client.model.download/serialize(上記で導入)は、 素の pybamm でロード可能な形式で ionworks 定義モデルを返す。client.urls(上記で導入)は、ルーティングされたすべての リソースに対して環境認識型のリンクを構築するようになった。