2.蒙特卡洛相位屏

大气折射率变化是一个随机的过程,通过大气的光程长度也同样是随机的。因此,湍流模型仅给出统计平均值,如折射率变量的结构函数和功率谱。

建立大气相位屏的问题就是产生随机过程独立表达式的问题,即相位屏的建立是通过把计算机产生的随机数变换为采样点网格上的两维相位值阵列来实现的,相位值阵列具有与湍流引起的相位变化相同的统计特性。

为了在有限的网格上生成相位屏,相位通常被写成各种基底函数的权重加和,常用于这一目的的基组为泽尔尼克多项式和傅里叶数列(FS),这两种基组各有优缺点。

(一)FT方法——最普遍的相位屏生成方法

湍流诱导光学相位为

改写成傅里叶级数

傅里叶系数Cn,m 服从具有零平均值和方差的环形复高斯统计,其中傅里叶系数Cn,m 的方差推导过程如下:

将9.78带入到9.77,可得如下结果

其中如下为改进的von-karman refractive-index PSD’s  ,单位为cycles/m

总结程序过程:首先利用MATLAB的randn函数,生成零平均值和单位方差的高斯随机数,然后乘以(9.79)给出的方差均根值便得到了傅里叶系数Cn,m的随机曲线。进而利用二维DIFT得到相位屏。详细代码见ft_sh_phase_screen子函数。

(二)分谐波强化的FT方法——

上述FT方法中采用的二维DIFT不能生成准确的相位屏,最大偏差发生在大空间间隔处,即低空间频率处。——由(9.51)生成的相位PSD在较低空间频率具有很高的功率。实际上很多文献表明经常不能对足够低的空间频率进行采样来准确表征低阶模式,如倾斜。

基本原理:首先采用上述二维DIFT法生成相位屏,然后在相位屏中间的低频处这一小范围内采用分谐波法生成低频相位屏,即利用多个分谐波的和得到相位屏中间的低频处的相位,相应低频处相位的公式如下。详细代码见ft_phase_screen子函数。

注:分谐波是指频率等于一个周期性振荡基频的整分数的正弦分量。例如,频率等于基频二分之一的波称为二次分谐波,三分之一的波称为三次分谐波等。

