complex function inverse plot
7 次查看(过去 30 天)
显示 更早的评论
Hello, i have a plot a function
y=1/(ln(x)-0.1)
how can i plot X as a function of Y ,when y=[5:0.01:6]
Thanks.
2 个评论
采纳的回答
KSSV
2020-2-26
On solving it manually....we have:
y = 1/(log(x)-0.1) ;
x = exp(1/y+0.1) ;
To plot:
y=[5:0.01:6] ;
x = exp(1./y+0.1) ;
plot(x,y)
0 个评论
更多回答(1 个)
John D'Errico
2020-2-26
Note that the natural log function is NOT written as ln in MATLAB, but just as log.
Next, in general, it may be impossible to plot your relationship, because there may be infinitely many disjoint regions over which your plot would need to be generated. For example, suppose you wanted to plot the regions where something as simple as sin(1./x) is between .5 and 1?
If a solution exists, where the function has a simple inverse, and if you have the symbolic toolbox, then finverse can help you.
syms X
Y = 1/(log(X) - 0.1)
fplot(finverse(Y),[5,6]);
xlabel 'Y'
ylabel 'X'
grid on
Or, if you want to use plot, you could do it like this:
syms X
Y = 1/(log(X) - 0.1);
y = 5:.01:6;
xfun = matlabFunction(finverse(Y));
plot(y,xfun(y),'-');
xlabel 'Y'
ylabel 'X'
grid on
If you don't have the symbolic toolbox, then you would need to use a loop, and then use fzero to compute the inverse.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Numbers and Precision 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!