周波数モデリングに関していろいろ

最近、分布常数の世界では、モデリングするのにSパラメータという周波数領域でエネルギーの伝達関数を記述したファイルを使用することが多いのですが、これがどうにも回路シミュレータと愛想が悪い感じがします。

回路シミュレータで過渡解析を実行する場合、周波数領域の特性を時間特性に変換するのに、逆フーリエ変換や、有理数フィッティングを行う必要があって、このときに、どうしても周波数領域の特性を回路シミュレータが補間するときに矛盾が生じてしまって、解析途中で発散したり、思ったようなノイズピークが出なかったりします。これを防ぐためには、十分なデータ点数のSパラメータを用意するしかないのですが、ポート数が多い場合などいかにも非効率。回路シミュレータ側はがんばってないところを補間してくれるものの、限界に近づいている感じ。そもそも、元のDUTの特性を回路シミュレータはわからないわけだから、しょうがないと思う。

ということで、ちゃんとしたSパラメータを出すのは、回路シミュレータの仕事ではなくて、電磁界解析ツールの方に思えてしまう。そもそも、何で周波数ステップをユーザがわざわざ指定しないとダメなんだろう。電磁界ソルバの方は、解析途中のデータを保持しているはずなので、前の解析点と現時点での解析点がどの程度乖離しているか、と言うのが計算できるはず。と言うことは、回路シミュレータのLocal Truncation Errorのようなアルゴリズムを使用して、可変ステップで解析点を取る、と言うことはできないだろうか? こうすると、特性の変動が激しいところは、細かい周波数ステップになって、無理な補間誤差が起きないと思うのだが。特許にならないかな?