how to find value of variable in natural logarithmic

3 visualizaciones (últimos 30 días)
ibrahim alzoubi
ibrahim alzoubi el 30 de Abr. de 2021
Comentada: ibrahim alzoubi el 30 de Abr. de 2021
How to find value of X:
ln(X/0.466)*66.66+X*4.4805*10^(-4)+X=5.66
  4 comentarios
Star Strider
Star Strider el 30 de Abr. de 2021
I would use fsolve, since it would appear to have at most only one root.
Remember to use log, not ln in your code.
Scott MacKenzie
Scott MacKenzie el 30 de Abr. de 2021
hint #1: e^(ln(x)) = x
hint #2: e^(ln(y) + ln(z)) = y * z

Iniciar sesión para comentar.

Respuestas (1)

DGM
DGM el 30 de Abr. de 2021
Editada: DGM el 30 de Abr. de 2021
This can be done a number of ways. It's a log plus a positive linear function of x. There will be only one solution. That makes everything easier.
% solving symbolically
syms X
eqn = log(X/0.466)*66.66+X*4.4805*10^(-4)+X==5.66;
aaa = double(solve(eqn,X))
% or using fsolve
f = @(x) log(x/0.466)*66.66 + x*4.4805*10^(-4) + x - 5.66;
bbb = fsolve(f,1)
% or using fzero
ccc = fzero(f,1)
% do the answers make sense? check it graphically
x = linspace(0.2,1,100);
y = log(x/0.466)*66.66 + x*4.4805*10^(-4) + x;
plot(x,y); hold on
plot([0.2 1],[1 1]*5.66)
plot(aaa,5.66,'bo')
plot(bbb,5.66,'ko','markersize',10)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by