• 締切済み

FDTD

FDTDの勉強に足踏みしています。 宇野先生の「FDTD法による電磁界およびアンテナ解析」を利用して 勉強していますが、 (1)境界条件が理解できない。(数式を展開しているだけ?) (2)実際に、C言語でプログラムを組めない。組み方が分からない? (3)C言語で書かれたプログラムが記載されている本は無いのかな? (4)宇野先生の本はレベルが高すぎる。初心者用の良い本はないかな? その他、FDTD法のプログラムの組み立て方、あるいは、FDTD法の 勉強方法(参考文献など)をご教授ください。 半年程、止まったままです。

  • knzkk
  • お礼率50% (1/2)

みんなの回答

  • ksugahar
  • ベストアンサー率19% (7/36)
回答No.2

フォートランは、f77の機能だけで十分です。 フォートランのテキストは、ネット上を検索したらいくらでも転がっています。FDTDのソースコードもネット上に転がっていますが・・・・

  • ksugahar
  • ベストアンサー率19% (7/36)
回答No.1

FDTDを組むにあたって、大事なことがいろいろあります。 (1)については、現在の計算機リソースであれば、 PMLをしっかり理解してください。 Murはそろそろ時代遅れになるでしょう。 (2)については、フォートランのほうが組みやすい かもしれません。Cにこだわるなら止めません。 MATLABで組むことを一番薦めます。 (3)については、探せばネット上に転がっています。 フォートランであれば、Tavlov先生の本にあると思います。 (4) 宇野先生の本は丁寧です。あれより初心者となると 大学の教養課程をやり直すことを薦めます。 境界条件のないFDTDであれば、半日で組めるはずです。

knzkk
質問者

お礼

ksugahar様; お礼が遅れ、申し訳ありません。 非常に、有益なアドバイスありがとうございました。 そうですね。フォートランで取り組んでみます。 学生の頃、C言語の講義しかありませんでしたので、C言語に 拘ってた感があります。良い機会ですので、フォートランを勉強 してみます。 しかし、フォートランには'77あるいは'90とバージョンが様々あります が、バージョンは何で取り組んだら良いのでしょうか? また、テキストも紹介して頂けると助かります。その他アドバイスを 頂けると嬉しいです。

