OpenMC/include/openmc/bank.h

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

58 lines
1.5 KiB
C
Raw Normal View History

2018-11-15 08:13:14 -06:00
#ifndef OPENMC_BANK_H
#define OPENMC_BANK_H
#include <cstdint>
#include "openmc/particle.h"
#include "openmc/position.h"
#include "openmc/shared_array.h"
#include "openmc/vector.h"
2018-11-15 08:13:14 -06:00
namespace openmc {
//==============================================================================
// Global variables
//==============================================================================
namespace simulation {
2021-04-29 16:23:54 -04:00
extern vector<SourceSite> source_bank;
2018-11-15 08:13:14 -06:00
2021-04-29 16:23:54 -04:00
extern SharedArray<SourceSite> surf_source_bank;
extern SharedArray<CollisionTrackSite> collision_track_bank;
2021-04-29 16:23:54 -04:00
extern SharedArray<SourceSite> fission_bank;
extern vector<vector<int>> ifp_source_delayed_group_bank;
extern vector<vector<double>> ifp_source_lifetime_bank;
extern vector<vector<int>> ifp_fission_delayed_group_bank;
extern vector<vector<double>> ifp_fission_lifetime_bank;
extern vector<int64_t> progeny_per_particle;
extern SharedArray<SourceSite> shared_secondary_bank_read;
extern SharedArray<SourceSite> shared_secondary_bank_write;
2018-11-15 08:13:14 -06:00
} // namespace simulation
2019-02-21 08:32:32 -06:00
//==============================================================================
// Non-member functions
//==============================================================================
void sort_bank(SharedArray<SourceSite>& bank, bool is_fission_bank);
2019-02-21 08:32:32 -06:00
void free_memory_bank();
void init_fission_bank(int64_t max);
int64_t synchronize_global_secondary_bank(
SharedArray<SourceSite>& shared_secondary_bank);
2018-11-15 08:13:14 -06:00
} // namespace openmc
#endif // OPENMC_BANK_H