利用 Lise++ 或者 SRIM 计算质子和 $^{12}C$ 在水中的 R ~ E/A, dE/dx ~ E/A关系;
参考示例代码,画出 R ~ E/A, E ~ R 和 dE/dx ~ E/A 关系曲线。
按照 1.计算方法 中的做法得到两种粒子的Bragg曲线。将两种粒子的Bragg 曲线(TGraph) 画在同一张图上,并对结果进行讨论。
Bragg曲线的横轴单位取mm,纵轴单位取 MeV/mm。
x轴和y轴用log-scale表示
方法一:设定步长$\Delta x$:
将材料划分为很多块厚度很小的薄片,即将连续的能量损失过程离散化
当单步步长$\Delta x$很小时,可认为在薄片内dE/dx为常数
获得当能量为E的粒子穿过一个厚度为厚度$\Delta x_i$的材料后的能量损失$\Delta E_i$
根据上述关系,粒子每经过一个切片,剩余能量为$E=E-\Delta E_i$, 穿过的厚度为:$x=\sum_i{\Delta x_i}$。
由此得到Bragg曲线上的一个点的坐标(x, $\frac{dE}{dx}(E)$)。以此类推,直至$E \to 0$。
方法二:设定能量步长$\Delta E$:
从射程曲线得到与入射粒子能量E$_0$
设定每次离散化过程中的能量损失$\Delta E$的值
获得当能量为E的粒子的粒子损失$\Delta E$的能量时,穿过的材料厚度$\Delta x$
方法三:上述两个方法都可以改成从射程末端即$x=127 mm,E=0$出发:
由设定步长$\Delta x$,按照 ($E=E+\frac{dE(E)}{dx}\Delta x; x=x-\Delta x)$ ,一直推到$x=0,E=E_0$。
或由设定能量步长$\Delta E$ ,按照 ($E=E+ \Delta E; x=x-\Delta E/\frac{dE(E)}{dx})$ ,一直推到$x=0,E=E_0$。
此时$E=E_0$即为所需能量。
(1)比较用不同方法求解的结果,讨论产生差异的原因,且分析其是否合理
(2)思考选取位移步长与能量步长的标准,怎样的选取是合理的
(3)各步的步长一定要选取相同的值吗,如果选取可变步长,理由与选取的标准是什么?
1)不得直接复制示例代码,推荐编写自己的版本。
(2)程序要求写注释,注释内容包括但不限于:新变量的声明,复杂流程的解释
(3)程序严禁使用一个Cell写到尾,要求每步程序都要进行简明扼要的阐述(如示例代码)
(4)需要对结果做适当的说明,不能直接给一个数值
(5)鼓励使用子程序,简化整体代码