docs: the direction grid bounds the longest findable axis; say so in 5.3
The ranking-not-sampling observation was measured on the coplanar-shortlist rescue and is scoped to it now. The angular-resolution bound theta < d_min/(2a) means the shipped 16384-direction grid resolves axes only to roughly 120-150 A, far below the 1200 A the accepted maximum admits, and the failure mode is a plausible sub-cell, not a refusal - the reader raising fft_max_unit_cell alone deserved to know it cannot work. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EFEJG6WBQv8th4UJFNe53N
This commit is contained in:
@@ -544,7 +544,9 @@ Triples of candidate vectors are combined to form candidate bases $(\mathbf{A},\
|
||||
|
||||
A triple whose three vectors are **coplanar** is rejected before refinement. The length and angle filters cannot see it — any flat combination satisfies them — and a cell that flat has a metric determinant small enough for `float` to get its *sign* wrong, after which the guard against a negative argument to the square root places $\mathbf{c}$ in the $\mathbf{a}$-$\mathbf{b}$ plane, the reciprocal volume diverges and the solver reports a not-a-number Jacobian. The test is the volume fraction $|V|/(|\mathbf{a}||\mathbf{b}||\mathbf{c}|)$, which must reach 0.02 — about 1.1° off flat, well below the flattest genuine candidate observed and far above where `float` loses the sign — and it is applied both where triples are produced and at the optimizer's entry points.
|
||||
|
||||
A shortlist **confined to one plane** cannot close a cell at all, and the row it is missing is the plane normal. That is detected from the eigenvalue ratio of the shortlisted directions' scatter matrix, and one further transform is then spent with the same direction count inside a narrow cap about the normal. More directions do not substitute for it: at the exact true direction a very long axis can still rank far below the shortlist cut, so the obstacle is the ranking rather than the sampling, and a denser grid costs several times the device memory for the same answer.
|
||||
A shortlist **confined to one plane** cannot close a cell at all, and the row it is missing is the plane normal. That is detected from the eigenvalue ratio of the shortlisted directions' scatter matrix, and one further transform is then spent with the same direction count inside a narrow cap about the normal. More directions do not substitute for it: at the exact true direction a very long axis can still rank far below the shortlist cut, so for **this** rescue the obstacle is the ranking rather than the sampling, and a denser grid costs several times the device memory for the same answer.
|
||||
|
||||
Sampling has a limit of its own, and it binds well before the 1200 Å the accepted range for `fft_max_unit_cell_A` admits (§5.2). A direction off a real-space axis of length $a$ by an angle $\theta$ smears each projected lattice plane by about $\theta/d_\mathrm{min}$ in the projection, so the planes (spacing $1/a$) stay resolved only while $\theta \lesssim d_\mathrm{min}/(2a)$. The shipped grid of 16384 directions puts the nearest one within about 0.6° of any axis, which satisfies that bound only up to roughly 120–150 Å at typical indexing resolutions; a longer axis is not refused but returned as a plausible sub-cell or harmonic. Raising the maximum cell alone therefore does not extend the reach — the direction grid has to resolve the axis before the histogram can represent it.
|
||||
|
||||
### 5.4 Robust refinement and best-cell selection
|
||||
|
||||
|
||||
Reference in New Issue
Block a user