プロが教えるわが家の防犯対策術!

MATLABである離散値の集合で信号の波形をあらわしているのですが、その波形を積分したいのですが方法がわかりません。
減衰している波形なので関数の式はわからないため、どうすればいいか迷っています。
お願いいたします。

A 回答 (2件)

関数系は分かってないんですか。


となると、

素直に台形公式で計算するか(trapz関数)
http://dl.cybernet.co.jp/matlab/support/manual/r …

シンプソン則で計算するか
なぜかmatlabにはシンプソンで計算する組み込み関数はないみたいなので自前でやることになりますが。
http://sach1o.blog80.fc2.com/blog-entry-20.html
こことか参考

あるいは、quadlを使うことにして、中間値は、interp1を使って補完するか
http://dl.cybernet.co.jp/matlab/support/manual/r …

xxという名前のベクトルにxの値、yyという名前のベクトルに関数の値が入っているとして、
quadl(inline('interp1(xx,yy,x)','x','xx',yy'), x0, x1, [], [], xx, yy)
みたいな感じで。
    • good
    • 0

quadl 関数で数値積分すればいいです。


http://dl.cybernet.co.jp/matlab/support/manual/r …

この回答への補足

ありがとうございます。
これだと関数funの形が式で表せないと使えないように思ってしまったのですが、そんなことはないのでしょうか?よろしくお願いします。

補足日時:2007/11/18 13:06
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!