質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
MATLAB

MATLABはMathWorksで開発された数値計算や数値の視覚化のための高水準の対話型プログラミング環境です。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Q&A

1回答

701閲覧

IIRフィルタの出力を求めたい

kaeruuuun

総合スコア19

MATLAB

MATLABはMathWorksで開発された数値計算や数値の視覚化のための高水準の対話型プログラミング環境です。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

0グッド

0クリップ

投稿2021/08/08 13:13

編集2021/08/09 00:37

イメージ説明

この画像で表されるy[n]を出力するプログラムを作成しています.

maltab

1prompt = 'What is the value of "a" ? '; 2a = input(prompt); 3prompt = 'What is the value of "b" ? '; 4b = input(prompt); 5 6N=49; 7x = [1; zeros(N,1)]; 8 9 10 11b_length=length(b); 12a_length=length(a); 13y1=zeros(1,length(x)+length(b)-1); 14y2=zeros(1,length(x)+length(a)-1); 15 16y=zeros(1,length(x)); 17for n=1:length(x) 18for k=1:b_length 19 20 y1(n+k-1)=y1(n+k-1)+(x(n)*b(k)); 21end 22 23 24for m=1:a_length 25 y2(n+m-1)=y2(n+m-1)+(y(n)*(-a(m))); 26 27 28end 29y(n)=y1(n)+y2(n); 30end 31plot(y) 32 33

このように作成したのですが,y2が更新されず常に0が入ってしまいます.
また

matlab

1g=filter(b,a,x); 2>> plot(g)

として出力してみた結果とプログラムの結果が異なるためプログラムがうまく動作していないのですが,どのようにすれば値がうまく更新され同じ出力結果が得られるのでしょうか。

追記
イメージ説明
matlabの畳み込みに載っていたこの式で実行すると

matlab

1for n=1:length(x) 2for k=1:b_length 3 4 y1=y1+x(n-k+1)*b(k); 5end 6 7配列インデックスは正の整数または logical 値でなければなりません。 8 9エラー: report2_b (23) 10 y1=y1+x(n-k+1)*b(k); 11

このようなエラーが出てしまいます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

そもそも与式とプログラムの式が違うように見えますが、本当にあってますか?

投稿2021/08/08 14:10

yuki23

総合スコア1448

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kaeruuuun

2021/08/08 23:42

コメントありがとうございます.y1が右辺の一項目,y2が右辺の二項目を表しているつもりなのですが,式があっているかは自信がないです.畳み込みをしているつもりです.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問