ryujimiyaの日記

C#を使って数値解析したい

周波数領域周期構造伝達問題用FEMのTMモードの算出方法修正

2013年2月~2013年3月にかけてTMモードフォトニック結晶導波路(三角形格子のもの)の伝達問題を計算しましたが、境界条件で使用するdHz/dxの算出方法があまり良くないことに気付いたので修正しました。

<共通>

Φ = Hz

pyy =  1 / εr

(dΦ/dx)i, e:要素内の節点におけるdΦ/dxの値

  固有モード計算で節点上のΦ、すなわちΦi を求めた後、

    dΦ/dx(x, y) = Σi (dNi/dx) Φi

  でx , yに境界上の節点の座標を代入して求める。

<前>

節点iについて、

 fi = Σe pyy (dΦ/dx)ie Ae

 gi = Σe(1/pyy)Ae

 ai = Σe Ae

 Ae:要素の面積

 Σe:要素について加算

を計算し、最終的に

 pyyi = 1 / (gi / ai)

 (dΦ/dx)i = (fi/ai) / pyyi

と求めていました。

pyy(Φ/dx)は - Eyに相当しますが、この値は境界上に誘電体媒質があるとき連続ではありません。したがって、この計算ではまずいと思います。

<後>

dΦ/dxは -εrEyなので-Dyに相当します。Dyは境界上に誘電体媒質があっても連続なので単純に平均を取ることができます。

節点iについて、

 fi = Σe (dΦ/dx)ie Ae

 ai = Σe Ae

を計算し、最終的に

 (dΦ/dx) i = fi / ai

を求めるようにしました。

 

計算結果

2013-02から2013-3で計算した回路を再計算しました。

 2月 記事一覧 - ryujimiyaの日記

 3月 記事一覧 - ryujimiyaの日記

結果はほとんどのケースであまり影響はありませんでした。これはフォトニック結晶導波路のモードが欠陥部に集中するような境界面を伝達問題のポート境界に設定している場合が多かったからだと思われます。

一番影響があったのは、CROW(結合共振器光導波路)です。

三角形格子フォトニック結晶導波路のΓM方向の欠陥(結合共振器導波路 coupled resonator optical waveguide) - ryujimiyaの日記

で、境界面の取り方により直線導波路でも反射が発生すると記述しましたが、再計算の結果、この反射はなくなりました。

 

DelFEM4Netのサンプルも修正できたらリリースしたいと思います。

【追記】リリースしました。

delfem4net - DelFEM wrapper for C# (.net framework) applications - Google Project Hosting