プログラム / 2007/04/28 (Sat) / 編集 |
さて、今日はデジタル信号処理の課題を片付けようとしたわけだが問題発生
というのも教科書の回答例はMatLabのプログラム、しかしMatLabはシェアウェアなのでSciLabを使うしか無い…… そう!「例題を実行しましょう」とかいわれてもその例題が使えない!!
というわけでせっせとMatLabのコードー>SciLabのコードへの置き換え作戦を推進していたんだが……
というのも教科書の回答例はMatLabのプログラム、しかしMatLabはシェアウェアなのでSciLabを使うしか無い…… そう!「例題を実行しましょう」とかいわれてもその例題が使えない!!
というわけでせっせとMatLabのコードー>SciLabのコードへの置き換え作戦を推進していたんだが……
まずは「pi」、式的に円周率っぽいので「%pi」へ
「a=[0 0 0]」は係数格納用の行列らしい、これは同じ書式でいいんだが代入式が「a(2)=(r-1)*w;」は使えない……SciLabでは要素の位置を指定しないといけないらしいので「a(1,2)=(r-1)*w;」にする
「rand(size(n))」と「cos(2*%pi*1000*n)」はできるのに「cos(2*%pi*1000*n)+rand(size(n))」はできない、ちなみに「cos(2*%pi*1000*n)+rand(n)」はできる、エラーコードは「inconsistent addition」だ、rand(size(n))のこたえは2つしかないんだから当然の結果だな、これまだ未解決
「stem()」は縦線が並ぶ様なグラフを作成する関数っぽい、これは「plot2d3()」で(先端のマーカー以外は)出来る
「axis()」は定義域を指定するものらしい、まだ代用できる関数が見つからず未解決
「ylabel()」と「xlabel()」は「xtitle()」で代用
「filter()」の代わりは捜索中で未解決
しかたないので別の問題から解こうか……
というわけで「X(n)=U(3-n)をプロットせよ」を解こうとする
Unit Step Functionは定義されていないので「deff('y=u(n)','if n<0 then,y=0,else,y=1,end')」と自作、がしかし!1つずつの数字(-1だけとか1だけとか)なら計算できるのにxに-10から10までを代入してu(x)と実行しても答えは1つしかでてこない!20個でてくれないと……
ってことで挫折、だれか助けてくれ〜〜〜 C言語で科学計算なんかしたくないよ〜〜
stemとかどうやって実現するんだよ!gnuplotとの合わせ技でやるのか?linspaceとかはループ使えばどうにかなるかもしれんがfilterは難易度高いだろ!?
明日は清明だよ〜 課題はとりあえず英語にするかぁ 進まない課題をどいやなものはないね……
そういやあれみた?
いや、こちらでテーマを指定するので、三つでもいいです。
同じものが繰り返されるほど、テーマ的には難しくなるね。
今年は、
(1) PostgreSQL のPCクラスタ上のパフォーマンスチューニングトランザクションベンチマーク
(2) XML データベース上の WWW アプリケーション作成
(3) Oracle を用いた WWW CMS の作成
ぐらいがいいと思う。なんで、難しいものをやろうとするかが、 僕は不思議だが...
Kernel なんかが、一番やさしいのにね。
byK氏
講義の時間がちゃんととられてるんならまだしも、ほかの講義や課題の合間を縫って作業しないといけない!今期はマジでやばいんじゃね?
せめて2か3がいい……まだ「おもしろそう」という救いがあるから……
さてと、なのはでも見るかな
なのはのような不屈の心が欲しいです、もしくはヴィクトリカ並みの頭脳とかこなたばりの集中力
「a=[0 0 0]」は係数格納用の行列らしい、これは同じ書式でいいんだが代入式が「a(2)=(r-1)*w;」は使えない……SciLabでは要素の位置を指定しないといけないらしいので「a(1,2)=(r-1)*w;」にする
「rand(size(n))」と「cos(2*%pi*1000*n)」はできるのに「cos(2*%pi*1000*n)+rand(size(n))」はできない、ちなみに「cos(2*%pi*1000*n)+rand(n)」はできる、エラーコードは「inconsistent addition」だ、rand(size(n))のこたえは2つしかないんだから当然の結果だな、これまだ未解決
「stem()」は縦線が並ぶ様なグラフを作成する関数っぽい、これは「plot2d3()」で(先端のマーカー以外は)出来る
「axis()」は定義域を指定するものらしい、まだ代用できる関数が見つからず未解決
「ylabel()」と「xlabel()」は「xtitle()」で代用
「filter()」の代わりは捜索中で未解決
しかたないので別の問題から解こうか……
というわけで「X(n)=U(3-n)をプロットせよ」を解こうとする
Unit Step Functionは定義されていないので「deff('y=u(n)','if n<0 then,y=0,else,y=1,end')」と自作、がしかし!1つずつの数字(-1だけとか1だけとか)なら計算できるのにxに-10から10までを代入してu(x)と実行しても答えは1つしかでてこない!20個でてくれないと……
ってことで挫折、だれか助けてくれ〜〜〜 C言語で科学計算なんかしたくないよ〜〜
stemとかどうやって実現するんだよ!gnuplotとの合わせ技でやるのか?linspaceとかはループ使えばどうにかなるかもしれんがfilterは難易度高いだろ!?
明日は清明だよ〜 課題はとりあえず英語にするかぁ 進まない課題をどいやなものはないね……
そういやあれみた?
いや、こちらでテーマを指定するので、三つでもいいです。
同じものが繰り返されるほど、テーマ的には難しくなるね。
今年は、
(1) PostgreSQL のPCクラスタ上のパフォーマンスチューニングトランザクションベンチマーク
(2) XML データベース上の WWW アプリケーション作成
(3) Oracle を用いた WWW CMS の作成
ぐらいがいいと思う。なんで、難しいものをやろうとするかが、 僕は不思議だが...
Kernel なんかが、一番やさしいのにね。
byK氏
講義の時間がちゃんととられてるんならまだしも、ほかの講義や課題の合間を縫って作業しないといけない!今期はマジでやばいんじゃね?
せめて2か3がいい……まだ「おもしろそう」という救いがあるから……
さてと、なのはでも見るかな
なのはのような不屈の心が欲しいです、もしくはヴィクトリカ並みの頭脳とかこなたばりの集中力
PR
トラックバック
URL :
コメント
無題
なんかコメントがおかしいなぁw
ttp://www.eeng.dcu.ie/~ee317/Matlab_Clones/Mat2Sci/tutinfo%5B1%5D.htm
よくわからん。SCILABが↑の関数を持ってるのかね?
ttp://www.ecl.sys.hiroshima-u.ac.jp/scilab/man/ja/fileio/matfile2sci.htm
ttp://www.ecl.sys.hiroshima-u.ac.jp/scilab/man/ja/fileio/loadmatfile.htm
まーSCILAB使ってないのでわからん。
ttp://www.oishi.info.waseda.ac.jp/~oishi/numerics/index.html
>MATLABのm-fileがScilabのsci-fileに自動変換できる
もしかしたら、MATLAB言語をSCILABが読み込めるのかもよ?
ttp://www.eeng.dcu.ie/~ee317/Matlab_Clones/Mat2Sci/tutinfo%5B1%5D.htm
よくわからん。SCILABが↑の関数を持ってるのかね?
ttp://www.ecl.sys.hiroshima-u.ac.jp/scilab/man/ja/fileio/matfile2sci.htm
ttp://www.ecl.sys.hiroshima-u.ac.jp/scilab/man/ja/fileio/loadmatfile.htm
まーSCILAB使ってないのでわからん。
ttp://www.oishi.info.waseda.ac.jp/~oishi/numerics/index.html
>MATLABのm-fileがScilabのsci-fileに自動変換できる
もしかしたら、MATLAB言語をSCILABが読み込めるのかもよ?
さっぱり遊んでしまった……
>なんかコメントがおかしいなぁw
最近サーバが不安定らしく……
情報ありがとうございます! 明日試してみます
最近サーバが不安定らしく……
情報ありがとうございます! 明日試してみます
追記@4/30
list1_1をloadmatfile()してみたが「構文エラー」だと言われた……
mfile2sciは大方変換できたがsubplot()とstem()が出来なかった……
どうやら完全に変換できるわけではないらしい
mfile2sciは大方変換できたがsubplot()とstem()が出来なかった……
どうやら完全に変換できるわけではないらしい