采用任意透镜组合的光学系统推导任意透镜组合的分数傅里叶变换的参量选择的表达式并利用 Matlab 软件进行分析计算和模拟仿真。
由于任意透镜组合的光学系统可以看作是一系列透镜的组合,因此我们可以采用矩阵方法来推导分数傅里叶变换的参量选择的表达式。
假设我们有一个由 $n$ 个透镜组成的光学系统,每个透镜的复相位函数为 $e^{i\phi_j}$,传输函数为 $t_j(\theta)$,其中 $\theta$ 表示入射角度。我们将该系统的传输函数表示为一个 $n\times n$ 的矩阵 $T$,其元素为 $T_{ij}=t_j(\theta_i)$,其中 $\theta_i$ 表示从透镜 $i-1$ 到透镜 $i$ 的入射角度。我们假设入射光的频率为 $\omega$,则该系统的分数傅里叶变换为:
$$ \begin{aligned} F(\alpha)&=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}f(x)e^{-i\alpha x}dx\ &=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}\left[\prod_{j=1}^ne^{i\phi_j}\right]e^{i\omega\sum_{j=1}^nx_j\theta_j-i\alpha x}dx\ &=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}\left[\prod_{j=1}^ne^{i\phi_j}\right]\prod_{j=1}^ne^{-i\omega\theta_j x_j}e^{-i\alpha x}dx\ &=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}\left[\prod_{j=1}^ne^{i\phi_j}\right]\prod_{j=1}^n\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}F_j(u)e^{-i\omega\theta_j xu_j}du_je^{-i\alpha x}dx\ &=\frac{1}{\sqrt{2\pi}}\prod_{j=1}^n\int_{-\infty}^{\infty}F_j(u)e^{-i\omega\theta_j u_j}\left[\int_{-\infty}^{\infty}e^{i\phi_j}e^{-i\alpha x}dx\right]du_j\ &=\frac{1}{\sqrt{2\pi}}\prod_{j=1}^n\int_{-\infty}^{\infty}F_j(u)e^{-i\omega\theta_j u_j}\delta(\alpha-\phi_j)d\phi_j\ &=\frac{1}{\sqrt{2\pi}}\prod_{j=1}^nF_j(\omega\theta_j)e^{i\phi_j\alpha} \end{aligned} $$
其中 $F_j(u)$ 表示透镜 $j$ 前的光场分布,$\delta(\alpha-\phi_j)$ 表示 Dirac Delta 函数,$F_j(\omega\theta_j)$ 表示透镜 $j$ 前的光场分布在频率域上的值。
根据上式,我们可以得到分数傅里叶变换的参量选择的表达式:
$$ \theta_j=\frac{1}{\omega}\frac{\partial\phi_j}{\partial\alpha} $$
这个表达式告诉我们,如果我们想要在 $\alpha$ 频率处得到一个明显的峰值,我们需要在透镜组合中选择一个透镜,使得其复相位函数在 $\alpha$ 处有一个明显的变化,而其他透镜的相位函数在 $\alpha$ 处的变化应该尽量小。
为了验证上述理论,我们可以利用 Matlab 软件进行分析计算和模拟仿真。假设我们有一个由两个透镜组成的光学系统,它们的传输函数分别为:
$$ t_1(\theta)=\frac{1}{1+ik_1\theta}\ e^{i\phi_1},\qquad t_2(\theta)=\frac{1}{1+ik_2\theta}\ e^{i\phi_2} $$
其中 $k_1$ 和 $k_2$ 分别是两个透镜的曲率半径,$\phi_1$ 和 $\phi_2$ 分别是它们的复相位函数。我们可以将它们表示为一个 $2\times 2$ 的矩阵 $T$:
$$ T=\begin{pmatrix} \frac{1}{1+ik_1\theta_1}\ e^{i\phi_1} & 0\ 0 & \frac{1}{1+ik_2\theta_2}\ e^{i\phi_2} \end{pmatrix} $$
假设入射光的频率为 $\omega$,则该系统的分数傅里叶变换为:
$$ F(\alpha)=\frac{1}{\sqrt{2\pi}}F_1(\omega\theta_1)F_2(\omega\theta_2)e^{i\phi_1\alpha+i\phi_2\alpha} $$
根据上面的参量选择表达式,我们可以得到:
$$ \begin{aligned} \theta_1&=\frac{1}{\omega}\frac{\partial\phi_1}{\partial\alpha}\ \theta_2&=\frac{1}{\omega}\frac{\partial\phi_2}{\partial\alpha} \end{aligned} $$
因此,我们可以通过调整透镜的复相位函数来选择分数傅里叶变换的参量。例如,我们可以将 $\phi_1$ 设为:
$$ \phi_1=\alpha^2 $$
这样,$\theta_1=\frac{1}{\omega}2\alpha$,$\theta_2=0$。因此,我们可以选择 $\alpha=2\pi\omega$,使得 $\theta_1=2\pi$,从而得到一个明显的峰值。
下面是 Matlab 代码的示例:
% 生成两个透镜的传输函数
k1 = 1; phi1 = 0; % 第一个透镜的曲率半径和复相位函数
k2 = 2; phi2 = 0; % 第二个透镜的曲率半径和复相位函数
t1 = @(theta) 1./(1 + 1i*k1*theta).*exp(1i*phi1); % 第一个透镜的传输函数
t2 = @(theta) 1./(1 + 1i*k2*theta).*exp(1i*phi2); % 第二个透镜的传输函数
% 计算分数傅里叶变换
N = 1000; % 采样点数
x = linspace(-10, 10, N);
f = exp(-x.^2); % 入射光场
omega = 1; % 频率
theta1 = 2*pi/omega; % 参量选择
theta2 = 0;
F1 = fftshift(fft(f.*t1(omega*theta1*x))); % 第一个透镜前的光场频谱
F2 = fftshift(fft(f.*t1(omega*theta1*x).*t2(omega*theta2*x))); % 第二个透镜前的光场频谱
alpha = 2*pi*omega; % 参量选择
F = F1.*F2.*exp(1i*alpha^2); % 分数傅里叶变换
% 绘制图像
figure;
subplot(2, 1, 1);
plot(x, abs(f));
xlabel('x');
ylabel('|f(x)|');
title('入射光场');
subplot(2, 1, 2);
plot(x, abs(F));
xlabel('\alpha');
ylabel('|F(\alpha)|');
title('分数傅里叶变换');
上面的代码会生成一个入射光场和分数傅里叶变换的图像,其中分数傅里叶变换的峰值出现在 $\alpha=2\pi\omega$ 处。我们可以通过调整透镜的复相位函数来选择不同的参量,从而得到不同的分数傅里叶变换结果
原文地址: https://www.cveoy.top/t/topic/feNN 著作权归作者所有。请勿转载和采集!