高周波エンジニアのためのAI・機械学習入門(GPU編33) MATLAB OnlineのAntenna Toolboxのパッチアンテナ設計機能を使ってモンテカルロシミュレーションをして、サロゲートモデルのためのデータを作る。MATLAB Copilotにほとんどコードは書いてもらった。
Interface誌でMATLAB Onlineの6か月ライセンスがついていて、あまり使ってなかったのでアンテナの例で実験しよう。
やりたいことはAntenna Toolboxにはdesign関数があってプロトタイプの寸法が自動で入るので、これでモンテカルロシミュレーションをして機械学習のためのデータを作ろう。いわゆるサロゲートモデル(MATLABのライセンスが切れてもPythonで動くような)を作りたい。
コードはMATLAB Copilotで作ってもらって、修正をかける感じ。
コード
monteCarloPatchMicrostrip([6, 12],[2.2 4.4], 10000,'patch_mc.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
%
% 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,7); % f_GHz, epsr, h_mm, W_mm, L_mm, feedX_mm, feedY_mm
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);
% 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];
end
% Write CSV with header
header = {'f_GHz','epsr','h_mm','W_mm','L_mm','feedX_mm','feedY_mm'};
T = array2table(results,'VariableNames',header);
writetable(T, csvFilename);
end
|
できたデータ。
これを使ってDNNでサロゲートモデルを作ろう。
« RF Weekly Digest (Google Antigravity(Gemini 3.5 Flash)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/6/14-6/21 | トップページ | 万博記念公園で太陽の塔とミャクミャクを見る。太陽の塔の内部は予約なしでも当日券があったので入ってみる。腕の部分の中がすごかった。expo'70パビリオンにもミャクミャクがいた。 »
「パソコン・インターネット」カテゴリの記事
- RF Weekly Digest (Codexで作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/12-7/19(2026.07.19)
- 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で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/12-7/19(2026.07.19)
- 高周波・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 Weekly Digest (Codexで作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/7/12-7/19(2026.07.19)
- 高周波・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 Weekly Digest (Google Antigravity(Gemini 3.5 Flash)で作ったOllama経由のgemma4-26B-A4B QAT、DuckDuckGo Searchを使った高周波・RF情報の週刊まとめアプリ)2026/6/14-6/21 | トップページ | 万博記念公園で太陽の塔とミャクミャクを見る。太陽の塔の内部は予約なしでも当日券があったので入ってみる。腕の部分の中がすごかった。expo'70パビリオンにもミャクミャクがいた。 »




コメント