2019年第八届数学建模国际赛小美赛A题放射性产生的热量解题全过程文档及程序

2019年第八届数学建模国际赛小美赛

A题 放射性产生的热量

原题再现:

  假设我们把一块半衰期很长的放射性物质做成一个特定的形状。在这种材料中,原子核在衰变时会以随机的方向释放质子。我们假设携带质子的能量是一个常数。质子在穿过致密物质时,会释放出所携带的能量并将其转化为热量。质子的能量释放速率与其在材料中的行进距离之间的关系符合布拉格峰曲线1,即当质子行进到一定的恒定距离时,大部分能量被释放。我们把这种材料放在水中,我们可以假设质子在水中的布拉格峰曲线与材料中的相同。问题是,为了最大限度地提高材料中质子释放的总能量,材料的形状是什么?
在这里插入图片描述

整体求解过程概述(摘要)

  当原子核衰变时,它将沿着随机方向释放质子。质子的能量释放速率与质子在材料中的路径长度之间的关系符合布拉格峰值曲线,该曲线广泛应用于医学化疗、航空航天监测等领域。因此,研究材料的形状,最大限度地提高质子在材料中释放的总能量,具有重要的价值和意义。
  根据Mohammad Reza Rezaie[1]研究的Rn 222及其α粒子在空气、水等介质中的能量损失实验,利用实验拟合的三次多项式粒子能量方程,再现了Rn 222及α粒子在不同材料中的Bragg峰曲线分布(图3)。从Rn 222开始,证实了在小误差范围内,质子处于稠密材料中运动的布拉格峰值曲线与水中运动的合理假设相同。
  为了得到解析Bragg峰值曲线的函数方程,我们使用美国国家航空航天局空间辐射实验室现有的H55.25MeV布拉格峰值曲线的散射数据来拟合Bortfeld T[2]提出的近似函数关系。拟合可以分为上升段和下降段。通过在MATLAB中编程lsqcurvefi函数,得到能量损失方程的参数。上升段α=0.0001,p=2.1808;下降段α=0.3528,p=0.1586。
  鉴于质子能量损失的复杂性,本文主要建立了描述非弹性能量损失的方程。为了获得材料的最佳形状,碰撞方程的散射角θ近似均匀分布在[0,2𝜋],并通过蒙特卡罗方法模拟材料形状(图7)。基于上述H55.25MeV的Bragg峰曲线方程,结合Biersack[3]提出的碰撞方程的几何解,建立了碰撞参数均匀分布[0,1]的散射角θ近似方程,并用蒙特卡罗方法模拟了材料形状(图9)。
  最后,我们比较了最小二乘法和模拟退火算法对能量损失方程参数的拟合效果,其中下降段α=0.3529,p=0.1584,对比度误差在2%以内。
  本文的材料形状优化是基于H55.25MeV布拉格峰曲线的分析公式。对于α粒子(5.49MeV)在空气中的Bragg峰值曲线,上述方法也适用。

模型假设:

  本文研究的粒子是质子,在建模之前需要做以下假设[5]:
  (1) 原子的核外电子可视为静止的自由电子;
  (2) 忽略轨道大小和形状的统计波动,因为此处考虑“平均轨道”,路径视为位移。
  (3) 材料中质子的能量损失只考虑质子为高能质子,而不考虑低能质子。
  (4) 能量损失主要考虑非弹性能量损失。

问题重述:

  题目说原子核在衰变时随机释放质子。我们假设质子携带的能量是恒定的,当质子穿过致密物质本身时,质子释放出它们携带的能量并将其转化为热量。质子能量释放速率与其在材料中传播距离之间的关系符合布拉格峰曲线,即大部分能量在传播到一定恒定距离时释放。考虑到材料在水中运动与材料中的布拉格峰曲线一致,我们需要设计材料的形状,以使质子在材料中释放的总能量最大化。

模型的建立与求解整体论文缩略图

在这里插入图片描述
在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

部分程序代码:(代码和文档not free)

