Make an implicit function in matlab?
显示 更早的评论
I need matlab to create a function for me. I have,
y=e*h*sqrt(4ah+(1-e)*a*h)+(1-e*h)*sqrt((1-e)*2*h) in the interval 0<=e<=1 and 0<=h<=1.
I need a function of max y as a function of h (i.e. e is implicit). How can can matlab create this?
Thanks!
回答(1 个)
Torsten
2017-5-15
Use "fminbnd" to search for the minimum of the function
f=@(x)-(x*h*sqrt(4a*h+(1-x)*a*h)+(1-x*h)*sqrt((1-x)*2*h))
in the interval [0:1]
Best wishes
Torsten.
4 个评论
David Sjöberg
2017-5-15
编辑:David Sjöberg
2017-5-15
f = @(x,h)-(x*h.*sqrt(4*h+(1-x)*2*h)+(1-x*h).*sqrt((1-x)*2*h));
n = 30;
h_array = linspace(0,1,n);
for i = 1:n
h = h_array(i);
k(i) = fminbnd(@(x)f(x,h), 0, 1);
end
plot(h_array,k)
Best wishes
Torsten.
David Sjöberg
2017-5-15
Torsten
2017-5-15
I modified the code from above.
Best wishes
Torsten.
类别
在 帮助中心 和 File Exchange 中查找有关 Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!