2015-10-21 2 views
-1

Я новичок в октаве. Как я могу решить эти 3 набора нелинейных уравнений в октаве? существует 3 неизвестных ->[ theta1,theta2 and theta3] в следующих трех уравнениях. Любое решение в закрытой форме или аналитической форме было бы действительно полезно.решающее нелинейное уравнение в октаве

"####################################"

kinobj_PX = input("enter kinobj_PX value: ")  
kinobj_PY = input("enter kinobj_PY value: ")  
kinobj_PZ = input("enter kinobj_PZ value: ")  
-350*sin(theta2)*sin(theta3 - 90)*cos(theta1) + 50*cos(theta1)*cos(theta2)* cos(theta3 - 90) + 450*cos(theta1)*cos(theta2)-kinobj_PX = 0  
-350*sin(theta1)*sin(theta2)*sin(theta3 - 90) + 50*sin(theta1)*cos(theta2)* cos(theta3 - 90) + 450*sin(theta1)*cos(theta2)-kinobj_PY = 0  
350*sin(theta2)*cos(theta3 - 90) + 450*sin(theta2) + 350*sin(theta3 -90)* cos(theta2) + 300 - kinobj_PZ = 0 
+1

** Пожалуйста ** добавить форматирование к вашему вопросу. Это кошмар для чтения. [LaTeX] (http://www.codecogs.com/latex/eqneditor.php) отлично подходит для уравнений! См. [Ask] и [mcve]. – IKavanagh

+0

Я бы начал с некоторой прямой факторизации лично. – DrBwts

ответ

0

Почему разве вы не используете поиск в Google? Начните вводить «октавный нелинейный эквалайзер», и Google предлагает множество полезных опций. Для меня самым полезным вариантом был «решатель нелинейных уравнений для октавы». Первая связь была https://www.gnu.org/software/octave/doc/interpreter/Solvers.html

Первые строки из этого документа являются:

октавных может решить наборы нелинейных уравнений вида

Р (х) = 0

с помощью функции fsolve, который основан на подпрограмме MINPACK hybrd. Это итеративный метод, поэтому необходимо указать начальную точку. Это также приводит к тому, что сходимость не гарантируется, даже если существует решение.

Ниже приведен пример кода.

RTFM!