clc,clear
close all;
%% Energy distance function curve of 222Rn in different media
figure(1);
x=0:80; 
% Air
E1=5.49-0.081.*x-0.0009333*x.^2-0.000007997*x.^3;
plot(x,E1,'LineWidth',2)
xlabel('Path Length [mm]')
ylabel('Alpha Energy [MeV]')
grid on
hold on
axis([0 60 0 6]);
% Water
E2=5.49-0.0792.*x-0.000915*x.^2-0.00000764*x.^3;
plot(x,E2,'LineWidth',2)
% Hexane
E3=5.49-0.06.*x-0.00012*x.^2-0.000012*x.^3;
plot(x,E3,'LineWidth',2)
% Cyclohexane
E4=5.49-0.07548.*x-0.000114*x.^2-0.0000204*x.^3;
plot(x,E4,'LineWidth',2)
% Olive Oil
E5=5.49-0.072.*x-0.0007*x.^2-0.0000715*x.^3;
plot(x,E5,'LineWidth',2)
% CR-39
E6=5.49-0.10148.*x-0.000589*x.^2-0.00004206*x.^3;
plot(x,E6,'LineWidth',2)
legend('Air','Water','Hexane','Cyclohexane','Olive Oil','CR-39')
%% Partial Bragg peak curve of 222Rn in different media
figure(2);
x=0:80; 
% Air
y1=-(-0.081-2*0.0009333*x-3*0.000007997*x.^2);
plot(x,y1,'LineWidth',2)
xlabel('Path Length [mm]')
ylabel('Stopping Power [MeV/mm]')
grid on
hold on
% Water
y2=-(-0.0792-2*0.000915*x-3*0.00000764*x.^2);
plot(x,y2,'LineWidth',2)
% Hexane
y3=-(-0.06-2*0.00012*x-3*0.000012*x.^2);
plot(x,y3,'LineWidth',2)
% Cyclohexane
y4=-(-0.07548-2*0.000114*x-3*0.0000204*x.^2);
plot(x,y4,'LineWidth',2)
% Olive Oil
y5=-(-0.072-2*0.0007*x-3*0.0000715*x.^2);
plot(x,y5,'LineWidth',2)
% CR-39
y6=-(-0.10148-2*0.000589*x-3*0.00004206*x.^2);
plot(x,y6,'LineWidth',2)
legend('Air','Water','Hexane','Cyclohexane','Olive Oil','CR-39')
%% Fit using the lsqcurvefit function
clc,clear
close all;
tic;
%% Ascent stage
xdata1=[0,1,1.5,2,2.25,2.4,2.5,2.525,2.55]; % unit(cm)
ydata1=[1,1.215,1.398,1.793,2.29,3.001,4.489,5.141,5.291]*1.162*10; % 
unit(MeV/cm)
canshu1=[0.1,0.1]; % Set the initial fitting point.
options=optimset('TolFun',1e-8,'TolX',1e-8,'MaxFunEvals',300,'Algorithm','trustregion-reflective','display','iter');
% The optimset command creates or edits the optimization options structure variable
% TolFun - termination tolerance for function values.
% Termination tolerance at TolX -- x.
% MaxFunEvals - maximum number of function evaluations.
% Algorithm is choosing trust-region-reflective.
% Display - Display level. Select 'off' to show no output. Select 'iter' to display the 
output of each iteration process; 
% Select 'final' to display the final result. Print the diagnostic information for the 
minimization function.
lb1=[0.0001,0.0001]; % Lower limit
ub1=[10,10]; % Upper limit
fitted_value1=lsqcurvefit(@fun,canshu1,xdata1,ydata1,lb1,ub1,options);
%% Descent stage
xdata2=[2.55,2.575,2.6,2.7,2.75,3]; % unit(cm)
ydata2=[5.291,4.349,3.412,0.032,0.001,0.001]*1.162*10; % unit(MeV/cm)
canshu2=[0.1,0.1]; % Set the initial fitting point
options=optimset('TolFun',1e-8,'TolX',1e-8,'MaxFunEvals',300,'Algorithm','trustregion-reflective','display','iter');
lb2=[0.0001,0.0001]; % Lower limit
ub2=[10,10]; % Upper limit
fitted_value2=lsqcurvefit(@fun,canshu2,xdata2,ydata2,lb2,ub2,options);
toc;
%% Visual output
R=3;
x1=0:0.05:2.55;
x2=2.55:0.05:3.00;
x=0:0.05:3;
alpha1=fitted_value1(1)
p1=fitted_value1(2)
alpha2=fitted_value2(1)
p2=fitted_value2(2)
Stopping_Power1=1./(alpha1.*p1).*((alpha1./(R-x1)).^(1-1./p1)); 
Stopping_Power2=1./(alpha2.*p2).*((alpha2./(R-x2)).^(1-1./p2)); 
if Stopping_Power1(end)>=Stopping_Power2(1)mid=Stopping_Power1(end);
elsemid=Stopping_Power2(1);
end
Stopping_Power=[Stopping_Power1(1:end-1),mid,Stopping_Power2(2:end)];
plot(x,Stopping_Power,'LineWidth',1.2)
title('Fit using the lsqcurvefit function')
xlabel('Path length [cm]')
ylabel('Stopping Power [MeV/cm]')
grid on
%% Fitting using simulated annealing algorithm
clc,clear
close all;
tic;
%% Ascent stage
xdata1=[0,1,1.5,2,2.25,2.4,2.5,2.525,2.55]; % unit(cm)
ydata1=[1,1.215,1.398,1.793,2.29,3.001,4.489,5.141,5.291]*1.162*10; % 
unit(MeV/cm)
F1=@(canshu1)norm(fun(canshu1,xdata1)-ydata1);
% Canshu1 is the parameter to be fitted.
% Norm function is used to calculate the 2-norm of fun(canshu1,xdata1)-ydata1
% 2- norm square root of the sum of squares of each element
canshu1=[5,5]; % Set the initial fitting point.
lb1=[0,0]; % Lower limit
ub1=[10,10]; % Upper limit
options= saoptimset('Display','iter'); % shows the results of each optimization iteration 
(intermediate process)
[fitted_value1,fval1,exitFlag,output] = simulannealbnd(F1,canshu1,lb1,ub1,options);
%% Descent stage
xdata2=[2.55,2.575,2.6,2.7,2.75,3]; % unit(cm)
ydata2=[5.291,4.349,3.412,0.032,0.001,0.001]*1.162*10; % unit(MeV/cm)
F2=@(canshu2)norm(fun(canshu2,xdata2)-ydata2);
% Canshu2 is the parameter to be fitted.
% Norm function is used to calculate the 2-norm of fun(canshu2,xdata2)-ydata2
canshu2=[5,5]; % Set the initial fitting point.
lb2=[0,0]; % Lower limit
ub2=[10,10]; % Upper limit
options= saoptimset('Display','iter'); % shows the results of each optimization iteration 
(intermediate process)
[fitted_value2,fval2,exitFlag,output] = simulannealbnd(F2,canshu2,lb2,ub2,options);
toc;
%% Visual output
R=3;
x1=0:0.05:2.55;
x2=2.55:0.05:3.00;
x=0:0.05:3;
alpha1=fitted_value1(1)
p1=fitted_value1(2)
alpha2=fitted_value2(1)
p2=fitted_value2(2)
Stopping_Power1=1./(alpha1.*p1).*((alpha1./(R-x1)).^(1-1./p1)); 
Stopping_Power2=1./(alpha2.*p2).*((alpha2./(R-x2)).^(1-1./p2)); 
if Stopping_Power1(end)>=Stopping_Power2(1)mid=Stopping_Power1(end);
elsemid=Stopping_Power2(1);
end
Stopping_Power=[Stopping_Power1(1:end-1),mid,Stopping_Power2(2:end)];
plot(x,Stopping_Power,'LineWidth',1.2,'color','r')
title('Fitting using simulated annealing algorithm')
xlabel('Path length [cm]')
ylabel('Stopping Power [MeV/cm]')
grid on
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/219598.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于脑区的划分方法及一些模板说明

