# Matlab: conv(u,v) but that sums 'u' and 'v'?

Is there any function in Matlab like conv(u,v) but that sums up 'u(x)' and 'v(x)' instead of multiplying them?

Imagine:

``u(x) = 66*(x-6)v(x) = 6*(x-9)``

Applying this "wanted function"...

``sum = wantedfunction(u,v)``

So,

``sum(x) = 66*(x-6) + 6*(x-9)``

Any ideas?

I believe you can do what you are asking for using anonymous functions:

``````u = @( x ) ( 66 * (x - 6) );
v = @( x ) (  6 * (x - 9) );
w = @( x ) ( u(x) + v(x) );
``````

This makes `w` the "sum" function you wanted - if I understood your question correctly.

Example: after I keyed in the above, I found

``````w(1:5)
``````

Gave

`````` -378 -306 -234 -162  -90
``````

It's possible I completely missed the point of your question - if so, please leave a comment.

If by "conv" function you mean convolution then the equivalent of that for your case is simply adding two functions you want and then multiply them by delta(your desired spacing on x axis) and then sum over that, gives your function. Still you need to iterate this process by a "for" loop for different delays.