静态反射透射系数矩阵详细表达式

[1]:
import numpy as np
np.set_printoptions(linewidth=200)

import sympy as sp
from sympy.printing.latex import latex
from IPython.display import display, Math
[2]:
# 定义基本变量
k, d = sp.symbols(r'k d')
mu1, Delta1 = sp.symbols(r'\mu_1 \Delta_1')
mu2, Delta2 = sp.symbols(r'\mu_2 \Delta_2')
[3]:
# 根据 Q 矩阵的定义: Q(z2-, z2+) = D1(z2-)^(-1) * D2(z2+)
# 因此在 D1(z2-) 中, (z-zj) 项即为该层厚度
# 而在 D2(z2+) 中,(z-zj)项为 0
Ds1 = sp.Matrix([
    [1,         -(1 + 2*k*Delta1*d),            1,            -(1 - 2*k*Delta1*d)],
    [1,          (1 - 2*k*Delta1*d),           -1,            -(1 + 2*k*Delta1*d)],
    [2*mu1*k,     2*mu1*Delta1*k*(1 - 2*k*d),   2*mu1*k,      2*mu1*Delta1*k*(1 + 2*k*d)],
    [2*mu1*k,    -2*mu1*Delta1*k*(1 + 2*k*d),  -2*mu1*k,      2*mu1*Delta1*k*(1 - 2*k*d)],
])

z = 0
Ds2 = sp.Matrix([
    [1,         -(1 + 2*k*Delta2*z),            1,            -(1 - 2*k*Delta2*z)],
    [1,          (1 - 2*k*Delta2*z),           -1,            -(1 + 2*k*Delta2*z)],
    [2*mu2*k,     2*mu2*Delta2*k*(1 - 2*k*z),   2*mu2*k,      2*mu2*Delta2*k*(1 + 2*k*z)],
    [2*mu2*k,    -2*mu2*Delta2*k*(1 + 2*k*z),  -2*mu2*k,      2*mu2*Delta2*k*(1 - 2*k*z)],
])

Q = sp.expand(Ds1.inv() * Ds2)
Q
[3]:
$\displaystyle \left[\begin{matrix}\frac{2 \Delta_{1}}{2 \Delta_{1} + 2} + \frac{4 \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} & \frac{8 \Delta_{1} \Delta_{2} \mu_{2} d k^{2}}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} + \frac{4 \Delta_{1} d k}{2 \Delta_{1} + 2} & \frac{8 \Delta_{1} \mu_{2} d k^{2}}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} - \frac{4 \Delta_{1} d k}{2 \Delta_{1} + 2} & - \frac{2 \Delta_{1}}{2 \Delta_{1} + 2} + \frac{4 \Delta_{2} \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k}\\0 & \frac{4 \Delta_{2} \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} + \frac{2}{2 \Delta_{1} + 2} & \frac{4 \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} - \frac{2}{2 \Delta_{1} + 2} & 0\\- \frac{8 \Delta_{1} \mu_{2} d k^{2}}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} + \frac{4 \Delta_{1} d k}{2 \Delta_{1} + 2} & - \frac{2 \Delta_{1}}{2 \Delta_{1} + 2} + \frac{4 \Delta_{2} \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} & \frac{2 \Delta_{1}}{2 \Delta_{1} + 2} + \frac{4 \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} & - \frac{8 \Delta_{1} \Delta_{2} \mu_{2} d k^{2}}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} - \frac{4 \Delta_{1} d k}{2 \Delta_{1} + 2}\\\frac{4 \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} - \frac{2}{2 \Delta_{1} + 2} & 0 & 0 & \frac{4 \Delta_{2} \mu_{2} k}{4 \Delta_{1} \mu_{1} k + 4 \mu_{1} k} + \frac{2}{2 \Delta_{1} + 2}\end{matrix}\right]$
[4]:
Q11 = Q[:2, :2]
Q12 = Q[:2, 2:]
Q21 = Q[2:, :2]
Q22 = Q[2:, 2:]

TD = Q22**(-1)
RD = Q12*TD
RU = -TD*Q21
TU = Q11 - Q12*TD*Q21

TD = sp.together(TD).simplify()
RD = sp.together(RD).simplify()
RU = sp.together(RU).simplify()
TU = sp.together(TU).simplify()

