content(app-G): 补全局部可辨识与时间退化解释

复用实切空间投影,说明有限距离模型中的幅相及未知 rate 消元。给出单有效采样和双采样单帧退化,保留 IP 块内斜率与不同帧时刻的恢复条件。

扩展现有 NumPy 确定性检查;SyncTeX 编译通过,无断引用。例子不替代实际配置验收,不增加 MC。
This commit is contained in:
2026-10-07 16:52:57 +08:00
parent 175389b149
commit 936c1d9f62
2 changed files with 129 additions and 1 deletions
+40 -1
View File
@@ -224,7 +224,46 @@ def main():
mixed_jac = np.linalg.lstsq(DESIGN, [ mixed_jac = np.linalg.lstsq(DESIGN, [
mixed_motion(x, t, 1)[9]-mixed_motion(x, t, 0)[9] for t in TIMES], rcond=None)[0] mixed_motion(x, t, 1)[9]-mixed_motion(x, t, 0)[9] for t in TIMES], rcond=None)[0]
check("mixed fixed-design OLS Jacobian", mixed_jac, finite_difference(mixed_coeff, x)) check("mixed fixed-design OLS Jacobian", mixed_jac, finite_difference(mixed_coeff, x))
print("PASS: synthetic local formula checks; code-side geometry and CP/IP acceptance still required.") # Appendix G: independent block phases remove constants, not intra-block slopes.
for nodes, starts, expected_rank in [([0.], [0., 3.], 0),
([0., 2.], [0.], 1),
([0., 2.], [0., 3.], 2),
([0., 2.], [0., 3e-4], 2)]:
blocks, weights, centers = [], [], []
n = np.array(nodes)
for ell in range(2):
f, rate = z[2:]+coefficients(x, ell)[0]
for start in starts:
w = geometry(x, start, ell)[0]
a = np.exp(-2j*np.pi*ARRAY@w/WAVELENGTH)
mu = np.kron(np.exp(2j*np.pi*((f+rate*start)*n+.5*rate*n*n)), a)
J = np.column_stack((1j*np.repeat(n, len(a))*mu,
1j*np.repeat(start*n+.5*n*n, len(a))*mu))
projected = J-mu[:, None]*(mu.conj()@J/(mu.conj()@mu))[None, :]
expected = np.column_stack((
1j*np.repeat(n-n.mean(), len(a))*mu,
1j*np.repeat(start*(n-n.mean())+.5*(n*n-(n*n).mean()), len(a))*mu))
check("IP centered temporal scores", projected, expected)
blocks.append(projected)
weights.append(2*np.linalg.norm(projected[:, 0])**2)
centers.append(start+(n[-1]/2))
J = np.vstack(blocks)
real_J = np.vstack((J.real, J.imag))*np.sqrt(2)
assert np.linalg.matrix_rank(real_J, tol=1e-10) == expected_rank
if len(n) == 2:
weights, centers = np.array(weights), np.array(centers)
I = real_J.T@real_J
vectors = np.column_stack((np.ones(len(centers)), centers))
check("two-sample temporal information", I, vectors.T@(weights[:, None]*vectors))
residual = real_J[:, 0]-real_J[:, 1]*(I[1, 0]/I[1, 1])
check("real rate Schur complement", residual@residual,
I[0, 0]-I[0, 1]**2/I[1, 1])
if expected_rank == 1:
check("single-frame exact frequency/rate cancellation", J@np.array([1., -1.]),
np.zeros(len(J)))
elif starts[-1] < 1e-3:
assert 0 < residual@residual/I[0, 0] < 1e-7
print("PASS: synthetic local formula and temporal-rank checks; code-side geometry and CP/IP acceptance still required.")
if __name__ == "__main__": if __name__ == "__main__":
+89
View File
@@ -467,6 +467,95 @@ Doppler 部分,由 $\nu_\ell=\nu_{\mathrm{ref}}+\Delta\nu_\ell(\mathbf p)$ 与
因此,\appref{sec:multiFrameCrb} 的 CP/IP 幅相结构、非负幅度的集中似然、实参数 \gls{fim} 与 Schur 补、实化投影以及 \eqref{eq:A7_real_rank_condition} 的秩判据继续适用;改变的是均值及两角导数的几何映射。结构化 CP 的同星公共相位不能按每块自由复增益消去。SS/MS 比较须保持参考星、源状态、采样与噪声协议相同;单星参考链路的相对系数恒为零,既有 K/U 正交性在相同窄带与幅相假设下仍成立,多星数值损失须重算。 因此,\appref{sec:multiFrameCrb} 的 CP/IP 幅相结构、非负幅度的集中似然、实参数 \gls{fim} 与 Schur 补、实化投影以及 \eqref{eq:A7_real_rank_condition} 的秩判据继续适用;改变的是均值及两角导数的几何映射。结构化 CP 的同星公共相位不能按每块自由复增益消去。SS/MS 比较须保持参考星、源状态、采样与噪声协议相同;单星参考链路的相对系数恒为零,既有 K/U 正交性在相同窄带与幅相假设下仍成立,多星数值损失须重算。
\paragraph{局部一阶可辨识与时间退化}
在可见交点横截、角坐标非奇异、有效块幅度为正且噪声协方差正定的工作点,令
$\boldsymbol\eta=[\alpha,\beta,\nu_{\mathrm{ref}}]^\Tran$。
将有限距离均值的目标导数和全部幅相、未知参考 rate 导数按
\eqref{eq:A7_realified_jacobians} 白化并实化为 $\mathbf A,\mathbf B$,则
%
\begin{equation}
\label{eq:G_bearing_local_identifiability}
\mathcal I_{\mathrm e}\succ0
\quad\Longleftrightarrow\quad
\operatorname{rank}(\mathcal P_{\mathbf B}^{\perp}\mathbf A)=3
\quad\Longleftrightarrow\quad
\nexists\ \delta\boldsymbol\eta\ne\mathbf0,\ \delta\boldsymbol\psi\in\mathbb R^{\dim\boldsymbol\psi_\mu}:
\mathbf A\delta\boldsymbol\eta=\mathbf B\delta\boldsymbol\psi.
\end{equation}
%
因此,要检验的是消元后三列的实线性独立性,而非原始角导数或阵列流形是否独立。
CP-U 的幅度列、同星共享相位列和实值 rate 列须保持原有约束;
IP-U 可先按逐块复增益投影,再对实值 rate 消元。
此判据只涉及局部一阶均值变化,不排除相位周期造成的远处分支,也不保证有限样本估计器达到界。
具体看 IP 的时间导数。设块内有效采样索引为 $n$,帧起点为 $\tau_p$,
阵列响应在该块冻结,导频已知且不随候选变化。用 $|s_p(n)|^2$ 加权的块内平均记为
$\langle\cdot\rangle_p$,均值的阵元分量记为 $\mu_{\ell,p,m,n}$。
消去逐块自由幅相后,参考频移和参考 rate 的导数分量为
%
\begin{equation}
\label{eq:G_bearing_ip_centered_scores}
\begin{aligned}
{}[\widetilde{\mathbf J}_{\nu}]_{\ell,p,m,n}
&=j\big(n-\langle n\rangle_p\big)\mu_{\ell,p,m,n},\\
[\widetilde{\mathbf J}_{\dot\nu}]_{\ell,p,m,n}
&=j\left[\tau_p\big(n-\langle n\rangle_p\big)
+\frac{1}{2}\big(n^2-\langle n^2\rangle_p\big)\right]\mu_{\ell,p,m,n}.
\end{aligned}
\end{equation}
%
这里采用块内白噪声和 phase-only 模板,逐星有限距离的相对系数及其角导数仍按
\eqref{eq:G_bearing_window_ols} 计算。块相位消去的是常相位项,不是一般的块内频率斜率。
空间阵元之间的相位差也不会被一个块相位全部消去。
一个精确退化例子是每块仅有一个有效时间样本,例如各帧导频只在 $n=0$ 非零。
取任意互异帧时刻、任意固定星集、可见非切向交点和任意阵列,包括能提供两个角信息的平面阵列。
IP-U 逐块相位自由且参考 rate 未知,此时 \eqref{eq:G_bearing_ip_centered_scores} 的两列都为零,
参考频移方向 $\delta\boldsymbol\eta=[0,0,1]^\Tran$ 的有效信息为零。
即使增加星数或帧数也不能在这一采样协议中恢复参考频移信息。
对 CP-U,跨帧相位并非自由,不能照搬这一结论。
另一个例子保留块内时间差:各块只有 $n=0,h$ 两个有效样本,$h>0$,两处导频均非零。
此时 $n^2=hn$,故逐块有
%
\begin{equation}
\label{eq:G_bearing_two_sample_degeneracy}
\widetilde{\mathbf J}_{\dot\nu,\ell,p}
=c_p\widetilde{\mathbf J}_{\nu,\ell,p},
\qquad c_p=\tau_p+\frac{h}{2}.
\end{equation}
%
若只观测 $\tau_0=0$ 的一帧,则 $c_0=h/2\ne0$。
取 $\delta\nu_{\mathrm{ref}}=1$、$\delta\dot\nu_{\mathrm{ref}}=-2/h$,保持两角不变,
两个采样点的时间相位变化均为零。CP-U 和 IP-U 在单帧具有相同的幅相自由度,
因此两者三维目标 \gls{efim} 都秩亏,无论阵列或多星几何是否能提供角信息。
这里可辨识的是该帧中点频移的组合,而不是同时未知 rate 时在帧起点定义的参考频移。
相对频移系数的拟合仍使用预先固定、满列秩的几何节点设计,不将单帧观测误作单节点斜率拟合。
若 IP 的有效帧有不同起点,式~\eqref{eq:G_bearing_two_sample_degeneracy} 的比例也不同。
为单独检验时间机制,暂时固定两角,令
$w_{\ell,p}=\dfrac{2\|\widetilde{\mathbf J}_{\nu,\ell,p}\|_2^2}{\sigma_\ell}>0$,
其中 $\sigma_\ell$ 为该星噪声复方差。消去块幅相后的频移--rate 信息为
%
\begin{equation}
\label{eq:G_bearing_two_sample_temporal_info}
\mathbf I_{\nu,\dot\nu}
=\sum_{\ell,p}w_{\ell,p}
\begin{bmatrix}1&c_p\\c_p&c_p^2\end{bmatrix},
\qquad
I_{\nu,\mathrm e}
=\sum_{\ell,p}w_{\ell,p}
-\frac{\left(\sum_{\ell,p}w_{\ell,p}c_p\right)^2}
{\sum_{\ell,p}w_{\ell,p}c_p^2}.
\end{equation}
%
第二式要求分母非零;若 rate 列为零,直接用实投影判据。
至少两个正权重块的 $c_p$ 不同即可解除这一时间列的精确比例关系,
但两角未知时仍须对完整三列执行 \eqref{eq:G_bearing_local_identifiability},不能据此保证整体满秩。
在固定单位和参数尺度下,帧起点集中在同一个非零 $c_p$ 附近时,参考频移的信息接近零;
这是病态而非必然秩亏。统一增加噪声复方差只缩放信息,不改变精确秩。
阵列基线、逐星视线和相对 Doppler 导数决定剩余角信息,不能只凭星数或帧数判定可辨识。
\paragraph{经纬度误差与完整协方差变换} \paragraph{经纬度误差与完整协方差变换}
对同一已知高度、分支和 $t_0$,令 $\boldsymbol\xi=h(\boldsymbol\vartheta)$。将星到源单位向量记为 $\mathbf e_r=(\mathbf p_0-\mathbf s_r)/r_r=-\mathbf w_r$,有 对同一已知高度、分支和 $t_0$,令 $\boldsymbol\xi=h(\boldsymbol\vartheta)$。将星到源单位向量记为 $\mathbf e_r=(\mathbf p_0-\mathbf s_r)/r_r=-\mathbf w_r$,有
% %