trying to do 1D convolution without using inbuilt functions.

8 views (last 30 days)
Hi, I used the following code to do 1D convolution. But getting error:>>
a=[1 2 3];
b=[4 5 6];
K= length(a)+length(b)-1
for i=1:k
K_out(i)= 0
for j=1:length(b)
K_out(i)= K_out(i)+ a(i-j)*b(j)
end
end
The error is: Undefined function or variable 'k'.
But I already defined K.
Thanks

Accepted Answer

Stephen23
Stephen23 on 2 May 2016
Edited: Stephen23 on 2 May 2016
You defined a variable K, and then tried to use k.
MATLAB is case sensitive, you cannot use upper/lowercase interchangeably.
  1 Comment
satnam singh
satnam singh on 2 May 2016
Thanks...but this code still not working..as while computing (i-j) goes to zero or negative the Matlab cannot access the Zero or negative index as the index value is always positive. The error is: Attempted to access a(0); index must be a positive integer or logical.
Please suggest a way out.

Sign in to comment.

More Answers (1)

Sk Group
Sk Group on 25 Oct 2021
Convolution without conv function in MATLAB | Complete CODE | Explanation | Example And Output

Categories

Find more on Operators and Elementary Operations 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!