import numpy as np
# 创建一个包含所有材料数据的字典
materials_data = {
"infinite_homogeneous_material_2G": {
"total": np.array([0.19665, 0.59616]),
# 采用二维数组存储多群之间的相互散射,其中[0][1]表示能群0对能群1的散射截面
"scatter matrix from g to g": np.array([[0.1780, 0.01002], [0.001089, 0.5255]]),
"fission": np.array([0.006203, 0.1101]), # 裂变截面
# 裂变产额,即每个中子引发的裂变反应能够产生多少新的中子
"nu-fission": np.array([0.006203, 0.1101]),
"chi": np.array([1, 0.0]),
},
"c5g7_UO2_7G": {
"total": np.array(
[1.779490e-01, 3.298050e-01, 4.803880e-01, 5.543670e-01,
3.118010e-01, 3.951680e-01, 5.644060e-01]
),
# 采用二维数组存储多群之间的相互散射,其中[0][1]表示能群0对能群1的散射截面
"scatter matrix from g to g": np.array(
[
[1.275370e-01, 4.237800e-02, 9.437400e-06, 5.516300e-09, 0.0, 0.0, 0.0],
[0.0, 3.244560e-01, 1.631400e-03 ,3.142700e-09, 0.0, 0.0, 0.0],
[0.0, 0.0, 4.509400e-01, 2.679200e-03, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 4.525650e-01, 5.566400e-03, 0.0, 0.0],
[0.0, 0.0, 0.0, 1.252500e-04, 2.714010e-01, 1.025500e-02, 1.002100e-08],
[0.0, 0.0, 0.0, 0.0, 1.296800e-03, 2.658020e-01, 1.680900e-02],
[0.0, 0.0, 0.0, 0.0, 0.0, 8.545800e-03, 2.730800e-01],
]
),
"fission": np.array([7.212060E-03, 8.193010E-04, 6.453200E-03,
1.856480E-02, 1.780840E-02, 8.303480E-02,
2.160040E-01]),
"nu-fission": np.array([2.005998E-02, 2.027303E-03, 1.570599E-02,
4.518301E-02, 4.334208E-02, 2.020901E-01,
5.257105E-01]),
"chi": np.array([5.87910E-01, 4.11760E-01, 3.39060E-04,
1.17610E-07, 0., 0., 0.]),
}
}
# 添加更多材料
materials_data["c5g7_MOX43_7G"] = {
"total": np.array(
[
1.787310e-01,
3.308490e-01,
4.837720e-01,
5.669220e-01,
4.262270e-01,
6.789970e-01,
6.828520e-01,
]
),
"scatter matrix from g to g": np.array(
[
[1.288760e-01, 4.141300e-02, 8.229000e-06, 5.040500e-09, 0.0, 0.0, 0.0],
[0.0, 3.254520e-01, 1.639500e-03, 1.598200e-09, 0.0, 0.0, 0.0],
[0.0, 0.0, 4.531880e-01, 2.614200e-03, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 4.571730e-01, 5.539400e-03, 0.0, 0.0],
[0.0, 0.0, 0.0, 1.604600e-04, 2.768140e-01, 9.312700e-03, 9.165600e-09],
[0.0, 0.0, 0.0, 0.0, 2.005100e-03, 2.529620e-01, 1.485000e-02],
[0.0, 0.0, 0.0, 0.0, 0.0, 8.494800e-03, 2.650070e-01],
]
),
"fission": np.array(
[
7.62704e-03,
8.76898e-04,
5.69835e-03,
2.28872e-02,
1.07635e-02,
2.32757e-01,
2.48968e-01,
]
),
"nu-fission": np.array(
[
2.175300e-02,
2.535103e-03,
1.626799e-02,
6.547410e-02,
3.072409e-02,
6.666510e-01,
7.139904e-01,
]
),
"chi": np.array(
[5.87910e-01, 4.11760e-01, 3.39060e-04, 1.17610e-07, 0.0, 0.0, 0.0]
),
}
materials_data["c5g7_MOX7_7G"] = {
"total": np.array(
[
1.813230e-01,
3.343680e-01,
4.937850e-01,
5.912160e-01,
4.741980e-01,
8.336010e-01,
8.536030e-01,
]
),
"scatter matrix from g to g": np.array(
[
[1.304570e-01, 4.179200e-02, 8.510500e-06, 5.132900e-09, 0.0, 0.0, 0.0],
[0.0, 3.284280e-01, 1.643600e-03, 2.201700e-09, 0.0, 0.0, 0.0],
[0.0, 0.0, 4.583710e-01, 2.533100e-03, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 4.637090e-01, 5.476600e-03, 0.0, 0.0],
[0.0, 0.0, 0.0, 1.761900e-04, 2.823130e-01, 8.728900e-03, 9.001600e-09],
[0.0, 0.0, 0.0, 0.0, 2.276000e-03, 2.497510e-01, 1.311400e-02],
[0.0, 0.0, 0.0, 0.0, 0.0, 8.864500e-03, 2.595290e-011],
]
),
"fission": np.array(
[
8.25446e-03,
1.32565e-03,
8.42156e-03,
3.28730e-02,
1.59636e-02,
3.23794e-01,
3.62803e-01,
]
),
"nu-fission": np.array(
[
2.381395e-02,
3.858689e-03,
2.413400e-02,
9.436622e-02,
4.576988e-02,
9.281814e-01,
1.043200e00,
]
),
"chi": np.array(
[5.87910e-01, 4.11760e-01, 3.39060e-04, 1.17610e-07, 0.0, 0.0, 0.0]
),
}
materials_data["c5g7_MOX87_7G"] = {
"total": np.array(
[
1.830450e-01,
3.367050e-01,
5.005070e-01,
6.061740e-01,
5.027540e-01,
9.210280e-01,
9.552310e-01,
]
),
"scatter matrix from g to g": np.array(
[
[1.315040e-01, 4.204600e-02, 8.697200e-06, 5.193800e-09, 0.0, 0.0, 0.0],
[0.0, 3.304030e-01, 1.646300e-03, 2.600600e-09, 0.0, 0.0, 0.0],
[0.0, 0.0, 4.617920e-01, 2.474900e-03, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 4.680210e-01, 5.433000e-03, 0.0, 0.0],
[0.0, 0.0, 0.0, 1.859700e-04, 2.857710e-01, 8.397300e-03, 8.928000e-09],
[0.0, 0.0, 0.0, 0.0, 2.391600e-03, 2.476140e-01, 1.232200e-02],
[0.0, 0.0, 0.0, 0.0, 0.0, 8.968100e-03, 2.560930e-01],
]
),
"fission": np.array(
[
8.67209e-03,
1.62426e-03,
1.02716e-02,
3.90447e-02,
1.92576e-02,
3.74888e-01,
4.30599e-01,
]
),
"nu-fission": np.array(
[
2.518600e-02,
4.739509e-03,
2.947805e-02,
1.122500e-01,
5.530301e-02,
1.074999e00,
1.239298e00,
]
),
"chi": np.array(
[5.87910e-01, 4.11760e-01, 3.39060e-04, 1.17610e-07, 0.0, 0.0, 0.0]
),
}
materials_data["c5g7_Water_7G"] = {
"total": np.array(
[
1.592060e-01,
4.129700e-01,
5.903100e-01,
5.843500e-01,
7.180000e-01,
1.254450e00,
2.650380e00,
]
),
"scatter matrix from g to g": np.array(
[
[
4.447770e-02,
1.134000e-01,
7.234700e-04,
3.749900e-06,
5.318400e-08,
0.0,
0.0,
],
[
0.0,
2.823340e-01,
1.299400e-01,
6.234000e-04,
4.800200e-05,
7.448600e-06,
1.045500e-06,
],
[
0.0,
0.0,
3.452560e-01,
2.245700e-01,
1.699900e-02,
2.644300e-03,
5.034400e-04,
],
[0.0, 0.0, 0.0, 9.102840e-02, 4.155100e-01, 6.373200e-02, 1.213900e-02],
[0.0, 0.0, 0.0, 7.143700e-05, 1.391380e-01, 5.118200e-01, 6.122900e-02],
[0.0, 0.0, 0.0, 0.0, 2.215700e-03, 6.999130e-01, 5.373200e-01],
[0.0, 0.0, 0.0, 0.0, 0.0, 1.324400e-01, 2.480700e00],
]
),
"fission": np.zeros(7),
"nu-fission": np.zeros(7),
"chi": np.zeros(7),
}
materials_data["c5g7_Clad_7G"] = {
"total": np.array(
[
1.30060e-01,
3.05480e-01,
3.29910e-01,
2.69700e-01,
2.72780e-01,
2.77940e-01,
2.95630e-01,
]
),
"scatter matrix from g to g": np.array(
[
[9.72490e-02, 3.25480e-02, 0.0, 0.0, 0.0, 0.0, 0.0],
[0.0, 3.03980e-01, 7.72850e-04, 0.0, 0.0, 0.0, 0.0],
[0.0, 0.0, 3.24280e-01, 5.94050e-04, 0.0, 0.0, 0.0],
[0.0, 0.0, 0.0, 2.63200e-01, 5.31350e-03, 0.0, 0.0],
[0.0, 0.0, 0.0, 2.12680e-03, 2.53950e-01, 1.39080e-02, 0.0],
[0.0, 0.0, 0.0, 0.0, 9.174200e-04, 3.167650e-01, 2.387700e-01],
[0.0, 0.0, 0.0, 0.0, 0.0, 4.979200e-02, 1.099120e00],
]
),
"fission": np.zeros(7),
"nu-fission": np.zeros(7),
"chi": np.zeros(7),
}
""" 设置求积组 """
# 定义一个字典来存储各个高斯求积点的角度和权重
gauss_quadrature_sets = {
4: {
'angles': np.array([-0.861136, -0.339981, 0.339981, 0.861136]),
'weights': np.array([0.347855, 0.652145, 0.652145, 0.347855])
},
8: {
'angles': np.array([-0.9602898564975363, -0.7966664774136268,
-0.525532409916329, -0.1834346424956498,
0.1834346424956498, 0.525532409916329,
0.7966664774136268, 0.9602898564975363]),
'weights': np.array([0.1012285362903768, 0.2223810344533745,
0.3137066458778874, 0.362683783378362,
0.362683783378362, 0.3137066458778874,
0.2223810344533745, 0.1012285362903768])
},
16: {
'angles': np.array([-0.9894009349916499, -0.9445750230732326,
-0.8656312023878318, -0.755404408355003,
-0.6178762444026438, -0.4580167776572274,
-0.2816035507792589, -0.09501250983763744,
0.09501250983763744, 0.2816035507792589,
0.4580167776572274, 0.6178762444026438,
0.755404408355003, 0.8656312023878318,
0.9445750230732326, 0.9894009349916499]),
'weights': np.array([0.02715245941175406, 0.06225352393864778,
0.0951585116824929, 0.1246289712555339,
0.1495959888165768, 0.1691565193950026,
0.1826034150449236, 0.1894506104550685,
0.1894506104550685, 0.1826034150449236,
0.1691565193950026, 0.1495959888165768,
0.1246289712555339, 0.0951585116824929,
0.06225352393864778, 0.02715245941175406])
}
}