BEACH(BEM + Accumulated CHarge)
BEACH は、三角形表面上の電荷が作る電場を境界要素法(BEM)で評価し、その場の中を動く 荷電粒子を追跡する表面帯電シミュレータです。粒子が表面へ吸収されるたびに電荷を蓄積し、 次のバッチの電場へ反映します。
設定ファイルは run / domain / mesh / particles / fields / sheath / output の7グループです。
設定例と旧TOMLからの移行を参照してください。
現行版の中心は絶縁体表面の帯電です。体積プラズマを PIC として解くコードではありません。 外部シースは、必要な場合だけ計算領域上端へ Zhao 零電流根の電流・障壁として接続し、計算領域から出る光電子流出に 合わせて外部根を準定常に解き直せます。詳細は Zhao closure を参照してください。 詳しい適用範囲と更新順は BEACH の計算サイクル を参照してください。
最初の実行
Linux、Python 3.10 以上、git、make、Fortran コンパイラが必要です。
HPC のログインノードではシミュレーションを直接実行せず、各サイトのジョブスケジューラから
計算ノードへ投入してください。以下の beach は、ローカル環境または計算ノードの割当内で実行します。
python -m pip install "git+https://github.com/Nkzono99/BEACH.git"
mkdir beach-tutorial
cd beach-tutorial
beachx config init beach.toml
beachx lint beach.toml
OMP_NUM_THREADS=1 beach beach.toml
beachx inspect outputs/tutorial
実行前には beachx lint を実行し、status=ok を確認してください。
入力値や組合せの詳しい診断は lint が担当し、シミュレーターは lint 済みの設定を前提にします。
この公式入門ケースは、毎 batch 200 個のマクロ電子を 20 batch 入射し、蓄積した負電荷が
後続電子を反射し始めるところまでを確認します。設定の意味、期待出力、図の読み方は
10 分チュートリアル にまとめています。
このサイトは main branch の挙動を説明します。PyPI の安定版は同じ入門設定をまだ含まない場合があるため、
上の最初の実行では GitHub 版を使用します。
目的別の入口
| 目的 | 読む順序 |
|---|---|
| 初めて使う | インストール → 10 分チュートリアル → 最初の出力を読む |
| 研究ケースを作る | ケース設計 → 設定 → 実行・再開 → 妥当性確認 |
| 物理・数値モデルを理解する | BEACH の計算サイクル → 表面はどう帯電するか → 場 solver の選び方 |
| ソースを変更する | アーキテクチャ → 開発とテスト |
| キーや API を調べる | 入力パラメータ / Python API / Fortran API |
ドキュメント全体の案内は BEACH Documentation にあります。
提供するコマンドとライブラリ
| 名前 | 役割 |
|---|---|
beach |
Fortran シミュレーション本体。--check-config は開発・診断用の読込確認で、lint の代替にはならない |
beachx |
設定検査、出力確認、可視化、負荷見積もり |
beach Python package |
出力の読込と独自解析 |
コマンドの全オプションは beach --help、beachx --help および beachx <command> --help で確認できます。
開発
python -m pip install fpm
python -m pip install -e . --no-build-isolation
make check
変更範囲に応じたテスト tier、MPI/OpenMP、KUDPC での実行方法は 開発とテスト を参照してください。
Metadata
Release files for beach-bem 2.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| beach_bem-2.0.0.tar.gz | 1.1 MB | Details |
Release files / beach_bem-2.0.0.tar.gz
| Download URL | beach_bem-2.0.0.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
674227a346b735a19c4ff28c6febea48a78b021bd4f7778ca13f57360ab0abba
|
|
BLAKE2b-256 checksum How to use checksums |
fdc46a02867c98efd4d72d0c0066478bdcede93abfa2000c7878d73ff90ad7fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.
Transparency log