An integer multiple a function

2 views (last 30 days)
Tu Nguyen
Tu Nguyen on 15 Feb 2022
Commented: Tu Nguyen on 15 Feb 2022
I want the code run with 5 different graph on loop. But the result is just one. Can anyone help me please?
load ecg_hw2.mat;
n = [4:0.01:4];
N = [2 4 8 16 32];
b = 1./N;
ye = cell(size(b));
t = 1/200;
T2 = 0:t:1000;
h = dirac(n);
idx = h == Inf;
h(idx) = 1;
for i = numel(b);
ye{i} = b(i)*(conv(ecg,h));
figure (4);
subplot(6,1,i);
plot(ye{i});
end

Accepted Answer

DGM
DGM on 15 Feb 2022
n isn't defined. I'm assuming that's T2?
load ecg_hw2.mat;
N = [2 4 8 16 32];
b = 1./N;
ye = cell(size(b));
t = 1/200;
T2 = 0:t:1000;
h = dirac(T2);
idx = h == Inf;
h(idx) = 1;
for i = 1:numel(b)
ye{i} = b(i)*(conv(ecg,h));
%figure(4);
subplot(5,1,i);
plot(ye{i});
end
  1 Comment
Tu Nguyen
Tu Nguyen on 15 Feb 2022
My code is exactly like you, but my result just show up 1 graph. I dont know why, can you hep me plese?

Sign in to comment.

More Answers (1)

Arif Hoq
Arif Hoq on 15 Feb 2022
Edited: Arif Hoq on 15 Feb 2022
I dont know the value of n. I took it 200.
A=load('ecg_hw2.mat');
ecg=A.ecg ;
N = [2 4 8 16 32];
b = 1./N;
ye = cell(size(b));
t = 1/200;
T2 = 0:t:1000;
n = [4:0.01:4];
h = dirac(n);
idx = h == Inf;
h(idx) = 1;
for i = 1:numel(b);
ye{i} = b(i)*(conv(ecg,h));
figure (4);
subplot(3,2,i);
plot(ye{i})
end
  3 Comments
Arif Hoq
Arif Hoq on 15 Feb 2022
Edited: Arif Hoq on 15 Feb 2022
in your code you forgot to start indexing from 1(look at herein your code: for i = numel(b)). that's why you are getting a single plot i guess.You need a range of indices. I have updated the code.
Tu Nguyen
Tu Nguyen on 15 Feb 2022
I really appreciate you. I cant believe I forget very basic matlab

Sign in to comment.

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!