fsolve for generated equations

1 次查看(过去 30 天)
Dear Matlab Community,
While doing a solution with MATLAB, I got 2 nonlinear equations, say, eqn1 and eqn2 generated with two variables s and t in output. The size of equations are large (got as output). How can I use "fsolve" for solving them without copying them from the output and without setting x(1) and x(2) but defining and ?

采纳的回答

Star Strider
Star Strider 2021-6-1
Having the equations themselves would hellp.
However assuming they are something like this:
y1 = s.^2 + 10*t;
y2 = 10*s + t.^1/3;
I would code them as:
y1 = @(s,t) s.^2 + 10*t;
y2 = @(s,t) 10*s + t.^1/3;
then:
X = fsolve(@(x) [y1(x(1),x(2)); y2(x(1),x(2))], [3 9])
Equation solved. fsolve completed because the vector of function values is near zero as measured by the value of the function tolerance, and the problem appears regular as measured by the gradient.
X = 1×2
1.0e+-13 * -0.0099 0.2960
.
  4 个评论
Aniket Roy
Aniket Roy 2021-6-9
Dear Sir,
thanks. I have got the equations and in script from and . And I got the full equations like
that I need to copy from the output and paste it in the script to use fsolve. Is there any way that I can directly use
y1=@(s,t) real(det(A)) and y2=@(s,t) imag(det(A))?
Star Strider
Star Strider 2021-6-9
I need either to have the actual equations, or the information necessary to calculate ‘y1’ and ‘y2’.
I cannot go further without that information.
Also, what variables are they to be solved for?

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by