« なか卯でチーズうまトマ親子丼(大盛、はいから小うどん付き)を食す。トマトとバジルソースがよく合う。チーズと親子丼は合うのか?というのがありますがトマト経由だととてもいい感じに。 | トップページ | 餃子の王将で2月限定の野菜たっぷり五目あんかけタンメンをいただく。生姜が効いてて温まる。 »

2022年2月24日 (木)

ExcelでLAMBDA関数が使えるようになった(10) Sパラメータのような複素数データの実部・虚部のRIとデシベル、位相のdBを2列を選択するだけで dB2RI(範囲), RI2dB(範囲)でLAMBDA, MAKEARRAY,LETを使って相互に計算できるようにする。

さて今回はちょっとだけ実用的なものを。

TouchstoneファイルのSパラメータデータは、ヘッダにRIと書くと複素数で実部・虚部が、dBと書くとデシベル、度単位の位相が入っている。

相互に変換するのに毎回セルに式を入れるのがめんどくさい、、、ということでLAMBDAを使って2列選ぶだけで相互に変換できるようにした。

エディタではこんな感じ。

Db2ri

使い方はこれを数式→名前の定義で登録をして、

dB2RI =  LAMBDA(s, 
           LET(n, ROWS(s), 
                MAKEARRAY(n,2
                  LAMBDA(a,b,
                     LET(dB,     INDEX(s,a,1), 
                         Ph_deg, INDEX(s,a,2), 
                         Mag, 10^(dB/20), 
                         Phase, Ph_deg*PI()/180,
                         IF(MOD(b,2)=1,
                               Mag*COS(Phase),
                               Mag*SIN(Phase)
                            )
                        )
                    )
                )
            )
        );

RI2dB =  LAMBDA(s, 
           LET(n, ROWS(s), 
                MAKEARRAY(n,2
                  LAMBDA(a,b,
                     LET(x, INDEX(s,a,1), 
                         y, INDEX(s,a,2), 
                         dB, 10*log10(x^2+y^2), 
                         Phase, atan2(x,y)*180/pi(),
                         IF(MOD(b,2)=1,
                               dB,
                               Phase
                            )
                        )
                    )
                )
            )
        );

 

dB2RIは2列を選択するとdBからRIに変換し、

Db2ri2jpg

逆にRI2dBはRIをdBに変換する。

Db2ri3jpg

案外めんどくさいものが簡単にできる。

この手の面倒なやつって色々あるのでLAMBDAで解決してみようか。

続く:

 

過去にやったもの:

ExcelでLAMBDA関数が突然使えるようになった。4段4次のルンゲクッタ法がワークシートだけ(VBA使わずに)で簡単に計算できるようになった。まずはローレンツ方程式を計算してみる。

ExcelでLAMBDA関数が突然使えるようになった(2) 5次のルンゲクッタフェールベルグ法でローレンツ方程式をワークシートだけで(VBA使わずに)計算

ExcelでLAMBDA関数が突然使えるようになった(3) LET、SEQUENCE、IFSと組み合わせてワンライナー(1セル)で数値積分(シンプソンの積分公式)を計算

ExcelでLAMBDA関数が突然使えるようになった(4) LET、SEQUENCE、IFSと組み合わせてクロソイド曲線を計算するオリジナルの関数を作る。セルに=Clothoid_X(A2)とか入れるだけで計算できる。

ExcelでLAMBDA関数が突然使えるようになった(5)なんと再帰まで使える。階乗とフィボナッチ数列で試してみた。

ExcelでLAMBDA関数が使えるようになった(7) 離散フーリエ変換(DFT=Discrete Fourier Transform)(修正版)と逆変換(IDFT)をLAMBDA、LET、SEQUENCE、MAKEARRAY、MAP、複素数関数(IMEXP,IMPRODUCTなど)を組み合わせてVBAも分析ツールもなしに関数として実現する。

ExcelでLAMBDA関数が使えるようになった(8) 4段4次のルンゲクッタ法をLAMBDAだけ(VBAもセルの計算も使わずに)で実現、RK4(t, x, y, z)だけで次の時間ステップが計算できるようにした。例はもちろんローレンツ方程式。


ExcelでLAMBDA関数が使えるようになった(9)リーマン・ゼータ関数ζ(z)をLAMBDA、REDUCE、SEQUENCE、複素数関数を組み合わせて=Zeta(1/2+2i)などで計算できるようにした。

 

« なか卯でチーズうまトマ親子丼(大盛、はいから小うどん付き)を食す。トマトとバジルソースがよく合う。チーズと親子丼は合うのか?というのがありますがトマト経由だととてもいい感じに。 | トップページ | 餃子の王将で2月限定の野菜たっぷり五目あんかけタンメンをいただく。生姜が効いてて温まる。 »

パソコン・インターネット」カテゴリの記事

学問・資格」カテゴリの記事

日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« なか卯でチーズうまトマ親子丼(大盛、はいから小うどん付き)を食す。トマトとバジルソースがよく合う。チーズと親子丼は合うのか?というのがありますがトマト経由だととてもいい感じに。 | トップページ | 餃子の王将で2月限定の野菜たっぷり五目あんかけタンメンをいただく。生姜が効いてて温まる。 »

最近の記事

最近のコメント

2024年12月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
フォト
無料ブログはココログ