display(Math(latex(RD)))
display(Math(latex(RU)))
display(Math(latex(TD)))
display(Math(latex(TU)))
$\displaystyle \left[\begin{matrix}\frac{2 \Delta_{1} d k \left(- \mu_{1} + \mu_{2}\right)}{\Delta_{1} \mu_{1} + \mu_{2}} & \frac{- 4 \Delta_{1}^{2} d^{2} k^{2} \left(\mu_{1} - \mu_{2}\right) \left(\Delta_{2} \mu_{2} + \mu_{1}\right) - \left(\Delta_{1} \mu_{1} + \mu_{2}\right) \left(\Delta_{1} \mu_{1} - \Delta_{2} \mu_{2}\right)}{\left(\Delta_{1} \mu_{1} + \mu_{2}\right) \left(\Delta_{2} \mu_{2} + \mu_{1}\right)}\\\frac{- \mu_{1} + \mu_{2}}{\Delta_{1} \mu_{1} + \mu_{2}} & \frac{2 \Delta_{1} d k \left(- \mu_{1} + \mu_{2}\right)}{\Delta_{1} \mu_{1} + \mu_{2}}\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}0 & \frac{\Delta_{1} \mu_{1} - \Delta_{2} \mu_{2}}{\Delta_{1} \mu_{1} + \mu_{2}}\\\frac{\mu_{1} - \mu_{2}}{\Delta_{2} \mu_{2} + \mu_{1}} & 0\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}\frac{\mu_{1} \left(\Delta_{1} + 1\right)}{\Delta_{1} \mu_{1} + \mu_{2}} & \frac{2 \Delta_{1} \mu_{1} d k \left(\Delta_{1} + 1\right)}{\Delta_{1} \mu_{1} + \mu_{2}}\\0 & \frac{\mu_{1} \left(\Delta_{1} + 1\right)}{\Delta_{2} \mu_{2} + \mu_{1}}\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}\frac{\mu_{2} \left(\Delta_{2} + 1\right)}{\Delta_{2} \mu_{2} + \mu_{1}} & \frac{2 \Delta_{1} \mu_{2} d k \left(\Delta_{2} + 1\right)}{\Delta_{1} \mu_{1} + \mu_{2}}\\0 & \frac{\mu_{2} \left(\Delta_{2} + 1\right)}{\Delta_{1} \mu_{1} + \mu_{2}}\end{matrix}\right]$
[5]:
Ts1 = sp.Matrix([
    [1,          1],
    [mu1*k,   -mu1*k]
])

Ts2 = sp.Matrix([
    [1,          1],
    [mu2*k,   -mu2*k]
])

Q = sp.expand(Ts1.inv() * Ts2)
Q
[5]:
$\displaystyle \left[\begin{matrix}\frac{1}{2} + \frac{\mu_{2}}{2 \mu_{1}} & \frac{1}{2} - \frac{\mu_{2}}{2 \mu_{1}}\\\frac{1}{2} - \frac{\mu_{2}}{2 \mu_{1}} & \frac{1}{2} + \frac{\mu_{2}}{2 \mu_{1}}\end{matrix}\right]$
[6]:
Q11 = Q[:1, :1]
Q12 = Q[:1, 1:]
Q21 = Q[1:, :1]
Q22 = Q[1:, 1:]

TD = Q22**(-1)
RD = Q12*TD
RU = -TD*Q21
TU = Q11 - Q12*TD*Q21

TD = sp.together(TD).simplify()
RD = sp.together(RD).simplify()
RU = sp.together(RU).simplify()
TU = sp.together(TU).simplify()

display(Math(latex(RD)))
display(Math(latex(RU)))
display(Math(latex(TD)))
display(Math(latex(TU)))
$\displaystyle \left[\begin{matrix}\frac{\mu_{1} - \mu_{2}}{\mu_{1} + \mu_{2}}\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}\frac{- \mu_{1} + \mu_{2}}{\mu_{1} + \mu_{2}}\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}\frac{2 \mu_{1}}{\mu_{1} + \mu_{2}}\end{matrix}\right]$
$\displaystyle \left[\begin{matrix}\frac{2 \mu_{2}}{\mu_{1} + \mu_{2}}\end{matrix}\right]$