design op• 데이터 종류: 없음 → table(인자만으로 정해지는 연산자 —— 이미지나 데이터 입력을 받지 않습니다)
• 호출: import rangedoppler; rangedoppler.fmcw_design(n_samples=64, n_chirps=32, sample_rate_hz=10000000.0, slope_hz_per_s=20000000000000.0, chirp_period_s=5e-05, wavelength_m=0.0038934, n_antennas=1, element_spacing_m=None)(또는 opsrangedoppler.get("fmcw_design"))
FMCW 설정의 빈 폭·분해능·에일리어싱 한계.
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
The paper answer to "will this waveform see what I care about?", with no data
and no simulation — the stance :mod:visiondesign takes for optics. Every
number is closed form:
============================== ============================================
quantity formula
============================== ============================================
swept bandwidth `B = S * N_s / f_s`
range bin / resolution `dR = c / (2B) = c*f_s / (2*S*N_s)`
max unambiguous range `R_max = c*f_s / (2S) (= N_s * dR`)
beat frequency per metre `2S/c`
velocity bin / resolution `dv = lambda / (2*N_c*T_c)`
max unambiguous velocity `v_max = lambda / (4*T_c) (= N_c*dv/2`)
Doppler phase per (m/s) `4*pi*T_c / lambda` rad per chirp
coherent processing interval `N_c * T_c`
max unambiguous angle `asin(lambda / (2d))`
angular resolution (boresight) `0.886 * lambda / (N_a * d)`
============================== ============================================
The two "max" figures are hard aliasing limits, and they are the same
numbers :func:fmcw_beat_simulate refuses to cross. The angular resolution
is the 3 dB beamwidth of a uniform linear array at boresight (Van Trees 2002,
§2.4); it widens as `1/cos(theta)` off boresight, which this does not report
because it is a function, not a number.
`cube_elements and cube_mebibytes` are included because "small input,
huge allocation" is the failure mode of this family: the cube grows as
`N_a * N_c * N_s` and complex128 is 16 bytes a sample.
Returns a `dict. Raises ValueError` on a non-positive or non-finite
parameter, a wavelength over :data:MAX_WAVELENGTH_M, or a count outside its
cap.
>>> d = fmcw_design()
>>> round(d["range_bin_m"], 6), round(d["max_unambiguous_velocity_ms"], 6)
(1.171064, 19.467)
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• fmcw_range_doppler — py -3.11 examples/fmcw_range_doppler.py
table 를 입력으로 받는 것)—
design)—
*Provenance: rangedoppler.py — RANGEDOPPLER 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.