関連するQ&A

  • FDTDにおける遠方電磁場について

    私は、現在大学の研究において、散乱場の電磁界を調べるプログラムを開発しています。 そこで、遠方界の電磁場解析が必要なのですが、プログラムがうまくできません。宇野先生の「FDTD法による電磁界およびアンテナ解析」という本を参考にしてプログラムを組んでいるのですが以下のような疑問がでてきました。 二次元での解析プログラム(TE、TM)を構築しましたが、本に載っているのは三次元。私のプログラムはΔx、Δyは定義されてるがΔzは定義されてない。宇野先生の参考書では二次元は使えないのでしょうか?特に時間更正の部分が混乱しています。 説明がわかりにくくて申し訳ないのですが、どなたか回答よろしくお願いいたします。

  • FDTDのFarfield解析について

    以前ここでFDTDの遠方解解析について質問しました。 質問内容は2D-FDTDプログラムの中に遠方解解析プログラムをうまく組み込めないということで、答えとして3Dで組んでみてはどうかという回答をいただきました。 そこで3D-FDTDに遠方解プログラムを宇野亨先生の本を参考に組み込もうとしましたが、やはりうまく組めません。 Fortran90でつくっていますが、エラーを見ると宣言に問題があるように思われます。エラーを消そうとしても、どうしても消せないものがあります。なにがいけないのかわかりません。 そこでこの本を読んでプログラムをした方、またはFDTDに詳しい方などどんな意見でもよいので意見をいただきたいと思います。 よろしくお願いします。

  • 光波解析に使うFDTDについて

    私は現在修士1年でFDTDによる光波解析の研究を行っています。 そこで質問なのですが、FDTDは周波数が高いと解が振動する、あるいは位相誤差が大きくなることが問題となっています。 FDTDプログラムを作ってみて解析を行ったところ、光領域では解析解と比べ、やはり大きい誤差が出てしまいました。 そこでNS-FDTD法を用いたほうがよいという文献を発見しました。しかし、詳しい定式化などの本や文献が少なく困っています。 はたしてNS-FDTD法を使用しなくては光学解析はできないのでしょうか?また、NS-FDTD法使用に境界条件なども変える必要があるのでしょうか? どんなことでもよいので、よろしくお願いします。

  • 指向性のCプログラム

    宇野さんの本を見てfortranからC言語に直してプログラムを作成しているのですが、理解することが出来ていないため、作成することができません。誰か、FDTD法のわかる人でC言語で作成したことのある人がいましたら教えてください。

  • fDTD法のプログラム

    今現在、散乱やアンテナ解析で用いられるFDTD法について勉強しているのですが、なかなか実際にFDTD法を用いたプログラムを書くのは困難なので、あるHPに載っているプログラムを参考にとりあえず内容を理解しながらプログラムを同じように書いたのですが、実行結果がたくさん出てきて自分の思っていた出力結果ではなかったので何度も考え直しています。 例として、導波管の解析(3次元)のプログラムをつくりました。内容はHP上に載っている導波管の解析プログラムと同じです。私が実行した場合20列の答えが各列に出てきました。プログラムは様々あるのですが、わかる方がいらっしゃったらご指導お願いいただきたいのですが。よろしくお願いします。 HP :: http://www-antenna.ee.titech.ac.jp/~hira/study/fdtd/fdtd.html

  • FDTDの数値計算について

    光波の伝搬の計算としてFDTD法を用いる事を考え、Scilabを用いた1次元のFDTD法をまず行うことを考えています。想定する状況は左端に光源があり、空気(屈折率1)を伝搬するという単純なものです。 そこでプログラムを以下のようにしました。 各パラメータは波長ramuda=500*10^-9,dz=ramuda/20,dt=dz/c,透磁率と誘電率mu=ep=1としています。 Hy(1:M)=0; Ex(1:M+1)=0; For n=1:N, Ex(1)=sin(n*dt*c/ramuda); Hy=Hy-dt./mu.*diff(Ex)/dz; Ex(2:M)=Ex(2:M)-dt./ep.*diff(Hy)/dz; end 宇野先生や橋本先生、小舘先生などの本を読む限り条件等はこれでよいはずなのですが、全く伝搬するような計算ができませんでした。数値計算自体慣れていないため、足りない部分があるかと思いますが全く見当がつきませんでした。どうか何が足りていない、何が間違っているなどありましたらご指摘いただきけないでしょうか。

  • 遠方界のプログラム

    宇野さん著書の”FDTD法による電磁界およびアンテナ解析”の中で、遠方界を計算するプログラムが載っているのですが、3次元の全平曲面Sに対するプログラムの書き方がわからず困っています。自分なりに一応は書いてみたのですが、コンパイルがなかなかうまくいかず遠方界を求める事ができません。どなたか遠方界の計算について詳しい方がいらっしゃったらプログラムの組み方など教えていただけないでしょうか?よろしくお願いします。

  • FDTD法での複素誘電率取り扱い方

    FDTD法で電子レンジ内の被加熱体の吸収電力を解析をしています。 牧田さんの「マイクロ波解析技術の開発」という論文を参考にしてとりくんでいるのですが、 複素誘電率の取り扱いの方法がわからず足踏みしています。 Fortranでプログラムを書いているのですが、 誘電率を複素数型で宣言して複素誘電率の値を代入してやるだけで良いのでしょうか? また、被加熱体の導電率や透磁率はどのような値となるのでしょうか? どなたかわかる方がいらっしゃたら教えてください。

  • FDTD法における入射について

    現在FDTD法によるフォトニック結晶光波回路の解析を行っているのですが、入射が思うようにいきません。 僕が行っている解析はEz、Hx、Hy成分で構成されるTM波で、入射のさせかたは、解析領域におけるx=0の位置でEz成分のみについて、 Ez(x,y) = sin((y-y0)π/W) * sin(2πft) y0:波の中心 W :波の幅 f :入射波の周波数 として、時間的にも位置的にも正弦波の連続波として入射させています。Hx,Hyについてはなにも行っていません。  この入射の計算は、FDTDの電磁界を計算する前に入れており、入射の計算を行ったあとに電界と磁界をそれぞれ計算するようにしています。 しかしこのままでは発散していまってので、FDTDの電界の計算は入射位置を除いた(入射位置がEz(1,j)とするとEz(2,j)から)位置から行っています。  一応このやり方で導波路に波は伝搬するのですが、入射初期の波頭は減衰してなくなってしまいます。しかも遠くに伝搬するにしたがって波はどんどん減衰していき、定常応答を得るまでにかなりの時間を要します。波の振る舞いについてはこれで正しいのでしょうか?  あと、時間と位置的にガウス波の孤立パルスも入射させてみたのですが、すぐに減衰して広がってしまって最初の振幅を保ったまま伝搬しません。なにかおかしい所があるのでしょうか?それともこれで正しいのでしょうか?FDTDに関する論文や本などには、入射についてあまり詳しく書いてないので確かめようがありません。どなたかアドバイスしてくれれば幸いです。    質問にまとまりがなく、わかりにくくて申し訳ありませんが、なにかちょっとしたことでもかまいませんので、ご回答をよろしくお願いします。

  • FDTD法での屈折率の定義

    FDTD法を用いて平面波を入射させて散乱体の電磁界のモデリングを行いたいと思い、FDTD法を勉強中です。 その際、自由空間(空気中)に置かれた散乱体(氷(水)を扱っています)の性質の定義で誘電率、導電率、透磁率を設定する事はマクスウェルの方程式から理解できるのですが、水は屈折率がありますが、屈折率はいったいどこで定義され計算されるのでしょうか?まだまだ勉強中のためいまいちわかっていません。どなたかわかる方がいらっしゃったら教えて下さい。