MATLAB Answers

How to solve a nonlinear equation?

4 views (last 30 days)
CS
CS on 20 Oct 2020
Commented: Matt J on 21 Oct 2020
I have an equation as follows
x^(8.5)+3*x^(2)=3000
How can I solve for x?
Thanks for any help!

  0 Comments

Sign in to comment.

Answers (1)

Matt J
Matt J on 20 Oct 2020
Edited: Matt J on 20 Oct 2020
[x,fval] = fzero( @(x) x^(8.5)+3*x.^2-3000,nthroot(3000,8.5))
x = 2.5629
fval = 4.5475e-13

  7 Comments

Show 4 older comments
CS
CS on 21 Oct 2020
How about the below one?
[x,fval] = fzero( @(x) ((1/(3.52*10.^(22)))*x^(8.14))+(1/207000)*x.^2-4.52,0)
CS
CS on 21 Oct 2020
It gives the error
Exiting fzero: aborting search for an interval containing a sign change
because complex function value encountered during search.
(Function value at -0.0282843 is -4.52+3.0076e-36i.)
Check function or try again with a different starting value.
How to solve this?
Matt J
Matt J on 21 Oct 2020
[x,fval] = fzero( @(x) ((1/(3.52*10.^(22)))*abs(x)^(8.14))+(1/207000)*x.^2-4.52,0)
x = -656.6949
fval = -8.8818e-16

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!