0
点赞
收藏
分享

微信扫一扫

【数学建模】基于matlab zernike泽尼克多项式仿真【含Matlab源码 1953期】


二、什么是Zernike Polynomials

通常人们会使用幂级数展开式的形式来描述光学系统的像差。由于泽尼克多项式和光学检测中观测到的像差多项式的形式是一致的,因而它常常被用来描述波前特性(泽尼克,1934)。但这并不意味着泽尼克多项式就是用来拟合检测数据的最佳多项式形式。在某些情况下,用泽尼克多项式来描述波前数据具有很大的局限性。比如说,当需要考虑空气扰动的时候,泽尼克多项式几乎没有什么价值。同样地,我们也无法找到一组合适的泽尼克多项式来描述单点金刚石车削加工(single point diamond turning process)中的制造误差。为了准确地描述圆锥面光学元件(conical optical elements)的对准误差,必须对泽尼克多项式进行修正。盲目地使用泽尼克多项式来表达检测数据只会导致糟糕的结果。

泽尼克多项式是由无穷数量的多项式完全集组成的,它有两个变量,ρ和θ,它在单位圆内部是连续正交的。需要注意的是,泽尼克多项式仅在单位圆的内部连续区域是正交的,通常在单位圆内部的离散的坐标上是不具备正交性质的。

泽尼克多项式具有三个和其他正交多项式集不一样的性质。
⒈ 泽尼克多项式Z(ρ, θ)可以被化解为径向坐标ρ和角度坐标θ的函数,其形式如下:

Z (ρ, θ) = R ( ρ ) G ( θ ),
这里,关于角度的函数G(θ)是一个以2π弧度为周期的连续函数,并且满足当坐标系旋转α角度之后,其形式不发生改变,也就是旋转不变性:
G (θ + α ) = G ( θ ) G ( α )
其三角函数集形式如下:
G(θ) = e± i m θ
这里m是任意正整数或0。
⒉ 泽尼克多项式的第二个性质是径向函数R ( ρ ) (Radial Function)必须是ρ的n次多项式,并且不包含幂次低于m次的ρ方项。

⒊ 第三个性质是当m为偶数时R(ρ)也为偶函数,m为奇数时,R(ρ)也为奇函数。

三、部分源代码

clear all
% int k;
syms r; syms sita;tic
k=35;%生成泽尼克多项式的阶数
kj=k+1;
M=256;%采样点数目
N=M;
Zj=zeros(1,kj);j=1;
Zj=sym(Zj);mnj=zeros(1,kj);
Zmnj=zeros(M,N,k);
%计算符号多项式Zj
for n=0:k
for m=0:n
if j>=kj break;end
if mod(n-m,2)==0
Rnm=0;
for s=0:(n-m)/2
fenmu=factorial(s)*factorial((n+m)/2-s)*factorial((n-m)/2-s);
Rnm=Rnm+(-1)^s*r^(n-2*s)*factorial(n-s)/fenmu;
end
if m==0 Zj(1,j)=sqrt(n+1)*Rnm;
mnj(1,j)=n+i*m;
j=j+1;
elseif mod(j,2)==0
Zj(1,j)=sqrt(2*n+2)*Rnm*cos(m*sita);
Zj(1,j+1)=sqrt(2*n+2)*Rnm*sin(m*sita);
mnj(1,j)=n+i*m;
mnj(1,j+1)=n+i*m;
j=j+2;
else
Zj(1,j)=sqrt(2*n+2)*Rnm*sin(m*sita);
Zj(1,j+1)=sqrt(2*n+2)*Rnm*cos(m*sita);
mnj(1,j)=n+i*m;
mnj(1,j+1)=n+i*m;
j=j+2;

四、运行结果

五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]李昕.MATLAB数学建模[M].清华大学出版社.2017
[2]王健,赵国生.MATLAB数学建模与仿真[M].清华大学出版社.2016
[3]余胜威.MATLAB数学建模经典案例实战[M].清华大学出版社.2015

举报

相关推荐

MATLAB——多项式处理

0 条评论