3 Variables in 3 Equations (nonlinear)
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Ilya Tcenov
el 21 de Sept. de 2019
Comentada: Ilya Tcenov
el 21 de Sept. de 2019
Hi all.
I have to solve the following equations:
- A1*X + A2*Y + A3*Z = A4 (a plane)
- B1*X + B2*Y + B3*Z = B4 (a plane)
- (X-T1)^2 + (Y-T2)^2 + (Z-T3)^2 = D^2 (a sphere)
,where A,B,T,D are known constants, and X Y Z are the solution that I am looking for.
There are exactly 2 possible solutions (intersection points between two planes and a sphere), and I know how to choose the right one (based on the signs of X Y Z).
The main problem is that I have to solve these equations in a for loop (millions of times), where each iteration A and B change, therefore I need to do it as efficiently as possible.
I tried using "fsolve", but it takes much longer than I can allow.
One possible way is to calculate the intersection line between the two planes, and look for a point on that line that satisfies the third equation.
Is there a simpler way you can think of to calculate X Y Z in a loop? Can I somehow get rid of the loops and calculate the entire set of points at once?
Thank you.
0 comentarios
Respuesta aceptada
jeewan atwal
el 21 de Sept. de 2019
USE Multidimensional Newton-Raphson method to solve non-linear eqs.
Más respuestas (0)
Ver también
Categorías
Más información sobre Systems of Nonlinear Equations en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!