当前位置: 首页 > news >正文

【热力学】基于Matlab模拟生成热晕

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机

⛄ 内容介绍

热晕效应是高能激光大气传输最重要的非线性效应之一。利用激光大气传输四维仿真程序,针对高能固体脉冲激光大气传输的非线性热晕效应,采用常规自适应光学系统与随机并行梯度算法自适应光学系统对其相位补偿进行了数值模拟和分析

⛄ 部分代码

clc;

clear;  

buchang=2*L/N;

[x,y]=meshgrid(-L:buchang:L-buchang,-L:buchang:L-buchang); %正负不等

xh=x(1,:);

yh=y(:,1)

delta=L/N;

[x1,y1]=meshgrid(-L/buchang:1:L/buchang-1,-L/buchang:1:L/buchang-1);

r = sqrt(x.^2 + y.^2) ;

fanghuqiang = exp(-(r/(0.95*L)).^10) ;   %超高斯分布吸收边界

zhenkong=zhenkongchuanshu(L,x1,y1,dz,k);

h=waitbar(0,'计算中,请等待...');

for l=1:bushu

     if l==1

            Eu1=myifft2(zhenkong.*myfft2(Eu)).*exp(-(alph)*dz/2)^0.5;

     else

            Eu1=myifft2(zhenkong.*myfft2(Eu2)).*exp(-(alph)*dz/2)^0.5.*fanghuqiang;

     end

     Ip=abs(Eu1).^2;

      rou1=-(gamma-1)*xishou/Cs.^2/v*cumsum(Ip,2)*buchang;

      thermalbloomingPhas=(2.26e-4)*rou1*k*dz;             %密度与折射率间的关系还需研究

      Eu2=myifft2(zhenkong.*myfft2(Eu1.*exp(1i*(thermalbloomingPhas)))).*exp(-(alph)*dz/2)^0.5;

       jishu1=num2str(fix(l/bushu*100));

      waitbar(l/bushu,h,['请等待,已完成',jishu1,'%']);

end

  delete(h);

 I=(abs(Eu2)).^2;

 phase1=angle(Eu);%返回复数

 phase2=angle(Eu2);%返回

  %pic=imagesc(xh,yh,I)%彩图or灰度图

  figure(1);

  %前两个参数用于设置figure的位置,后两个参数用于设置figure的大小(长和宽);

  %picI=imshow(I,[ ]);

  picI=imshow(I,[ ],'border','tight','initialmagnification','fit');

  set(gcf,'Position',[0 30 1280 1024]);

  %set(gca,'Position',[0.01 0.01 2 2]);

%set (gcf,'Position',[0,0,500,500]);

axis normal;

saveas(gcf,'1.bmp','bmp');

%print(gcf,'-dbmp','bmp')

  

  %saveas(picI,'1.bmp');

  

  figure(2);

% set(gcf,'Position',[0 0 1280 1024], 'color','w');

  pic=imagesc(xh,yh,I);

   axis('off');

   saveas(pic,'2.bmp');

  figure(3)

  picphase1=imshow(phase2,[ ]);%传输过后phase

  figure(4)

  picphase2=imshow(phase1,[ ],'border','tight','initialmagnification','fit');;%未传输phase

%    set(gcf,'Position',[0 30 1280 1024]);

   axis normal;

  saveas(gcf,'2.bmp','bmp');

  P=1.01325e5;                                %%% 大气压强,在此设置为标准大气压,设置要根据具体情况而定

  n0=1.00029;                                  %大气折射率

  cp=1.006;                                   %%% 等压热容

  r=1.4;                                      %%% r=Cp/Cv  参数来源于《热晕瞬态效应的数值模拟》作者:张天树

  Cs=330;                                     %%%  声速,参数来源于《热晕瞬态效应的数值模拟》作者:张天树

  k=2*pi/lamda;                               %%% 计算波数

  rou=1294.6;                                 %%% 空气密度,使用的是近地面情况

  T=300;                                   %%% 温度,开尔文,这里设置为摄氏零度,设置应根据具体情况而定

  nt=(-77.6*(1+(lamda*1.0e6).^(-2)*7.52e-3)*(P/T.^2))*1e-8; %压强一定时大气折射率随温度的变化率

  ND=4*sqrt(2)*(-nt)*k*alph*power*z/rou/cp/v/a    %对于高斯光束的热晕畸变参数,布雷德利-赫尔曼热晕畸变数(一般1-200)

  %Nc=16*sqrt(2)*(-nt)*alph*power*z^2/pi/rou/cp/v/a^3/n0    %准直光束稳态热晕畸变参数

⛄ 运行结果

⛄ 参考文献

​[1]税奇军. 气溶胶所致热晕的数值研究. Diss. 电子科技大学, 2007.

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

相关文章:

  • 『Halcon与C#混合编程』第二章02_迈德威视工业相机SDK图像变量转换
  • NASA成功撞击1100公里外小行星!人类史上首次,主动避免恐龙覆辙,马斯克亦有贡献...
  • PHP Iterable 可迭代对象
  • 5. Hadoop集群操作
  • 数据库安装与配置
  • Lua 在终端使用交互模式
  • TCS34725颜色感应识别模块
  • python学习笔记:基础语法
  • 面试~Synchronized 与 锁升级
  • 【C++学习】C++入门知识(下)
  • 【23秋招c++后端面试技术突围】TCP/IP 之 滑动窗口、Nagle算法和延迟确认
  • .Net Redis的秒杀Dome和异步执行
  • 开学总动员!2022华为开发者大赛等你来挑战!
  • 【WACV2022】DAQ | 首尔大学首次为超分辨率网络提出逐通道分布自适应量化方法,效果显著
  • STM32 Bootloader跳转后不执行程序的问题解决记录
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • Android框架之Volley
  • Apache Pulsar 2.1 重磅发布
  • classpath对获取配置文件的影响
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  • gitlab-ci配置详解(一)
  • HTTP 简介
  • JavaScript学习总结——原型
  • java多线程
  • JDK9: 集成 Jshell 和 Maven 项目.
  • JS 面试题总结
  • win10下安装mysql5.7
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 人脸识别最新开发经验demo
  • 为什么要用IPython/Jupyter?
  • 用element的upload组件实现多图片上传和压缩
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • Java数据解析之JSON
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​插件化DPI在商用WIFI中的价值
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • #include<初见C语言之指针(5)>
  • (175)FPGA门控时钟技术
  • (2.2w字)前端单元测试之Jest详解篇
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (LeetCode C++)盛最多水的容器
  • (ZT)薛涌:谈贫说富
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (过滤器)Filter和(监听器)listener
  • (转)项目管理杂谈-我所期望的新人
  • .net连接oracle数据库
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)
  • .NET中的Event与Delegates,从Publisher到Subscriber的衔接!
  • [2021ICPC济南 L] Strange Series (Bell 数 多项式exp)
  • [2023-年度总结]凡是过往,皆为序章
  • [AX]AX2012 AIF(四):文档服务应用实例
  • [BZOJ 1040] 骑士
  • [C#]OpenCvSharp使用帧差法或者三帧差法检测移动物体