PerturbedEquilibrium - FEATURE - Emit the Lagrangian field-strength perturbation in the Boozer and Hamada field-line gauges

オープン
#560 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 3 日以内に返信

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
fortran, julia
領域
backend, databases

調査の方向性

Read #543 for the existing perpendicular-displacement output, #540 for the gauge contracts, and #429 for the pending choice between an on-demand helper and HDF5 datasets. The Fortran reference implementation and derivation are in GPEC#344, especially docs/pmodb_target_gauge.rst and gen/pmodb_gauge/; first check how their tests map to the Julia code. Done means Boozer and Hamada outputs are available, with tests for parallel-displacement cancellation, zero source, resonant-source rejection, and the independent Hamada-to-Boozer cross-check.

索引モデルが issue の本文から書いたものです。

説明

#543 writes the perturbation that drives neoclassical transport in the perpendicular-displacement gauge (dBoB_lagrangian, div_xi_perp). NEO-2, NEO-RT and other Boozer- or Hamada-based consumers need the Lagrangian field-strength perturbation in their own field-line gauge instead. Changing the gauge adds a displacement w along the field line, which is found from the magnetic differential equation

D w = -(div xi_X + a * delta B_X / B),   a = 2 (Boozer), a = 0 (Hamada),

where angles are in turns and delta B_target = delta B_X + w * partial_theta B. Nonzero resonant sources must fail explicitly rather than being regularized silently.

The Fortran implementation, with its derivation and FortSym-generated kernels, is in GPEC#344 (docs/pmodb_target_gauge.rst, gen/pmodb_gauge/). That PR will not be merged in Fortran, because new features now go to the Julia code. Its tests should be carried over: cancellation of a parallel displacement, zero source, and resonant source rejection. A Hamada-to-Boozer cross-check is also available against an independent kernel.

Proposed scope: after #543 lands, add the gauge solve and dBoB_lagrangian_boozer / _hamada outputs, either to the on-demand helper of #429 or as new HDF5 datasets, whichever the #429 decision prefers. The gauge contracts are documented in #540.

Chris&AI

主要言語
Julia
スター
11
フォーク
7
平均マージ
4日 3時間
マージ済み PR(30日)
70

環境構築

  • Dockerfile・Docker Compose ファイルなし
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenFUSIONToolkit/GPEC のほかの issue

OpenFUSIONToolkit/GPEC の issue をすべて見る

似ている issue

Julia の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。