# FindRoot: Power: Infinite expression 1/0. encountered

I am trying to solve the problem below with FindRoot. At first it works well, but when I change the constants in my equation the solver returns with the message:

FindRoot: Power: Infinite expression 1/0. encountered.

What does this means? Is there no solution for the system with the new values in e2?

Also when I put M -> 10 in data, another message appears for icmsol1:

FindRoot:Failed to converge to the requested accuracy or precision within 100 iterations.

data = {M -> 1, To -> 280.5, T∞ -> 254}

μv = {3.9300, 7.3663, 10.6438, 13.8624, 17.0535, 20.2295, 23.3965, 26.5574, 29.7144, 32.8684}

fi = (To (Sin[μ[j]] - Cos[μ[j]] μ[j]))/(T∞ μ[j]^2)

Ni[τ_, j_] = Integrate[Sin[μ[j][τ]*x]^2, {x, 0, 1}]

fr = T1^3
f2 = 1/T1

e1 = Table[(mi*Cos[mi] + ((1*fr - 1 - 0.5*f2) /. T1 -> Sum[Sin[μ[j]]*(1/Ni[0, j])*fi, {j, M /. data}])*Sin[mi] == 0) /. mi -> μ[i], {i, M /. data}]

e2 = Table[(mi*Cos[mi] + ((0.00122275*fr - 0.879355 - 1.67153*f2) /. T1 -> Sum[Sin[μ[j]]*(1/Ni[0, j])*fi, {j, M /. data}])*Sin[mi] == 0) /. mi -> μ[i], {i, M /. data}]

CImsys = Table[{μ[i], μv[[i]]}, {i, M /. data}]

icmsol1 = FindRoot[e1 /. data, CImsys]

icmsol2 = FindRoot[e2 /. data, CImsys]

• It means something was divided by zero in the course of trying to find the root. You might need a better starting point for the root search. You also might want to inspect your functions (if you haven't) to make sure they look right. – Michael E2 Aug 13 at 20:28
• Thank you Michael. – Igor Aug 16 at 21:37

Your problem is that for e2 your solution is zero and your function blows up at μ == 0. This can be seen if we plot.

Plot[Evaluate[(e2 /. data)[[1, 1]]], {μ, -10, 10}] From the plot it looks like your root is at zero. If you try to verify with a straight calculation:

(e2 /. data)[[1, 1]] /. μ -> 0;


you will get an infinite expression which is why FindRoot was unsuccessful. If you take the limit, however:

Limit[(e2 /. data)[[1, 1]], μ -> 0]
(*0.*)


You get verification that the root is zero.

For greater values of M, I suggest you use exact numbers in your given data, and increase the WorkingPrecision for FindRoot. That should solve your convergence problems.

• Thanks Bill. Your answer was very helpful. I think there is something wrong with my equation, I was not expecting only one root for it. – Igor Aug 18 at 21:48