logarithm of base other than e,10 and 2
177 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
shahid khan
el 29 de Jul. de 2012
Comentada: Walter Roberson
el 4 de Nov. de 2022
how do i find logarithms having base other than e, 10 and 2.
0 comentarios
Respuesta aceptada
James Tursa
el 29 de Jul. de 2012
logB(X) = logA(X) / logA(B)
You can pick A to be one of the built in functions, like log or log2 or log10. E.g.,
log3(9) = log(9) / log(3) , or
log3(9) = log10(9) / log10(3) , etc.
1 comentario
Stephen23
el 18 de Abr. de 2020
Note that for many MATLAB versions log10 itself called log2 internally... so you might as well skip the intermediate log10 and just call log2 directly (it is probably more accurate as well).
Más respuestas (4)
Chris Lucero
el 18 de Abr. de 2020
Editada: Walter Roberson
el 18 de Abr. de 2020
y = logb(magic(3),[1 2 3; 4 5 6; 7 8 9]);
1 comentario
Walter Roberson
el 18 de Abr. de 2020
logb appears to refer to the File Exchange contribution https://www.mathworks.com/matlabcentral/fileexchange/14866-logb
Walter Roberson
el 18 de Abr. de 2020
if you really get desparate:
arrayfun(@(V) feval(symengine,'log', B, V), A)
and you might want to double() the result. Note that for this to work, B must be a positive real number, whereas in Jame's solution of log(A)/log(B) then B does not need to be positive and does not need to be real-valued.
0 comentarios
lina al noaimi
el 26 de Feb. de 2022
how do we convert from base 9 to base 12 in matlab
can you give me an example on it
1 comentario
Walter Roberson
el 26 de Feb. de 2022
If you mean numeric base, in the same sense that Hexadecimal representation is base 16 number system, then use base2dec and dec2base.
If you mean log base then log12(x) = log9(x).^(9/12)
Ver también
Categorías
Más información sobre Exponents and Logarithms en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!