0
$\begingroup$

I have a simple question, but just can't figure it out.

I have the following model equation to get a peak. I want to get the the two t-values on the left and right side of the peak, where the model has a height (y-value) of 1*10^-6.

model=(1.87429 E^(-((0.982704 (30.8 - 3.35121 t)^2)/t)))/Sqrt[t]

I tried:

Solve[model == 10^-6, t]

but the result is {}.

and I get the message

Solve::ifun: Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information.

I then tried Reduce, but that also doesn't work.

The problem seems really easy, but I think I have a fundamental misunderstanding here.

$\endgroup$
  • $\begingroup$ If you are really interested in finding the maximum (peak) of model, why don't you just go for it directly? FindMaximum[model, {t, 10}] returns {0.618628, {t -> 9.16809}}. $\endgroup$ – m_goldberg Sep 18 '15 at 13:48
5
$\begingroup$
model = (1.87429 E^(-((0.982704 (30.8 - 3.35121 t)^2)/t)))/Sqrt[t];

LogPlot[{model, 10^-6}, {t, 6, 14}]

enter image description here

Use NSolve and restrict the domain to Reals

NSolve[model == 10^-6, t, Reals]

(*  {{t -> 6.39267}, {t -> 13.1499}}  *)

Or use Reduce restricted to Reals

Off[Reduce::ratnz]

Reduce[model == 10^-6, t, Reals]

(*  t == 6.39267 || t == 13.1499  *)
$\endgroup$
2
$\begingroup$

Solve tries to find a closed form solution - and is not successful in this case. You can get a solution to your problem by using a numerical method, e.g. FindRoot. First

f[t_] := (1.87429 E^(-((0.982704 (30.8 - 3.35121 t)^2)/t)))/Sqrt[t]

then (I did a Plot to have an estimate of the solution)

sol = FindRoot[f[t] - 10^(-6), {t, 6.}]

(* {t -> 6.39267} *)

result:

f[t /. sol]

(* 10.^(-6) *)

$\endgroup$
  • $\begingroup$ +1 for telling me, why Solve didn't work in that context. Thanks $\endgroup$ – Niki Sep 18 '15 at 15:51
1
$\begingroup$

Sometimes plotting and/or reformulating the equation for a variety of ranges the variable of interest along with FindRoot works:

model = (1.87429 E^(-((0.982704 (30.8 - 3.35121 t)^2)/t)))/Sqrt[t]
Plot[Log10[model], {t, 6, 7}]
FindRoot[Log10[model] == -6, {t, 6}]

(* {t -> 6.39267} *)

Function values near solution

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.