Determining units for a variable

2 visualizaciones (últimos 30 días)
James Akula
James Akula el 9 de En. de 2019
Comentada: James Akula el 9 de En. de 2019
Hi all,
I think I know the answer for the specific problem below, but I wonder if there is a more general process that could be evaluated using a program like MATLAB's Symbolic Math toolbox.
For example, in the equation
f(I)=a(1-exp(-b∙10^I))
let's say that I know that f(I) is in microvolts (uV), a is in microvolts (uV), and I is in log candela seconds per meter squared [log (cd s / m^2)]. If I don't know what unit b is in, is there any way to determine it "algebraically"?
Since f(I) and a are int he same units, then the expression in the exponent must be dimensionless, and so I take it that b must be equal to m^2/(cd∙s). But, assuming this is correct, how does one prove it?
Thank you in advance for your feedback.

Respuestas (1)

madhan ravi
madhan ravi el 9 de En. de 2019
Editada: madhan ravi el 9 de En. de 2019
  1 comentario
James Akula
James Akula el 9 de En. de 2019
Thank you for yoru quick reply. I am aware of symunit as a means for keeping track of the units a value is in, but I am not sure how to make it work in the type of situation described above.
I have gotten this far:
syms b % This is the variable for which I do not have a priori units
u = symunit;
f = u.mcV
a = u.mcV
I = log10(u.cd * u.s * u.m^2)
solve(f == a*(1 - exp(-b*10^I)), b)
I get an empy sym. This behavior is expected, as "solve" is clearly not the right command here. But I cannot figure out what command is appropriate. I was hoping for something like:
b =
([m]^2/([cd]*[s]))
Again, my issue is, if I know the units of all variables but one (or more?) in an equation, how can I find out what units the unknown variable(s) must be in to make the equation balance.
Am I on the right track? Any advice?

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by