Accumulableしたい(G4Accumulable
)
1G4Accumulable<型> 変数名;
2
3// RunAction.hhのプライベート変数で定義
4G4Accumulable<G4double> energy_deposit = 0;
5
6// RunAction::RunAction()
7// コンストラクタでAccumulableManagerを作成
8G4AccumulableManager *accumulableManager = G4AccumulableManager::Instance()
9accumulableManager->RegisterAccumulable(energy_deposit);
10
11// RunAction::EndOfRunAction
12// ランの終了時にデータをマージ
13accumulableManager->Merge();
G4Accumulable
は、ユーザーのデータ収集を簡単にするために追加された型(みたいなもの)です。
G4AccumulableManager
を使って、変数の代入/追加ができます。
また、マルチスレッド環境で実行した場合、Merge
を使ってそれぞれのWorkerノードで取得したデータをまとめることができます。
詳細はAccumulablesを参照してください。
注釈
まったく調べてないですが、おそらくstd::vector
のような可変長リストなんだと思います。