How to use log scale with fimplicit

12 vues (au cours des 30 derniers jours)
lorenzosilvestri1998
lorenzosilvestri1998 le 18 Août 2022
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

Réponse acceptée

Torsten
Torsten le 18 Août 2022
Modifié(e) : Torsten le 18 Août 2022
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)

Plus de réponses (1)

Walter Roberson
Walter Roberson le 18 Août 2022
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')

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by