How to write exponential function that accepts vectors ?

60 次查看(过去 30 天)
o, say I want to write a function 's' for e^(10x) * e^(cosx)
function value=s(x)
value=exp(10*x)*exp(cos(x)) ;
this will only accept scalars. What if I wanted it to accept matrix & vector too? I know expm will allow matrix, but when I do s([1 2 4]) it spits out an error: Expected input to be a square matrix.
So, how can I have the same effect as ".^" with an exponential?

回答(1 个)

Star Strider
Star Strider 2018-2-13
You have to use Vectorization (link) to do element-wise operations to use it with arrays.
Try this:
value = @(x) exp(10*x).*exp(cos(x));

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by