高周波エンジニアのためのAI・機械学習入門(GPU編35) MATLAB OnlineのAntenna Toolboxのパッチアンテナのアンテナ利得(ゲイン)計算機能を使ってモンテカルロシミュレーションをして、サロゲートモデルのためのデータを作る。
前回は周波数と比誘電率を与えて基板厚み、パッチサイズ(W,L)、フィード位置を推定してみた。
今回はMATLABのAntenna Toolboxのゲインを計算する機能を使って、周波数、比誘電率、基板厚み、パッチサイズ(W,L)、フィード位置を与えるとアンテナ利得(ゲイン)が出てくるサロゲートモデルを作ってみよう。
今回は学習データをモンテカルロシミュレーションで作る。
コードはこちら。これもMATLAB Copilotに聞きながら作った。
monteCarloPatchMicrostrip([6, 12],[2.2 4.4], 3000,'patch_mc_gain3000.csv')
function monteCarloPatchMicrostrip(freqRangeGHz, epsrRange, N, csvFilename)
% monteCarloPatchMicrostrip Generate Monte Carlo dataset of patchMicrostrip designs
% monteCarloPatchMicrostrip(freqRangeGHz, epsrRange, N, csvFilename)
%
% Inputs:
% freqRangeGHz - [f_min f_max] in GHz (e.g. [2.4 2.5])
% epsrRange - [epsr_min epsr_max] (relative permittivity)
% N - number of Monte Carlo samples (positive integer)
% csvFilename - output CSV filename (string)
%
% Output:
% Writes a CSV file with columns:
% f_GHz, epsr, h_mm, W_mm, L_mm, feedX_mm, feedY_mm, gain
%
% Notes:
% - Requires Antenna Toolbox (patchMicrostrip and design).
% - Frequency is converted to appropriate units internally.
% - The design uses the 'patchMicrostrip' element and the builtin 'design'
% function to obtain h, W and L for the given resonant frequency.
%
% Example:
% monteCarloPatchMicrostrip([2.4 2.5],[2.2 2.3],100,'patch_mc.csv')
arguments
freqRangeGHz (1,2) double {mustBeFinite, mustBeNonnegative}
epsrRange (1,2) double {mustBeFinite, mustBePositive}
N (1,1) double {mustBeInteger, mustBePositive}
csvFilename (1,:) char
end
% Preallocate results
results = nan(N,8); % f_GHz, epsr, h_mm, W_mm, L_mm, feedX_mm, feedY_mm, Gain
az = 0:5:355;
el = -90:5:90;
rng('shuffle');
for k = 1:N
% Random sampling (uniform)
fGHz = rand*(freqRangeGHz(2)-freqRangeGHz(1)) + freqRangeGHz(1);
epsr = rand*(epsrRange(2)-epsrRange(1)) + epsrRange(1);
% Convert units
fHz = fGHz*1e9;
% Create dielectric substrate
substrate = dielectric('Name','mcSubstrate','EpsilonR',epsr);
% Create patchMicrostrip with placeholder W,L; feedOffset set later
pm = patchMicrostrip('Substrate',substrate);
% Use design to compute patch geometry for the desired resonant frequency
% design returns tuned element; use copy to extract h,W,L
pmDesigned = design(pm, fHz);
GdBi = pattern(pmDesigned, fHz, az, el);
[maxdBi, idx] = max(GdBi(:));
% Extract dimensions (meters)
W_m = pmDesigned.Width;
L_m = pmDesigned.Length;
h_m = pmDesigned.Height;
feedX_m = pmDesigned.FeedOffset(1);
feedY_m = pmDesigned.FeedOffset(2);
% Patch center is at x=0, y=0 in patchMicrostrip.
% Convert to mm for output.
W_mm = W_m*1e3;
L_mm = L_m*1e3;
h_mm = h_m*1e3;
feedX_mm = feedX_m*1e3;
feedY_mm = feedY_m*1e3;
results(k,:) = [fGHz, epsr, h_mm, W_mm, L_mm, feedX_mm, feedY_mm, maxdBi];
end
% Write CSV with header
header = {'f_GHz','epsr','h_mm','W_mm','L_mm','feedX_mm','feedY_mm','Gain_dBi'};
T = array2table(results,'VariableNames',header);
writetable(T, csvFilename);
end
|
前回よりは計算時間がかかるのでデータ数は3000個にしてみた。こんな感じでデータができる。
次回はこれをDNNを使って推定しよう。
« RF Weekly Digest (Codex(GPT-5.5)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/6/21-6/28 | トップページ | 高周波・RFニュース 2026年6月30日 Pythonの高周波ライブラリscikit-rfがv2.0.0に・遅延ロードで高速化、InfineonがUWBチップを発表、GSMAが通信業界向けOpen Telco AIに向けコーパス発表、3GPP Rel.20 5G-Advanced解説など »
「パソコン・インターネット」カテゴリの記事
- RF Weekly Digest (Codex(GPT-5.5)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/5-7/12(2026.07.12)
- Grok 4.5(Grok Build)でPythonのscikit-rfを使ってTouchstoneフォーマットのSパラメータファイルを読んでdB, 位相, スミスチャート, TDRを表示するGUIアプリを作成。エラーもなく一発で動くものができた。ただFreeだと1日のリミットが結構厳しめ。(2026.07.13)
- RF Weekly Digest (Codex(GPT-5.5)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/6/28-7/5(2026.07.05)
「学問・資格」カテゴリの記事
- 高周波・RFニュース 2026年7月16日 Microwave JournalでCadenceのRF設計向けAI紹介、Samtecが30°傾いた1.85mmコネクタ発表、Mini-CircuitsのMMICアッテネータ紹介、SEMCOがAI向けMLCC発表など(2026.07.16)
- 高周波・RFニュース 2026年7月15日 IEEE Microwave Magazineで自分のコードを高周波シミュレータに組み込む等、DeepSigがAIベースのRF検出OminiSIG 4.0発表、BroadcomのWi-Fi 8 SoC解説、GSMAがモバイルネットゼロレポート発行など(2026.07.15)
- 高周波・RFニュース 2026年7月14日 KeysightとRCRTechが6Gウェビナー開催、Copper Mountain Technologiesの新低価格4ポートVNA、フジクラの5G Sub6GHz向け漏洩同軸ケーブル、TDKのパワー半導体向けMLCCアプリケーションガイドなど(2026.07.14)
「日記・コラム・つぶやき」カテゴリの記事
- 高周波・RFニュース 2026年7月16日 Microwave JournalでCadenceのRF設計向けAI紹介、Samtecが30°傾いた1.85mmコネクタ発表、Mini-CircuitsのMMICアッテネータ紹介、SEMCOがAI向けMLCC発表など(2026.07.16)
- 高周波・RFニュース 2026年7月15日 IEEE Microwave Magazineで自分のコードを高周波シミュレータに組み込む等、DeepSigがAIベースのRF検出OminiSIG 4.0発表、BroadcomのWi-Fi 8 SoC解説、GSMAがモバイルネットゼロレポート発行など(2026.07.15)
- 高周波・RFニュース 2026年7月14日 KeysightとRCRTechが6Gウェビナー開催、Copper Mountain Technologiesの新低価格4ポートVNA、フジクラの5G Sub6GHz向け漏洩同軸ケーブル、TDKのパワー半導体向けMLCCアプリケーションガイドなど(2026.07.14)
« RF Weekly Digest (Codex(GPT-5.5)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/6/21-6/28 | トップページ | 高周波・RFニュース 2026年6月30日 Pythonの高周波ライブラリscikit-rfがv2.0.0に・遅延ロードで高速化、InfineonがUWBチップを発表、GSMAが通信業界向けOpen Telco AIに向けコーパス発表、3GPP Rel.20 5G-Advanced解説など »




コメント