Уравнения и системный решатель
Поддержка вектора символов или строки входов была удалена. Вместо этого используйте syms
объявить переменные и заменить такие входы, как solve('2*x == 1','x')
с solve(2*x == 1,x)
.
использует дополнительные опции, заданные одним или несколькими S
= solve(eqn
,var
,Name,Value
)Name,Value
аргументы в виде пар.
решает систему уравнений Y
= solve(eqns
,vars
)eqns
для переменных vars
и возвращает структуру, содержащую решения. Если вы не задаете vars
, solve
использование symvar
чтобы найти переменные, для которых нужно решить. В этом случае количество переменных, которые symvar
находки равны количеству уравнений eqns
.
использует дополнительные опции, заданные одним или несколькими Y
= solve(eqns
,vars
,Name,Value
)Name,Value
аргументы в виде пар.
[
решает систему уравнений y1,...,yN
] = solve(eqns
,vars
)eqns
для переменных vars
. Решения присваиваются переменным y1,...,yN
. Если вы не задаете переменные, solve
использование symvar
чтобы найти переменные, для которых нужно решить. В этом случае количество переменных, которые symvar
находки равны количеству выходных аргументов N
.
[
использует дополнительные опции, заданные одним или несколькими y1,...,yN
] = solve(eqns
,vars
,Name,Value
)Name,Value
аргументы в виде пар.
[
возвращает дополнительные аргументы y1,...,yN
,parameters
,conditions
]
= solve(eqns
,vars
,'ReturnConditions
',true)parameters
и conditions
которые определяют параметры в решении и условия в решении.
Если solve
не удается найти решение и ReturnConditions
является false
, solve
функция внутренне вызывает числовой решатель vpasolve
который пытается найти числовое решение. Для полиномиальных уравнений и систем без символьных параметров числовой решатель возвращает все решения. Для неполиномиальных уравнений и систем без символьных параметров числовой решатель возвращает только одно решение (если решение существует).
Если solve
не удается найти решение и ReturnConditions
является true
, solve
возвращает пустое решение с предупреждением. Если никаких решений не существует, solve
возвращает пустое решение без предупреждения.
Если решение содержит параметры и ReturnConditions
является true
, solve
возвращает параметры в решении и условия, при которых решения верны. Если ReturnConditions
является false
, solve
функция либо выбирает значения параметров и возвращает соответствующие результаты, либо возвращает параметризованные решения, не выбирая конкретных значений. В последнем случае, solve
также выдает предупреждение с указанием значений параметров в возвращаемых решениях.
Если параметр не появляется ни в каких условиях, это означает, что параметр может принимать любое комплексное число.
Выходные выходы solve
может содержать параметры из входных уравнений в дополнение к параметрам, введенным solve
.
Параметры, введенные solve
не отображаются в рабочем пространстве MATLAB. Доступ к ним должен осуществляться с помощью выходного аргумента, который их содержит. Кроме того, чтобы использовать параметры в рабочем пространстве MATLAB, используйте syms
для инициализации параметра. Для примера, если параметр k
, использовать syms k
.
Имена переменных parameters
и conditions
не допускаются в качестве входов solve
.
Чтобы решить дифференциальные уравнения, используйте dsolve
функция.
При решении системы уравнений всегда присваивайте результат выходным аргументам. Выходные аргументы позволяют вам получить доступ к значениям решений системы.
MaxDegree
принимает только положительные целые числа меньше 5, потому что, в целом, нет явных выражений для корней полиномов с степенями выше 4.
Переменные выходы y1,...,yN
не задавать переменные, для которых solve
решает уравнения или системы. Если y1,...,yN
являются ли переменные, которые появляются в eqns
тогда нет гарантии, что solve(eqns)
назначит решения y1,...,yN
использование правильного порядка. Таким образом, когда вы бегаете [b,a] = solve(eqns)
, вы можете получить решения для a
назначено b
и наоборот.
Чтобы гарантировать порядок возвращенных решений, задайте переменные vars
. Для примера вызов [b,a] = solve(eqns,b,a)
назначает решения для a
на a
и решения для b
на b
.
Когда вы используете IgnoreAnalyticConstraints
решатель применяет эти правила к выражениям с обеих сторон уравнения.
Журнал (a) + журнал ( b) = журнал (a· b) для всех значений a и b. В частности, следующее равенство справедливо для всех значений a, b и c:
(a · b)c = ac· bc.
журнал (ab) = b· журнал (a) для всех значений a и b. В частности, следующее равенство справедливо для всех значений a, b и c:
(ab)c = ab·c.
Если f и g являются стандартными математическими функциями и f (g (x )) = x для всех малых положительных чисел, f (g (x )) = x принимается допустимым для всех комплексных чисел x. В частности:
журнал (ex) = x
asin (sin (x )) = x, acos (cos (x )) = x, atan ( tan (x)) = x
asinh (sinh (x )) = x, acosh (cosh (x )) = x, atanh (tanh (x)) = x
W k (x· ex) = x для всех индексов ветви k функции Lambert W.
Решатель может умножить обе стороны уравнения на любое выражение, кроме 0
.
Решения полиномиальных уравнений должны быть полными.