关于脑区的划分方法及一些模板说明 前言脑区划分方法的种类一些标准的脑区划分模板参考文献 前言 原创文章,未经同意请勿转载 Status: Completed Author: xioabai_Ry Time to Note: March 23, 2022 这里主要记录之前自己调研的有关脑区的划分方法及一些标准的脑区…

Web前端-HTML(表格与表单)

文章目录 1.表格与表单1.1 概述 2.表格 table2.1 表格概述2.2. 创建表格2.3 表格属性2.4. 表头单元格标签th2.5 表格标题caption(了解)2.6 合并单元格(难点)2.7 总结表格 3. 表单标签(重点)3.1 概述3.2 form表单3.3 input 控件(重点)type 属性value属性值…

机器学习算法---聚类

类别内容导航机器学习机器学习算法应用场景与评价指标机器学习算法—分类机器学习算法—回归机器学习算法—聚类机器学习算法—异常检测机器学习算法—时间序列数据可视化数据可视化—折线图数据可视化—箱线图数据可视化—柱状图数据可视化—饼图、环形图、雷达图统计学检验箱…

【Redis】AOF 基础

因为 Redis AOF 的实现有些绕, 就分成 2 篇进行分析, 本篇主要是介绍一下 AOF 的一些特性和依赖的其他函数的逻辑,为下一篇 (Redis AOF 源码) 源码分析做一些铺垫。 AOF 全称: Append Only File, 是 Redis 提供了一种数据保存模式, Redis 默认不开启。 AOF 采用日志的形式来记…

写好ChatGPT提示词原则之:清晰且具体(clear specific)

ChatGPT 的优势在于它允许用户跨越机器学习和深度学习的复杂门槛,直接利用已经训练好的模型。然而,即便是这些先进的大型语言模型也面临着上下文理解和模型固有局限性的挑战。为了最大化这些大型语言模型(LLM)的潜力,关…

.NET core 搭建一个跨平台的 Web Service

以前搭建的webservice 都是基于.NET fromwork的,我们知道.NET fromwork是非跨平台的,只能部署在iis上,今天教大家用.NET core搭建一个可跨平台的Web Service 新建一个.net core空项目 给项目起一个名字 选一个.net框架,我这里选…

