资源简介
该程序通过蒙特卡洛模拟光声成像的过程 ,能够反应光子的运动。

代码片段和文件信息
function output=iterat(inputstep)
input=[000000];
x=input(1);y=input(2);z=input(3);ux=input(4);uy=input(5);uz=input(6);
g=0.8;
step=0.49383;
step=step*log10(rand())/log10(2.71828);
if (step>5)
step=5;
end
l=step;%步长
e1=rand(1);
e2=rand(1);
if(g==0)
costheta=2*e1-1;
else
costheta=(1+g^2-((1-g^2)/(1-g+2*g*e1))^2)/2/g;
end
fai=2*pi*e2;
sinfai=sin(fai);
cosfai=cos(fai);
sintheta=(1-(costheta)^2)^0.5;
if (abs(uz)<=0.99999)
uxx=(sintheta/(1-uz^2)^0.5)*(ux*uz*cosfai-uy*sinfai)+ux*costheta;
uyy=(sintheta/(1-uz^2)^0.5)*(uy*uz*cosfai+ux*sinfai)+uy*costheta;
uzz=-(1-uz^2)^0.5*sintheta*cosfai+uz*costheta;
else
uxx=sintheta*sinfai
uyy=sintheta*sinfai
uzz=sign(uz)*costheta
end
uuxx=uxx/(uxx^2+uyy^2+uzz^2)^0.5;
uuyy=uyy/(uxx^2+uyy^2+uzz^2)^0.5;
uuzz=uzz/(uxx^2+uyy^2+uzz^2)^0.5;
xx=x+l*uuxx;
yy=y+l*uuyy;
zz=z+l*uuzz;
output=[xx yy zz uuxx uuyy uuzz];
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 965 2010-11-30 13:29 mc模拟光声成像\iterat.m
文件 5495 2010-11-30 14:52 mc模拟光声成像\mc.m
目录 0 2001-05-14 16:32 mc模拟光声成像
----------- --------- ---------- ----- ----
6460 3
- 上一篇:五子棋prolog实现
- 下一篇:冒险岛手型鼠标.rar
相关资源
- BFSK/BPSK-BER 蒙特卡洛仿真程序
- 基于蒙特卡洛生成电动汽车充电负荷
- 10负荷点配电网蒙特卡洛法可靠性计算
- 论文研究 - 通过共形图进行快速扩散
- 医学图像重建入门_曾更生着(中文版
- 基于有限元的光声成像算法研究
- 非局部正则化的压缩感知图像重建算
- 蒙特卡洛算法
- 几种CT图像重建算法的研究和比较
- 量化策略开发流程蒙特卡洛方法等五
- 蒙特卡洛方法原理及编程
- 配电网可靠性评估
- X-CT图像重建的计算机仿真程序开发
- 医学图像重建入门_曾更生著(中文版
- 压缩感知图像重构算法工具包
- 医学断层图像重建仿真实验.黄力宇朱
- 蒙特卡洛方法模拟课件
- 并行计算mpi与openmp之蒙特卡洛求不规
- 基于高斯过程回归与马尔科夫随机场
- QOverlapExtracter图像重叠区提取
- 医学图像重建 曾更生
- DSMC直接模拟蒙特卡洛法介绍及实现
- 医学图像重建.pdf
- 协作通信的蒙特卡洛仿真方法
- MCNP学生版.zip
- ct图像重建系统178820
- 蒙特卡洛算法讲义,对数模初学者帮
- ct图像重建系统163747
- CT图像重建系统
- MCNP使用说明书
评论
共有 条评论