Day6 Numerical simulation of optical wave propagation之通过随机介质(如大气湍流)的传播(二)的更多相关文章

  1. Day7 Numerical simulation of optical wave propagation之通过随机介质(如大气湍流)的传播(三)

    三  执行湍流仿真 基本参数设置: 光场条件:波长wvl,源平面的光场U 传播几何结构:观察面孔径尺寸D2,传播距离Dz 湍流条件:大气折射率结构常数Cn2 1. 准备工作 确定传播几何结构 (程序: ...

  2. Day5 Numerical simulation of optical wave propagation之通过随机介质(如大气湍流)的传播(一)

    一 分步光束传播方法 到目前为止,人们已经设计出传播算法,用于模拟通过真空和通过可用光线矩阵描述的简单光学系统的传播. 其中分步光束传播方法除了描述上述传播过程,还有更复杂的应用,包括:部分时间和空间 ...

  3. Day1 Numerical simulation of optical wave propagation之标量衍射理论基本原理(一)

    <Numerical simulation of optical  wave propagation>内容 1. 介绍光波传输的基础理论.离散采样方法.基于MATLAB平台的编码实例以及具 ...

  4. Day4 Numerical simulation of optical wave propagation之数字傅里叶变换

    标量衍射理论是波动光学模拟的物理基础.这一理论基础的结果是将电磁波在真空中的传播作为线性系统进行处理. 对于单色波,系统观察平面的电场矢量是源平面电场矢量和自由空间脉冲响应的卷积. 因此,线性系统理论 ...

  5. Day3 Numerical simulation of optical wave propagation之标量衍射理论基本原理(三)

    3.标量衍射理论 光源通常不是简单地平面.球面或高斯光束波.对于更一般的情况,必须使用更老练的方法来求解标量赫姆霍兹方程,需要利用格林定理并灵活使用边界条件. 基本问题:给定源平面光场U(x1,y1) ...

  6. Day2 Numerical simulation of optical wave propagation之标量衍射理论基本原理(二)

    2.麦克斯韦方程组的简单行波解 讨论通过线性.各向同性.均匀.无色散.无限电荷和电流的电介质材料的光波传输.在这种情况下,介质具有如下属性: (1)推导获得波动方程( 由麦克斯韦方程组导出的.描述电磁 ...

  7. 【转载】PMC/PEC Boundary Conditions and Plane Wave Simulation

    原文链接 PMC/PEC Boundary Conditions and Plane Wave Simulation (FDTD) OptiFDTD now has options to use Pe ...

  8. Visualizing wave interference using FireMonkey(很美)

      Visualizing wave interference using FireMonkey By: Anders Ohlsson Abstract: This article discusses ...

  9. 标签传播算法(Label Propagation Algorithm, LPA)初探

    0. 社区划分简介 0x1:非重叠社区划分方法 在一个网络里面,每一个样本只能是属于一个社区的,那么这样的问题就称为非重叠社区划分. 在非重叠社区划分算法里面,有很多的方法: 1. 基于模块度优化的社 ...

随机推荐

  1. JS闭包作用域解析

    什么是闭包? 简单理解,当在一个函数的外部访问函数内部定义的变量的时候就会形成一个闭包,由这个理解可以知道,当一个函数执行完成的时候,一般情况下,其作用域会被销毁,其内部定义的变量也会变得不可访问,所 ...

  2. c#计算机视觉库openCVSharp

    作为研究计算机视觉的一员,大家肯定对Intel大名鼎鼎的openCV系列计算机视觉库耳熟能详,对于很多人来说openCV甚至已经成为其项目研究不可缺少的一部分.但是,由于项目兼容性的要求.openCV ...

  3. JavaScript_01简介,基本语法,运算符

    JavaScript(不是JScript和scriptease) 1.js分为内部引用和外部引用,无论是内部引用还是外部引用,都可以放在html(除标签内)的任意位置,但是定义的位置会影响执行的顺序 ...

  4. 测试一波SpringBoot的HTTP吞吐量

    本来,其实就我个人而言现在很少去弄性能这一块的阵地了,主要在做设计与架构,不过前几天刚刚关注公众号的罗哥给我抛了关于性能方面的问题. 一个问题立马引起了我的兴趣,太久没弄性能方面的事情了,所以在隔天有 ...

  5. react 函数子组件(Function ad Child Component)

    今天学习了react中的函数子组件的概念,然后在工作中得到了实际应用,很开心,那么好记性不如烂笔头,开始喽~ 函数子组件(FaCC )与高阶组件做的事情很相似, 都是对原来的组件进行了加强,类似装饰者 ...

  6. Html和Css学习笔记-css进阶-盒模型

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 此篇博客是我的复习笔记,html和css学的时间太久了,忘得差不多了,最近要使用一下,所以重新打开html的书略读,后记录了标签 ...

  7. 下载Dynamics 365 Customer Engagement 工具

    微软动态CRM专家罗勇 ,回复312或者20190311可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 从Dynamics ...

  8. Inspection info: Checks Spring Boot application .properties configuration files. Highlights unresolved and deprecated configuration keys and in

    Cannot resolve class or package ‘jdbc’ less… (Ctrl+F1) Inspection info: Checks Spring Boot applicati ...

  9. DVWA 黑客攻防演练(六)不安全的验证码 Insecure CAPTCHA

    之前在 CSRF 攻击 的那篇文章的最后,我觉得可以用验证码提高攻击的难度. 若有验证码的话,就比较难被攻击者利用 XSS 漏洞进行的 CSRF 攻击了,因为要识别验证码起码要调用api,跨域会被浏览 ...

  10. DataSnap 多层返回数据集分析FireDAC JSON

    采用服务器返回数据,一种是返回字符串数据例如JSON,跨平台跨语言,任何语言调用都支持兼容,类似WEBService. 第二种是紧密结合c++builder语言,传输DataSet,可以是Client ...