Anonymous function only returns single answer

I have a function where its inputs are two arrays. How do I get the function to return an array of values rather than one single value? The value returned for b is -5.6e-4. Thanks
Code shown here:
x=pi:pi/100:2*pi;
y=x.^2;
z = @(a,b) ((sin(a)+cos(b))/((a.^2)+(b.^2)));
b = z(x,y);

 Accepted Answer

Use the elementwise division operator ./
x=pi:pi/100:2*pi;
y=x.^2;
z = @(a,b) ((sin(a)+cos(b))./((a.^2)+(b.^2)));
b = z(x,y)
b = 1×101
-0.0084 -0.0075 -0.0063 -0.0050 -0.0035 -0.0021 -0.0007 0.0006 0.0017 0.0026 0.0033 0.0036 0.0037 0.0035 0.0030 0.0023 0.0014 0.0004 -0.0007 -0.0019 -0.0031 -0.0041 -0.0050 -0.0058 -0.0063 -0.0066 -0.0066 -0.0064 -0.0060 -0.0054

2 Comments

You're quite welcome, but please Accept-click the answer to indicate that your question is resolved.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 21 Mar 2023

Commented:

on 22 Mar 2023

Community Treasure Hunt

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

Start Hunting!