このプログラムは、琉球大学工学部電子情報工学科 尾知 博 先生の著書、
ディジタル・フィルタ設計入門,CQ出版(1990). ¥2,500.-
に掲載された、digfilをC言語で書き直し、X windowのGUIを付けたものです。
Turbo Pascal -> C言語の変換は、gnuのp2cを使い、その後手作業で修正を加えました。関数、変数等は大幅に変えたものもありますが、digtal filter設計アルゴリズムは、変更していません。
開梱後、./xdigfilに移動して
xmkmf
make Makefiles
make depend # Sourceを改造しないなら省略
make
make install
で、xdigfilが出来るはずです。
詳細は、先に揚げた文献を参照していただくとして、xdigfil特有の操作のみを簡単に説明します。
上記の各項目をそれぞれ択一します。
スケーリングはL2ノルム法により、白色ガウス性信号入力に対し、99.7%の確率で、各加算点が、絶対値1を超えないように、スケーリングします。
数値を入力します。
fa1 < fa2, fc1 < fc2 で、通過域にたいし、合理的な数値のみ許されます。
グラフの標題や、ファイル名に使用されます。
以上を設定し、出力項目を下記から選びます。
そして、これをグラフに表示(xgraph)または、ファイル(file)に保存します。ファイル名は、フィルター名に次のサフィックスを付けたものです。
但し、sufixは、必要に応じ command line optionまたは、application resourceで、変更できます。
item option resource default
spec -ssuf Ssuf dgf
gain -gsuf Gsuf frq
group -dsuf Dsuf dly
xgraphは、必要に応じ環境が許す限り何枚でも開けますので、パラメータを変化させつつ、所望の特性が得られるまで、リトライできます。
xgraphの機能を使いズーミングやハードコピーを取ることが出来ます。ただ、残念なことにxgraphは、X11 distributionには含まれませんので、実装されていないマシンもあります。
comp.sources.xに流れたものが、いくつかのftp siteにあるので、実装することをお勧めしますが、次善の策として、
graph + plot + tek mode xtermを使う方法と、gnuplotを使う方法があります。
./graphの下にあるdf_graph.script, df_gplt.cはそのためのフィルターです。make installしたあとでは、$(BINDIR)/df_graph, $(BINDIR)/df_gpltに実装されます。
またこの目的のために、起動すべきグラフ表示プログラムを、option, resourceで変更できます。
option: -graph, resource: Graph
実際の応用では、次のようになります。
xdigfil -graph df_graph # graph + plot + tek mode xterm
xdigfil -graph df_gplt # gnuplot
./toolにあるプログラムは、xdigfilの結果を利用するサンプルです。
インストールはされませんので、./toolに移動してmakeしてください。
詳細は、./tool/README.jに書いてあります。
このプログラムは、GPL (GNU General Public License)と同一の条件で、自由にコピー・改造できます。
また、このプログラムは、全く無補償で提供されます。
運用は運用者本人の責任で行ってください。
GPLの詳細については
Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
にお問い合わせください。
動作の確認は、次の環境で行いました。
Sony NWS-841 NewsOS4.1C (X11R4)
Sun IPC SunOS 4.1.2 + JLE 1.1.2 + X11R5
Sun IPC SunOS 4.1.1 + (JLE 1.1.2|JLE 1.1.1) + X11R5
Sun IPX SunOS 4.1.1 + X11R5
Sun SS2 SunOS 4.1.1 + JLE 1.1.1 Rev.B + X11R5
Sun SS 20 SunOS 4.1.4-JLE1.1.4 + X11R6
PC/AT互換機 Linux (RHL4.2) + X11R6
PC/AT互換機 Linux (RHL9) + X11R6 (New !)
#但し、X11 athena widget sample programが正常にcompile出来る状態に調整後
bug情報、huck情報は、歓迎します。宛にお知らせください。
最後になりましたが、xdigfilのリリースにあたり、多くの方に協力していただきました。
ほとんど私が勝手にでっち上げてしまったxdigfil MLの皆さんに感謝します。
原作者の琉球大学工学部電子情報工学科 尾知 博 先生は、ご留学先のミシガン州立大よりリリースを快諾していただきました。
実際にdigfilをプログラミングされた卒研生の皆さんにもお礼申し上げます。
このリリースパッケージは、東工大 像情報工学研究施設 安居院研の永江 孝規さん(nagae@an.isl.titech.ac.jp)にしつこくチェックしていただきながら、作成しました。
著書出版準備でご多忙中ありがとうございました。
# 以上記したアドレス等は、1992年11月24日に初期バージョンを、
# 公開した当時のものですので、その後変更されたものが含まれます。
更に公開から数年を経過し、全くメンテナンスしていない状態になっていましたが、1998年12月、富士通の桜井 厚さん(sakurai@ed.fujitsu.co.jp)より、IIRのスケーリングを、XDigfil本体に取り込む、Gnuplot用のGUI、他、いろいろ残っていたbugfixをする、Patchを送っていただきました。今回再公開に至ったのは、このパッチのおかげです。
xdigfil.tgzをdownloadし展開後、readme.jを読んでください。
ほかに、RedHat Linux9用のrpm, srpmを用意しました。
Copyleft