Решите только для определенных переменных с символическим решателем - PullRequest
3 голосов
/ 31 августа 2010

Я пытаюсь решить систему уравнений в MATLAB с 3 переменными и 5 константами.Можно ли найти три переменные с помощью метода convert, сохранив константы как символические и не заменяя их числовыми значениями?

1 Ответ

4 голосов
/ 31 августа 2010

Когда вы используете функцию SOLVE (из Symbolic Toolbox ), вы можете указать переменные, для которых вы хотите найти.Например, допустим, у вас есть три уравнения с переменными x, y и z и константами a и b.Следующее даст вам структуру S с полями 'x', 'y' и 'z', содержащую символические уравнения для тех переменных, которые включают константы a и b:

>> S = solve('x+y=a','x-y=b','z=x^2+y^2','x','y','z');  %# Solve for x, y, and z
>> [S.x; S.y; S.z]  %# Get the equations from the structure

ans =

     a/2 + b/2  %# Equation for x
     a/2 - b/2  %# Equation for y
 a^2/2 + b^2/2  %# Equation for z

Если символические решения не могут быть найдены для системы уравнений, вместо них будут возвращены численные решения.

...