Maple 9.5/10 в математике, физике и образовании
Шрифт:
или
где eqn — уравнение, содержащее функцию ряда переменных, var — переменная, по которой ищется решение. Если при записи eqn не используются знак равенства или знаки отношения, считается, что solve ищет корни уравнения eqn=0. Если eqn полином, то solve вычисляет все корни полинома — как действительные, так и комплексные.
Характер решений можно изменить с помощью глобальных системных переменных:
_EnvExplicit — при значении true выдает решение без применения конструкции RootOf;
_EnvAllSolutions —
_SolutionsMayBeLost — при значении true дает решение, которое при обычном применении функции solve возвращает значения NULL;
_MaxSols — задает максимальное число решений;
_EnvTryHard — при значении true может дать компактное решение, но это может потребовать увеличения времени вычислений.
В решениях могут встречаться следующие обозначения:
_NN — указывает на неотрицательные решения;
_В — указывает на решения в бинарной форме;
_Z — указывает на то, что решение содержит целые числа;
%N — при текстовом формате вывода задает общие члены решения и обеспечивает более компактную форму его представления.
В форме solve[subtopic] возможны параметры subtopic функции solve следующих типов:
При решении систем уравнений они и список переменных задаются как множества, то есть в фигурных скобках. При этом и результат решения получается в виде множества. Чтобы преобразовать его к обычному решению, нужно использовать функцию assign, которая обеспечивает присваивание переменным значений, взятых из множества.
Функция solve старается дать решение в аналитическом виде. Это не означает, что ее нельзя использовать для получения корней уравнений в численном виде. Просто для этого придется использовать функции evalf или convert. Если результат решения представлен через функцию RootOf, то зачастую можно получить все корни с помощью функции allvalues.
4.8.2. Решение одиночных нелинейных уравнений
Решение одиночных нелинейных уравнений вида f(х)=0 легко обеспечивается функций solve(f(x),x). Это демонстрируют следующие примеры (файл solve):
Если уравнение записывается без правой части, то это означает, что она равна нулю. Часто бывает удобно представлять уравнение и его решение в виде отдельных объектов, отождествленных с определенной переменной (файл solve):
В
Сводящиеся к одному уравнению равенства вида f1(х)=f2(x) также решаются функцией solve(f1(x)=f2(x),x):
Обратите внимание в этих примерах на эффективность применения функции evalf, позволяющей получить решения, выраженные через функцию RootOf, в явном виде.
Некоторые даже с виду простые уравнения могут дать неожиданные для многих пользователей результаты. Пример такого рода приведен ниже (файл solve):
В данном случае решение получено через значение специальной функции Ламберта. Впрочем, с помощью функции evalf его можно представить в численном виде.
4.8.3. Решение тригонометрических уравнений
Функция solve может использоваться для решения тригонометрических уравнений: