3
$\begingroup$

I have this equation in terms of x0 and I need to find x0 in terms of Theta .

theta[x0_] := ArcSin[ 2*(157/100)*(10^(-11))*x0*((1 - 1/x0)^(-1/2))]. 

What is the best way to do that on Mathematica? I've tried to use findroot for x0>3/2 but I get errors and I don't get accurate values. I understand that I should maybe use Nsolve but I'm not sure what's the best way to approach such a problem.

x0f[N_] := x0 /. FindRoot[theta[x0] == N, {x0, 2}] 

Appreciate any suggestions.

$\endgroup$
1
  • 1
    $\begingroup$ Try: Solve[the == theta[phi], phi] $\endgroup$ Commented Mar 9, 2022 at 8:34

1 Answer 1

5
$\begingroup$

We can use inverse function as follows

theta[x0_] := 
 ArcSin[2*(157/100)*(10^(-11))*x0*((1 - 1/x0)^(-1/2))]

t = 
 InverseFunction[ArcSin[2*(157/100)*(10^(-11))*#*((1 - 1/#)^(-1/2))] &]

(*Out[]= 50000000/
  157 ((1000000000 (10/3)^(1/3)
      Sin[#1]^2)/(-1413 Sin[#1]^2 + 
      Sqrt[3] Sqrt[
       665523 Sin[#1]^4 - 100000000000000000000000000 Sin[#1]^6])^(
    1/3) + (10/3)^(
     2/3) (-1413 Sin[#1]^2 + 
       Sqrt[3] Sqrt[
        665523 Sin[#1]^4 - 100000000000000000000000000 Sin[#1]^6])^(
     1/3)) &*)

Visualization

Plot[theta[x], {x, 3/2, 10}, PlotRange -> All, 
 AxesLabel -> {"x0", "theta"}]

Plot[t[x], {x, theta[3/2], theta[10]}, AxesLabel -> {"theta", "x0"}]

Figure 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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