MATLAB Answers


how to get the numerical solution of Non linear equation for unknown variable

Asked by Anil Kumar on 3 Apr 2019
Latest activity Edited by John D'Errico
on 4 Apr 2019
Hello all, I am a beginner in Matlab. I want to solve the above equation numerically to calculate the value of phi0. below is the list of parameters involved. I tried to solve using fsolve function but could not get the solution, because I could not solve the left hand side term with integral. please help me finding the solution.I Will appericiate the help from bottom of my heart. Thank you.
Ld = 1.6923e-05;
Et-Ef= 1.21*1.6*10^-19
V= 4*pi*r^3


Sir, The integration on left hand side is the volume integral of a spherical grain. from V=0 to V=4*pi*r^3 where r= 40*10^-9.
How is the integral rewritten as an integration over r ? Furthermore, the right-hand side cannot depend on "r" since this is the integration variable and will cancel out during integration.

Sign in to comment.

1 Answer

Answer by John D'Errico
on 4 Apr 2019
Edited by John D'Errico
on 4 Apr 2019

Confusing. That usually means the person is also confused.
We are shown an integral on the left hand side. It is an integral over the variable V. V appears in the integrand only as dV. I see Nd (known), also R (known) Ld (known.) Only phi0 is missing and unknown in there. But IF phi0 WERE known, then it would be a constant, NOT a function of V, the variable of integration.
So the left integral is trivial to compute, even on paper. The integral of a constant over fixed, known limits is simple. If C is the value of the constant, then the integral of the left hand side is just
Yes, C is a function of phi0. Why do I care? Once phi0 is known, then it is a constant, so not impacting the value of the integral, and it is clearly not a function of V.
How about the right hand side? Again, all known. The right hand side is a number. Computatable.
In the end, you can do the algebra. You will find an expression of the form
C(phi0) = D
But C(phi0) is trivially solved using a little algebra and the log function. Again, paper and pencil will suffice, were I not too lazy, but this is your problem to solve, not mine, and MATLAB is not even required. You don't need fsolve. You don't even need a computer to solve it. Lets see
4/3*pi*R^3*Nd*(1-exp(-phi0*sinh(r/Ld)/(r/Ld))) = 4*pi*R^2*(Nt/stuff)
I left part of that as just "stuff". But you get the hint. The 4 cancels. The pi cancels. We get
1 - exp(-phi0*sinh(r/Ld)/(r/Ld)) = 3/R*Nt/(Nd*stuff)
Move some more stuff around, take the log. Then solve for phi0. WTP? Using fsolve here is like using a Mack truck to carry a pea to Boston.


Sign in to comment.