mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-28 14:15:42 -04:00
added tests for collision filter
This commit is contained in:
parent
d1d4553661
commit
447887645e
4 changed files with 29 additions and 8 deletions
|
|
@ -176,7 +176,7 @@ class EnergyFilter(Filter):
|
|||
self._index, len(energies), energies_p)
|
||||
|
||||
|
||||
class CollisionFilterFilter(CollisionFilter):
|
||||
class CollisionFilter(Filter):
|
||||
filter_type = 'collision'
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -42,12 +42,10 @@ void CollisionFilter::get_all_bins(
|
|||
auto n = p.n_collision_;
|
||||
|
||||
// Bin the collision number. Must fit exactly the desired collision number .
|
||||
if (n >= bins_.front() && n <= bins_.back()) {
|
||||
auto search = map_.find(n);
|
||||
if (search != map_.end()){
|
||||
match.bins_.push_back(search->second);
|
||||
match.weights_.push_back(1.0);
|
||||
}
|
||||
auto search = map_.find(n);
|
||||
if (search != map_.end()){
|
||||
match.bins_.push_back(search->second);
|
||||
match.weights_.push_back(1.0);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -121,6 +121,12 @@ def test_tallies():
|
|||
harmonics_tally3.scores = ['flux', 'total']
|
||||
harmonics_tally3.estimatir = 'tracklength'
|
||||
|
||||
n_collision = (1,2,5,3,6)
|
||||
collision_filter = CollisionFilter(n_collision)
|
||||
collision_tally = Tally()
|
||||
collision_tally .filters = [collision_filter]
|
||||
collision_tally .scores = ['scatter']
|
||||
|
||||
universe_tally = Tally()
|
||||
universe_tally.filters = [
|
||||
UniverseFilter((model.geometry.get_all_universes()[1],
|
||||
|
|
@ -174,7 +180,8 @@ def test_tallies():
|
|||
cellborn_tally, dg_tally, energy_tally, energyout_tally,
|
||||
transfer_tally, material_tally, mu_tally1, mu_tally2,
|
||||
polar_tally1, polar_tally2, polar_tally3, legendre_tally,
|
||||
harmonics_tally, harmonics_tally2, harmonics_tally3, universe_tally]
|
||||
harmonics_tally, harmonics_tally2, harmonics_tally3,
|
||||
universe_tally,collision_tally]
|
||||
model.tallies += score_tallies
|
||||
model.tallies += flux_tallies
|
||||
model.tallies += all_nuclide_tallies
|
||||
|
|
|
|||
|
|
@ -46,6 +46,22 @@ def test_cell_instance():
|
|||
assert instances.apply(lambda x: x in (0, 1, 2)).all()
|
||||
|
||||
|
||||
def test_collision():
|
||||
f = openmc.CollisionFilter([1,5,3,2,8])
|
||||
assert f.bins[0] == 1
|
||||
assert f.bins[1] == 5
|
||||
assert f.bins[-1] == 8
|
||||
assert len(f.bins) == 5
|
||||
|
||||
# Make sure __repr__ works
|
||||
repr(f)
|
||||
|
||||
# to_xml_element()
|
||||
elem = f.to_xml_element()
|
||||
assert elem.tag == 'filter'
|
||||
assert elem.attrib['type'] == 'collision'
|
||||
|
||||
|
||||
def test_legendre():
|
||||
n = 5
|
||||
f = openmc.LegendreFilter(n)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue