How to use log scale with fimplicit

Hi everyone, I have to plot an implicit equation and I'm using fimplicit:
fimplicit(@(x,y) cosh((log(2)*(x-1))./((x+1).*y)) - (1/2)*exp(log(2)./y), [1 1000 0 1])
that's ok but I need it on log scale on the x-axis. Is it possibile to use semilogx in this case or something similar?
Thx :)
lorenzo

 Accepted Answer

x = 0:0.1:1000;
fun = @(x,y) cosh((log(2)*(x-1))./((x+1).*y)) - (1/2)*exp(log(2)./y);
options = optimset('Display','none');
tic
y = fsolve(@(y)fun(x,y),0.5*ones(size(x)),options);
toc
Elapsed time is 21.418050 seconds.
tic
y = arrayfun(@(x)fsolve(@(y)fun(x,y),0.5,options),x);
toc
Elapsed time is 4.687107 seconds.
semilogx(x,y)

More Answers (1)

fimplicit(@(x,y) cosh((log(2)*(x-1))./((x+1).*y)) - (1/2)*exp(log(2)./y), [1 1000 0 1])
set(gca, 'XScale', 'log')

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!