Commit graph

142 commits

Author SHA1 Message Date
John Tramm
65418f56b4 changes to int64_t for event-based particle queueing variables 2020-01-08 19:55:34 +00:00
John Tramm
e194dfb1b1 Moved event buffer initialization to simulation initialization function, rather than allocating and free'ing each power iteration. Also added ifdef for enabling/disabling event-based simulation. 2020-01-08 19:30:14 +00:00
John Tramm
1fdf446bfe Enforcement of maximum shared fission bank length added. Also some minor code cleanup. 2020-01-08 17:50:02 +00:00
John Tramm
e60dd30079 moved shared fission bank and event based functions around. Created new event files for event-based logic. 2020-01-08 17:09:41 +00:00
John Tramm
8aaa97a0bd Removed old style history() function from particle object, and moved it into new functions in simulation file. Also had to fix particle_restart function to follow similar logic that was moved to initialize_history() function. 2020-01-07 23:03:13 +00:00
John Tramm
747971dffe Added multigroup support for shared fission bank. Should be relatively easy to support for GPU. 2020-01-07 18:25:50 +00:00
John Tramm
e59a70ebb7 Fixed one issue with event-based mode when converting to unified functions. Needed to be attempting to revive after BOTH surface crossing and collions events. Had previously only been doing it for one. 2020-01-06 22:47:38 +00:00
John Tramm
e937e9c951 Unified history-based and event-based logic. Also removed extra python/dagmc tests from travis.yml 2020-01-06 21:35:50 +00:00
John Tramm
ead1309f2e fixed undefined behaviour bug. Issue was with the global tally accumulators. Specifically, I had changed it so that the global values get updated atomically once at particle death. However, in the old version, each thread dumps its threadprivate accumulator in parallel in a critical section at power iteration finalization. This was still being done in parallel, even though the global values were complete, so the resulting global tallies were getting recorded nthreads times. Making that region serial fixed it. 2020-01-06 21:15:41 +00:00
John Tramm
79bf18efa8 misc small edits. Trying to track down threading bug that causes undefined behavior 2020-01-06 20:52:48 +00:00
John Tramm
69d782f315 broke up history-based method into discrete events 2020-01-03 22:50:41 +00:00
John Tramm
d1b5810688 moved thread private trace debugging variable into particle object. 2020-01-03 21:55:03 +00:00
John Tramm
d4c63ed0bb removed thread private global tally accumulators and moved them to particle. They now atomically accumulate at particle death. 2020-01-03 21:09:44 +00:00
John Tramm
eba244a1c0 testing history-based method 2020-01-03 20:09:46 +00:00
John Tramm
2e37b1d603 removed unneeded variable 2020-01-03 19:46:32 +00:00
John Tramm
843a0729d2 sorting tweak to account for there being unique materials in SMR problem, and added fix for history-based method so that it works again. 2020-01-02 20:58:41 +00:00
John Tramm
0e29f84da6 parallelized particle initialization (not necessary), and switched to dynamic openmp scheduling 2019-12-18 21:38:35 +00:00
John Tramm
4180fce57a fixed issue with single sort comparator before XS lookups 2019-12-17 19:07:00 +00:00
John Tramm
99cae0b146 fixed photon_production issue. Problem was that the particle event_, event_nuclide_ and event_mt_ variables were not being set at beginning of XS lookup event. 2019-12-17 18:12:06 +00:00
John Tramm
44f0dd73e8 various small cleanups 2019-12-17 17:51:52 +00:00
John Tramm
c8755273a0 added in particle track outputting 2019-12-17 17:13:10 +00:00
John Tramm
f01db6d3d3 fixed rotation bug. Old event-based simulation rotation paragraph was not up to date. 2019-12-13 17:20:32 +00:00
John Tramm
768102ad18 converted tracks to be particle owned, rather than global threadprivate 2019-12-12 22:19:56 +00:00
John Tramm
4fb438cbea moved filter_matches arrays to be particle owned rather than global thread private 2019-12-12 21:09:55 +00:00
John Tramm
38fa90b3e4 Moved flux derivatives to the particle. Diff tallies are still not getting right answer, but they look closer... 2019-12-12 16:02:06 +00:00
John Tramm
1bb03f004a Moved current_work variable to particle object, and removed threadprivate tag from tally_derivs 2019-12-11 21:58:19 +00:00
John Tramm
67b5cce2a6 fixed more rebase issues. Seems to be passing the tests it used to pass now 2019-12-11 17:42:40 +00:00
John Tramm
cd0d375655 implemented better comparator for sorting XS lookup queue once rather than partition + sort 2019-12-11 16:35:17 +00:00
John Tramm
d378bf6013 more merge fixes 2019-12-11 16:18:53 +00:00
John Tramm
20161c4581 resolved some conflicts when rebasing with develop 2019-12-11 16:15:33 +00:00
John Tramm
796844fd0b fixed broken stuff from prn interface changes 2019-12-11 16:09:15 +00:00
John Tramm
0c1299fbe0 removed ifdef guard for openmp when populating fission bank 2019-12-11 16:08:51 +00:00
John Tramm
066bcb6052 formatting 2019-12-11 16:08:09 +00:00
John Tramm
2fdf536c4d added sorting 2019-12-11 16:08:09 +00:00
John Tramm
6ade9b853c updated max particles in flight to be much bigger 2019-12-11 16:08:09 +00:00
John Tramm
f6a367f703 changed to more flexible timers 2019-12-11 16:08:09 +00:00
John Tramm
ceeb8ba5a4 some minor optimizations 2019-12-11 16:08:08 +00:00
John Tramm
60b7c7253a finally reproducible. Change was to the XS lookups. Old way was doing something different I guess, so reverting to original code fixed it all 2019-12-11 16:08:08 +00:00
John Tramm
332da9f93a sab print statements 2019-12-11 16:07:49 +00:00
John Tramm
e4f377ebb6 added particle trace print 2019-12-11 16:07:48 +00:00
John Tramm
b740032aaf added some print statements 2019-12-11 16:07:48 +00:00
John Tramm
c49ce141a7 fixed MPI issues that resulted from adding Bank struct member 2019-12-11 16:07:33 +00:00
John Tramm
f906e9fffc removed print statements 2019-12-11 16:06:57 +00:00
John Tramm
6050e705bc fixed reproducibility issue 2019-12-11 16:06:04 +00:00
John Tramm
5379b1c291 changed particle init index to match history based method (1 vs. 0-based). Also added some print statements etc. 2019-12-11 16:01:20 +00:00
John Tramm
ff27ed2bbe made secondary particle bank particle owned instead of thread private 2019-12-11 16:00:10 +00:00
John Tramm
0602ddd8a3 refactor seed and seed aray variable names 2019-12-05 19:50:31 +00:00
John Tramm
b6d25ba029 fixed broken stuff from prn interface changes 2019-12-05 18:39:02 +00:00
John Tramm
494eeab9b3
Merge branch 'event-based-device' into particle_owned_seeds2 2019-12-05 11:55:59 -06:00
John Tramm
638172e68d refactor of prn() interface and python interface changes 2019-12-04 16:35:01 +00:00