a function of function problem

1 次查看(过去 30 天)
I have an expression f in terms of y (independent variable), a and b(parameters). I would like to take the derivative of f with respect to y, and then set the first order condition df/dy=0 to solve for y. The codes are
function g=derive(y,a,b)
g=diff(fun,y);
end;
function [f,c1,c2]=fun(y,a,b)
f=a*log(c1)+b*log(c2);
c1=y*a;
c2=y*b;
end
y0=1;
y_max=fsolve(g,y0);
I know there are problems in the code. The logic is clear, and I hope someone can tell me how to use function of function (local function or nested function) to solve this problem.

采纳的回答

Walter Roberson
Walter Roberson 2016-4-29
Your code will fail at the diff() if y is not symbolic, unless y happens to be 1.
If y is symbolic, then you need to use solve() with g instead of using fsolve() .

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by