function TxOut = radiate_antenna(Target, TxPatternArray) % 입력: 타겟 정보, TX 패턴 배열 % 출력: TxOut.G_tx_amp (타겟별, TX별 송신 안테나 선형 진폭 이득 [NumTargets x NumTx]) NumTx = length(TxPatternArray); NumTargets = Target.NumTargets; TxOut.G_tx_amp = zeros(NumTargets, NumTx); for k = 1:NumTargets for tx = 1:NumTx pat = TxPatternArray(tx); % 타겟 방향의 이득 계산 if strcmpi(pat.Type, '2D') g_dBi = interp2(pat.az_angles, pat.el_angles, pat.gain_dBi, Target.az(k), Target.el(k), 'linear', -20); else g_az = interp1(pat.az_angles, pat.gain_az_dBi, Target.az(k), 'linear', -20); g_el = interp1(pat.el_angles, pat.gain_el_dBi, Target.el(k), 'linear', -20); g_dBi = g_az + g_el - pat.max_gain_dBi; end % 전압 진폭 스케일의 선형 이득 저장 (sqrt(10^(G_dBi/10))) TxOut.G_tx_amp(k, tx) = sqrt(10^(g_dBi/10)); end end end