MURE
Loading...
Searching...
No Matches
NucleusMCRecord.hxx
Go to the documentation of this file.
1/*
2 This file is part of MURE,
3 Copyright (C) 2007-2021 MURE developers.
4
5 MURE is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 MURE is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with MURE. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#ifndef _NucleusMCRecord_hxx_
20#define _NucleusMCRecord_hxx_
27#include <vector>
28#include <map>
29#include <string>
30#include <sstream>
31#include <iostream>
32#include <utility>
33#include <memory>
34
35class Nucleus;
36
38
54{
55 public:
64
69 void SetTallyNumber(int tallynum)
70 {
71 fTallyNum = tallynum;
72 }
74 {
75 return fTallyNum;
76 }
77 void AddCellnTallyBin(int CellNum, int BinIdx);
79
86 vector < int > AddMultiplicatorBinIndex(int &FMBinIdx, Nucleus *nuc);
87 vector < int > &GetMultiplicatorBinIndex()
88 {
89 return fFMBinIdx;
90 }
92 {
93 fFMTotalBinIdx = FMbin;
94 }
96 {
97 return fFMTotalBinIdx;
98 }
100
105
107 {
108 return fCellnTallyBin.size();
109 }
111 {
112 return fFMBinIdx.size();
113 }
114
115 int GetCellNumber(int i)
116 {
117 return fCellnTallyBin[i].first;
118 }
120 {
121 return fCellnTallyBin[i].second;
122 }
123 vector < pair < int, int > > &GetCellnTallyBin()
124 {
125 return fCellnTallyBin;
126 }
128
129 private:
132 vector < int > fFMBinIdx;
133 vector < pair < int, int > > fCellnTallyBin;
134};
135#endif
A NucleusMCRecord allows to record data for writing &reading reaction rates tallies.
Definition NucleusMCRecord.hxx:54
vector< int > & GetMultiplicatorBinIndex()
Definition NucleusMCRecord.hxx:87
int GetTallyNumber()
Definition NucleusMCRecord.hxx:73
int fTallyNum
Tally Number for reaction rates.
Definition NucleusMCRecord.hxx:130
vector< pair< int, int > > fCellnTallyBin
pair of (Cell number, Tally cell bin index)
Definition NucleusMCRecord.hxx:133
int fFMTotalBinIdx
Multiplicator bin index for the total reaction rate.
Definition NucleusMCRecord.hxx:131
vector< int > AddMultiplicatorBinIndex(int &FMBinIdx, Nucleus *nuc)
Set Multiplicator tally bin index for reaction rates.
Definition NucleusMCRecord.cxx:67
void AddCellnTallyBin(int CellNum, int BinIdx)
Definition NucleusMCRecord.cxx:49
void SetTallyNumber(int tallynum)
Definition NucleusMCRecord.hxx:69
int GetNumberOfMultiplicatorBin()
Definition NucleusMCRecord.hxx:110
int GetCellNumber(int i)
Definition NucleusMCRecord.hxx:115
vector< int > fFMBinIdx
Multiplicator bin index for reaction rate.
Definition NucleusMCRecord.hxx:132
void SetTotalXSMultiplicatorBinIndex(int FMbin)
Definition NucleusMCRecord.hxx:91
vector< pair< int, int > > & GetCellnTallyBin()
Definition NucleusMCRecord.hxx:123
int GetTallyBinIndex(int i)
Definition NucleusMCRecord.hxx:119
int GetTotalXSMultiplicatorBinIndex()
Definition NucleusMCRecord.hxx:95
int GetNumberOfCellBin()
Definition NucleusMCRecord.hxx:106
NucleusMCRecord()
normal contructor
~NucleusMCRecord()
Destructor.
Definition NucleusMCRecord.cxx:41
A real Nucleus with a Temperature.
Definition Nucleus.hxx:71

MURE Project, documentation generated by Doxygen 1.9.7 - Fri Jan 19 2024