Function output is only ans, how do it get output as variable?

5 次查看(过去 30 天)
Hi, I know this is probably a simple fix, but i just started using MATLAB, and am having trouble getting my function to output something other than ans. Here is my code, the input that I am using is x=(0:.01:50) and r=.5:
function [y,dy] = func(x,r)
y=((1+r)*exp((x)))./(1+(r*(exp((1+r)*((x))))));
dy= ((1+(r*(exp((1+r)*((x)))))* (diff(((1+r)*exp((x)))))-((1+r)*exp((x)))* diff((1+(r*(exp((1+r)*((x)))))))))/((1+(r*(exp((1+r)*((x))))))^2);
end
since I am defining y and dy, I thought each answer would be in its own matrix.
  1 个评论
Jan
Jan 2014-10-26
Star Stride hit the point: You have to call your function exactly as you assign the values to y and dy in your code and as you use the built-in functions exp, +, *, ./, diff and ^.
Such basic questions are explained exhaustively in teh Getting Started chapters of the documentation. It is recommended to study them carefully.

请先登录,再进行评论。

回答(1 个)

Star Strider
Star Strider 2014-10-26
The both should appear if you ask them to.
Try this:
x=(0:.01:50);
r=.5;
[y,dy] = func(x,r)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by