电脑开机出现:CLIENT MAD ADDR (网卡启动系统)的解决办法

文章目录 前言步骤1、确定情况2、对症下药——关闭网卡启动 补充1、关于BIOS2、关于PXE 前言 最近给旧电脑重装系统安了下开发环境和常用软件啥的,之前还好好启动的电脑,开机突然需要额外加载一个页面,虽然最后正常启动了不影响使用&#xf…

60.Sentinel源码分析

Sentinel源码分析 1.Sentinel的基本概念 Sentinel实现限流、隔离、降级、熔断等功能,本质要做的就是两件事情: 统计数据:统计某个资源的访问数据(QPS、RT等信息) 规则判断:判断限流规则、隔离规则、降级规…

亚马逊云科技 re:Invent 大会 - S3 对象存储华丽升级

亚马逊云科技 re:Invent 大会 - S3 对象存储华丽升级 本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 亚马逊云科技开发者社区, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道。 文章目录 亚马逊云科技 re:Inv…

Flink系列之:大状态与 Checkpoint 调优

Flink系列之:大状态与 Checkpoint 调优 一、概述二、监控状态和 Checkpoints三、Checkpoint 调优四、RocksDB 调优五、增量 Checkpoint六、RocksDB 或 JVM 堆中的计时器七、RocksDB 内存调优八、容量规划九、压缩十、Task 本地恢复十一、主要(分布式存储…

智能优化算法应用:基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.JAYA算法4.实验参数设定5.算法结果6.参考文献7.MA…

【MySQL】MySQL表的操作-创建查看删除和修改

文章目录 1.创建表2.查看表结构3.修改表4.删除表 1.创建表 语法: CREATE TABLE table_name (field1 datatype,field2 datatype,field3 datatype ) character set 字符集 collate 校验规则 engine 存储引擎;说明: field 表示列名datatype 表示列的类型…

flask简单应用-1

目标: 做一个搜索网页,搜索当前路径下是否含有指定关键字的文件,如果有就列出来,没有返回消息 第一步:我们需要先显示一个搜索页面,页面上需要有一个可以输入的对话框,一个按钮执行搜索 建立ht…

基于开源的JAVA mongodb jdbc 驱动 使用教程

基于开源的JAVA mongodb jdbc 驱动 使用教程介绍 介绍 本文介绍一款开源的基于JAVA的 Mongodb JDBC 驱动使用教程 开源地址 https://gitee.com/bgong/jdbc-mongodb-driver功能价值 与mybaits融合:复用mybatis的功能特性,如:缓存,if动态判断标签等特…

[计网01] 物理层 详细解析笔记,特性

计算机网络的物理层是网络协议栈中的第一层,负责传输原始的比特流(bitstream)通过物理媒介进行通信。物理层主要关注传输介质、信号的编码和调制、数据传输速率以及数据传输的物理连接等方面。 相关特性 机械特性(Mechanical Ch…

【JAVA】CyclicBarrier源码解析以及示例

文章目录 前言CyclicBarrier源码解析以及示例主要成员变量核心方法 应用场景任务分解与合并应用示例 并行计算应用示例 游戏开发应用示例输出结果 数据加载应用示例 并发工具的协同应用示例 CyclicBarrier和CountDownLatch的区别循环性:计数器的变化:用途…

C# 命令行参数解析库示例

写在前面 在日常开发中,我们经常会用到命令行参数,比如cmd下的各种指令;还有C#的控制台类型的项目,在默认入口Main函数中,那个args参数,就是有系统传入到程序进程的命令行参数;在传入的参数相对…

晚期食管癌肿瘤治疗线程分类

文章目录 1、肿瘤治疗的线数1.1 基础概念1.2 线程定义1.3 如何计算治疗线数 2 食管癌治疗指南2.1 食管癌诊疗指南2.1 CSCO 本文前半部分主要来源于参考文件1,其余部分来源于官方指南。无原创内容,全部为摘要。 1、肿瘤治疗的线数 1.1 基础概念 抗肿瘤药…

信息安全和网络安全的区别

信息安全与网络安全都属于安全领域,但它们的范围和重点不同。 信息安全主要关注数据的保护,包括对敏感数据进行加密、防止数据丢失或泄露等措施。信息安全通常与数据存储、传输和处理相关。 而网络安全更侧重于保护计算机系统和网络免受攻击、病毒、蠕…

SCI一区级 | Matlab实现GWO-CNN-GRU-selfAttention多变量多步时间序列预测

SCI一区级 | Matlab实现GWO-CNN-GRU-selfAttention多变量多步时间序列预测 目录 SCI一区级 | Matlab实现GWO-CNN-GRU-selfAttention多变量多步时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现GWO-CNN-GRU-selfAttention灰狼算法优化卷积门控循环…