Говорухин В., Цибулин Б. Компьютер в математическом исследовании (1185927), страница 17
Текст из файла (страница 17)
Для отмены назначения применяется команда нпа55)дп или операция присваивания переменной ее имени, взятого в кавычки: > 5:-5о1чеЦЗ*х-у-5агй(а). 5>х-2>у-1],(х,у]); 5:= ( у = -3 + 5 (Га, х = -1 + 2 /а ) > а551ОП(5); х, У -1 + 2,Га, -3 + 5 >Га > опа551дп( х ): ч: У : х.у: х,у Поиск решения может потребовать значительных ресурсов памяти и времени, Для нелинейных уравнений может быть найдено несколько решений (ио ие обязательно все), а может окаааться, что ни одного решения ие найдено. В последнем случае Решение алгебраических уравнений и неравенств 95 Мар1е просто выведет приглашение ввода, Ьжидая новой команды.
Отметим еще раз, что если не указаны переменные; относительно которых должно быть найдено решение, то ответ будет получен для всех переменных. Если в выражении ответа появилась функция даотОг, это означает, что Мар!е либо не может выразить корни в радикалах, либо это требует дополнительных усилий: > зх:-во!ее(х"4+3>х 3-8>х>3,(х]): ех:= (х=к0010(( У + 3 2 -8 2+3, )ллех = 1)1, (х=иоосОГ( 2'+3 2~ — 8 2+3, (леех =2)), [ х = коосО(( 2'+ 3 У' - 8 2+ 3,! пИех = 3 ) 1, (х=доо)ОГ( 2е+3 2' — 8 2+3, лн(ех=4)1 Само решение при этом выражается через корни аргумента функции, стоящей внутри йоот07.
Его можно найти численно; > еы1Е(вх[1)); ( х = .4027975553 1 Команда а)1еа1цез позволяет представить решение, используя радикалы. Например, для первого решения зх получим: > а11>в1иев(вх(1)): 3 1 — 1 (х=- — + — у37 — — -10+2 37 ) 4 4 4 К аналогичному результату приводит использование команды сопеегт с парамет(юм гв01 са1: > сопеегт(вх(3).гашса1): 3 1 — 1 (х= — — — — 437+ — -10 — 2 37 1 4 4 4 Режим вывода решений без использования конструкции йоотОт" можно задать, присвоив системной переменной ЕпеЕхр11с1т значение тгое. В общем случае корни полиномов питой степени и выше не выражаются в радикалах.
В Мар1е 6 команда зо\ ее выписывает решения для частных случаев, когда такие решения имеются. Конструкция доотОт(ЕО(Х)-О.Х) применяется для обозначения любого корня уравнения ЕО(Х)-О. Это удобно для проведения выкладок. Расширенный формат команды позволяет указать тот корень из множества корней, который находится вблизи значения 2: аоо(ОГ(ЕО(Х) О,Х,2) Эта команда позволяет выделять также комплексные корни, задавая комплексные значения для 2.
Например: > еча1т(аеотот(х"4-2бб О,х.з)): 4,000000000 > еча)т(аоотот(х"4-2бб-з,х,2*1)): 4.1 96 Глава 4. Рав)анне уравнений в Иар[в Для системы уравнений каждое решение дается множеством, а при нескольких ответах — последовательностью множеств. Рассмотрим решение простой системы: > ецэцу»2>х)»у-5»у.х"2+у-4-0; эо1: во1уе!(ец). (х,у)): хп):= [х=2,у=О), [х=-2,у=О), [у=3,х= ! ), [у=3,х=!) Отметим удивительный результат: последние два решения совпадают, так как Мар[е нашел решения и проинформировал об их кратности.
Для проверки полезно подставить полученное решение в исходное уравнение: > еиа1!ец.во1(1]): 0=0,0=0 Для проверки всех решений удобно пользоваться командой вар: > вар(эиэв. Рю1]. (ец)): [[0=0), [0=0), [15 =15, 0=0), [15=15,0=0)1 Так как решения подставляются в уравнения, оформленные как тип эеС (множество), и одинаковые элементы из множества удаляются, то результаты первых двух подстановок означают одновременное обнуление правых и левых частей уравнений. Если неизвестных больше, чем уравнений, то решение будет содержать свободные параметры, Например, для системы трехлинейных уравнений с четырьмя неизвестными без указания неизвестных Мар1е выберет одну переменную в качестве параметра и выведет решение следу)ошего вида: > ец:=(н>и+4:">+8*1=2.>*э~и=э.н-з"н-5>т): во1>е(ец): 2 1 2 1 4 2 [и=и,и = — — — и,»=- — + — и,си — — — и) 5 5 ' 15 15 ' 15 15 Явное указание неизвестных позволяет получить решение с нужным параметром; > во1че(ец.(и,».н)); 15 1 3 [и=2 — — и»= — — пи =-)! 2 ' 2 ' 2 Надо иметь в виду, что порядок следования переменных (и решений) может измениться при следующем запуске.
Если для использования решений необходим определенный порядок следования неизвестных, то полезно упорядочить ответ при помощи команд сортировки или конструкций программирования, см. главу 16 4Программирование в Мар1е». Для успешной работы могут понадобиться следующие переменные системы: прн помощи Иэх5о1 з указывается число разыскиваемых решений, для поиска всех решений нужно присвоить значениеггне переменной ЕпуА115о1 нт! опэ. При представлении решения используются следующие переменные: 7 (комплексное число), Е (неотрицательное целое), В (бинарное число — 0 или 1).
Заданием переменной ЕпуТгупагс значения сгне может привести к решению, выраженному более компактным образом, но это потребует определенных затрат времени: > Еп»4115о1июопв:-Сгие: г:-во)уе(сап!х)-1,х); 1 »:=-и+и Х1- 4 Решение алгебраических уравнений и неравенств 97 Для сравнения приведем решение с альтернативным значением: » ЕпчА)15о)ит1опв:-та12е: г:-во)че(тап(х)-1.х); 1 г;= — л 4 Заметим, что определение всех решений чревато затратами времени на анализ полученного результата. Потребуются некоторые усилия, чтобы отсечь неверные корни в ответе следующего примера: > ес:=2*21п(х)"3-7*21п(х)"244*ю п(х)44: оо)че(еп,х); 1 4 — — и+ — п В)-+ 2 и 21-, вгсцп(2) — 2 агсяп(2) В2-+ 2 п 22-+ и В2- Если решить то же уравнение, взяв в качестве неизвестной синус, то ошибочные решения (синус болыпе единицы) видны сразу: > ОО1че(еп,)21п(х))): -1 ) Цп(х) = — ), ( О(п(х) = 2 ), ) вгп(х) = 2 ) 2 В завершение отметим, что команда 301 че позволяет находить параметры, при которых справедливо некоторое тождество, Тождество 10ЕВ задается при помощи команды 14)епг)гу(10Е)(, ЧЯй), причем тождество должно выполняться при любых значениях переменной ЧАВ.
Приведем пример. Подготовим полипом четвертой степени с неизвестными параметрами. Команда )пбегз позволяет выделить множество неопределенных параметров в заданном выражении. После удаления переменной х получаем пять неизвестных параметров: > еп:-воз(а[К)охЪ,К-0..4):чаг:-1пзем(еп) пппб (х); О ! 2 3 4 2 := ) а, оп ав а и ао ) Теперь определим, при каких значениях будет справедливо следующее тождество; > ОО1че(гоепт1гу(ЕО=(х-1)"З.х).чаг). )а = О, а = -1, а = 1, а = -3, а = 3 ) 4'О'2'г (оманда йо1че Для численного решения системы уравнений ЕО)) относительно переменных ЧЯк используется команда тзо1 че: тле)че (ЕОИ,ЧАй.ОРТ) При помощи дополнительных параметров ОРТ могут быть заданы условия, устанавливающие местоположение, тип и число разыскиваемых решений (см. табл.
4.1), где х обозначает переменную, в, Ь, 3 — вегцественные числа, и — целое число. Для одного уравнения Мар)е старается найти вещественный корень, в случае полииома разыскиваются все вещественные корни. Приведем примеры решений и использования различных параметров. 98 Глава 4. Решение уравнений в Нар(е Таблица 4.1.
Параметры команды Во1че Параметр а..Ь или х-а..Ь Назначение Задание интервала (а.Ь)для поиска решений Поиск решений, отличных от х-з Поиск комплексных решений (одного для трансцендентных уравнений и всех для полиномов) Использование арифметики с мантиссой, определенной константой 0пдта Поиск и наименьших решений (для полиномов) Начальное приближение а тоы. (х"з) сото)ех сп)Ш0)сз вах5015 и Определим полипом шестой степени и применим команду Тзо1че без параметров: > ро1у:-х 6-2"х 5-4*х"4-6*х 3«15*к"2+56«х-60: > Гзо)че(ро)у): -2., !., 2., 3.000000000 Найдем два наименьших корня полинома; > тзо)че(ро)у,х,иахзо1з-2): -2., 1. Найдем вещественные и комплексные корни, отличающиеся от двух указанных выше: > тзо)че(ро)у,х,сомр1ех.ачо10-(х--2.х-ЗУ: -1.
— 2. Д -!. + 2. б 1., 2. Нужный диапазон или начальную точку можно определить, построив график функции (выражения с одной переменной), для которой разыскивается решение. В случае системы нелинейных уравнений это сделать труднее. Для систем с двумя и тремя неизвестными можно воспользоваться командами )шр1 !с! Ьр1 ог и! вр1 101гр1 0030, см. главу 6 «Графика Мар(еь. Приведем пример решения системы, демонстрирующий, кстати, что при определении диапазона можно использовать бесконечность: > гзо)че((х"2+у"2-4,х 3-)п(у)). (х.у). (х-0..2.у-о,.)пттп)ту)); (х =.841434532), у = 1.814383622) Решение неравенств Команда 601 че позволяет находить решения одного неравенства относительно одной переменной.
В ответе могут присутствовать следующие функции: Яеа1дапде При решении трансцендентных уравнений желательно указывать предполагаемое положение корней. В следующем примере без определения параметров будет най- дено решение х=-1. Чтобы найти другие решения, используем два способа указания цели: задание близкого к корню начального приближения и определение диапазона: > Гзо)че(соя(Р1*х)=х,х-.5); .3769670094 > Гзо)че(соз(Р)*х)-х,х.-0.9..-0.5); -.7898326284 ревзение алгебраических уравнений и неравенств 99 для указания интервала и Орел для обозначения открытого интервала (граница не включена). Определим неравенство: > !пец:-2*1п(х"2-3)<-3-1п(х"2-3)"2; г г !пел;= 2 !п(х — 3) < 3 -1п(хз — 3) и запустим команду зо1че: > зо1че(зпец,х); ~~-зз Гьзз кеа!капле(-~/е + 3, —,( е + 3 ), кеа!папке(,( е + 3, з/е+3 ) Теперь превратим (пец в строгое неравенство и присвоим переменной зо первое решение: > во:"во)че()ив(заец)<гав(!пец))[1): Г7-зз зп:= кеа!капле(Орал( — зГе+ 3 ), Орел(-,! е + 3 ) ) Используя команду ор для доступа к операндам н обычный способ выбора элемента из последовательности выражений, можно добраться до значения нужной границы интервала: > ор(зо); ор(зо)(Ц; ор(ор(зо)(!)); Гпзз Орел(-«Ге+3),Орел(-(а +3) Орел(-з(е+ 3) — че»3 При помощи пакета Мар1е можно также решать смешанные системы, состоящие из нескольких уравнений и неравенства; > зо1че((2*х«у>З,х"2-у,х»х-у],[х,у.г]): (у=с,г<-3,х> е], (у=с, ! <с,х=с) Заметим также, что и для линейных неравенств может быть получен некий ответ: > зо!че((2>х+у>З,х>у],(х,у]); ( — 2 х — у < -3, у — х < О, 1 < х ] Для решения задач с несколькими неравенствами, например для задач линейного программирования, имеется пакет а!и) р]ех, см.
главу 8 «Математические библиотеки Мар1е». (оианды моЬе и аио[че Кроме зо]че и тзо1че имеется ряд специализированных команд: ! Зо1 че(ецп) для отыскания решений уравнения ецп в целых числах и аззо1 че(ецп, я) для нахождения решений уравнения ецп по модулю ж, Приведем для каждой команды по примеру, не требующему особых комментариев: > зво)че(в 2+2 и 2-252,(в.п]); (из=15,п=И. (пз 15.п -4), (пз=-15,и=4],(вз=-15,п=-4] 100 Глава 4. Решение уравнений в Иар(е > вне!че(З"1=3.7): ( с =1+6 21-] Разностные уравнения Для решения разностных уравнений или рекуррентных соотношений (линейные задачи с постоянными коэффициентами и некоторые нелинейные задачи) имеется команда гас)че (ЕОН,ЧАа) Здесь ЧАй — имя функции (набор имен функций), относительно которой (которых) будет решаться разностное уравнение (система уравнений) ЕОН. Если решение может быть получено, то ответ будет в виде функции от параметра.