1610912777-ff63a1b83b9ac0b597c9346050946007 (ПИМ_Reduce)

PDF-файл 1610912777-ff63a1b83b9ac0b597c9346050946007 (ПИМ_Reduce) Программный инструментарий математика (84969): Книга - 1 семестр1610912777-ff63a1b83b9ac0b597c9346050946007 (ПИМ_Reduce) - PDF (84969) - СтудИзба2021-01-17СтудИзба

Описание файла

PDF-файл из архива "ПИМ_Reduce", который расположен в категории "". Всё это находится в предмете "программный инструментарий математика" из 1 семестр, которые можно найти в файловом архиве НГУ. Не смотря на прямую связь этого архива с НГУ, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТА.А. ТалышевReduceв задачах математической физикиУчебное пособиеВерсия от 10 сентября 2012 г.НОВОСИБИРСК20122Пособие посвящено одной из первых систем компьютерной алгебры —пакету «Reduce». Описаны основные команды и функции ядра системы.Также приводится перечень пакетов расширения поставляемых вместе ссистемой. Изложение сопровождается разнообразными примерами различной степени сложности.Использование систем символьных вычислений повышает производительность при моделировании и анализе результатов фундаментальныхфизических экспериментов и разработке новых технологий обработкиинформации.

Последняя версия «Reduce» для современных операционных систем «Windows» и «Linux» приобрела статус свободно распространяемого программного обеспечения и при этом в части символьныхвычислений превосходит по удобству и своим возможностям системы«Mathematica» и «Maple».Пособие предназначено для студентов и аспирантов математическихи физических специальностей университетов.Пособие подготовлено в рамках выполнения Программы развитияНГУ как национального исследовательского университета.Глава 1ВведениеСистема «Reduce» начала разрабатываться в 1963 году. Первая публичная реализация вышла в 1968 году.

С декабря 2008 доступна подмодифицированной BSD лицензией SourseForge1 .Основные возможности «Reduce»: автоматическое и контролируемоепреобразование выражений, целочисленные и вещественные вычисленияпроизвольной точности, аналитическое дифференцирование и интегрирование, факторизация полиномов, решение разнообразных алгебраических уравнений, вычисления с символьными матрицами, вывод выражений в различных форматах, генерирование вычислительных программ,вычисления с широким набором специальных функций, вычисления сматрицами Дирака в физике высоких энергий, развитые средства программирования.После запуска «Reduce» открывается окно, в котором напечатаны двестроки:Reduce (Free CSL version), 14–Apr–11 .

. .1:В первой — запущенная версия «Reduce» и дата выхода версии, а во второй — номер строки ввода, в которой можно набирать команды «Reduce».Каждая команда должна заканчиваться терминатором — точкой с запятой или символом доллара. В первом случае выполняется команда и выводится результат (если есть, что выводить). Во втором случае командавыполняется, но результат не выводится.1(http://reduce-algebra.sourceforge.net)3Глава 1. Введение4В одной строке можно набрать несколько команд.

После нажатияклавиши «Enter» команды завершенные терминатором будут выполнены. Если последняя команда не завершена терминатором, то просто происходит переход на новую строку, в которой можно продолжить наборэтой команды. Пример:1:2:factorial(33);8683317618811886495518194401280000000for j:=1:33 product j;8683317618811886495518194401280000000Здесь и в дальнейших примерах строки ввода нумеруются (как в «Reduce»). В этом примере показано два способа вычисления факториала.Второй способ годится не только для вычисления факториала — послеоператора product может стоять любая функция зависящая от итератора цикла j.

Синтаксис «Reduce» позволяет не заключать аргументыфункций в скобки, т.е. допустимо было написать «factorial 33;», но в примерах данного пособия эта возможность не будет использоваться.Функция factorize разлагает на множители полиномы и целые числа. Результат выдает в виде списка состоящего из двухэлементных списков, первый элемент которых — сомножитель, а второй — его кратность.Функция nextprime находит следующее простое число. Пример:factorize(a^3 − b^3);{{a ∗ ∗2 + a ∗ b + b ∗ ∗2, 1}, {a − b, 1}}2: factorize(1042272);{{2,5},{3,2},{7,1},{11,1},{47,1}}3: nextprime(65536);655371:Функция limit вычисляет предел.

Если «Reduce» не может найтипредел, то выдает результат в том же (или почти в том же) виде. Этоотносится не только к функции limit. Пример:1:limit(x^(1/x), x, infinity);limit(x ∗ ∗(1/x), x, infinity)2:limit(a^(1/x), x, infinity);1«Reduce» умеет дифференцировать и интегрировать:1:df(sin(x)^2, x);2 ∗ sin(x) ∗ cos(x)2:int(ws, x);− cos(x) ∗ ∗2Глава 1. Введение5Переменная ws (work space) хранит результат последнего вычисления, т.е. в этом примере сначала продифференцировали функцию sin2 x,а потом результат проинтегрировали.

Результат интегрирования не совпал с исходной функцией, но это в данном примере не является ошибкой. «Reduce» интегрирует с точностью до аддитивной постоянной, аsin2 x = 1 − cos2 x.Функция solve решает алгебраические уравнения:1:solve(a∗ x^2 + b ∗ x + c, x);(√)√− −4ac + b2 + b−4ac + b2 − b, x=x=2a2aПредыдущие примеры продемонстрировали работу с «Reduce» в интерактивном режиме (как с «большим калькулятором»). Но этим еговозможности не исчерпываются. «Reduce» имеет обычный набор управляющих операторов (условные операторы, операторы цикла и перехода),которые позволяют создавать сложные алгоритмы. Логически завершенные части кода можно оформлять в виде процедур. Программы можнозагружать из файлов и результаты расчетов также можно сохранять вфайлы.Организация работы с файлами предоставляет интересную возможность: программа на «Reduce» в процессе своей работы может конструировать новую программу и писать ее в файл.

После закрытия этогофайла она может загрузить его на выполнение, т.е. программа можетконструировать саму себя.Глава 2Лексические элементы языкаПрограмма на Reduce это последовательность из семи типов лексических элементов: идентификаторов, ключевых (зарезервированных)слов, операций, констант, ограничителей, разделителей и комментариев.2.1АлфавитКаждый из лексических элементов является последовательностьюсимволов алфавита.Алфавит языка: символы с ASCII1 кодами (раздел 16.2, стр. 101) 10,13 и с 32 по 126 за исключением 35(#), 38(&), 63(?), 64(@), 91([), 92(\),93(]), 96(‘) и 124(|).

В комментариях и строковых константах допустимывсе символы.2.2ИдентификаторыИдентификатор это последовательность из букв, цифр и символа «_»(подчерк), начинающаяся с буквы. Любой символ, отличный от перечисленных (кроме символа «!»), является признаком конца идентификатора.

Ограничений на длину идентификатора нет, но число значащих символов зависит от реализации системы «Reduce». Прописные и строчныебуквы в идентификаторах не различаются.1American Standard Code for Information Interchange6Глава 2. Лексические элементы языка7Идентификатор может содержать и другие символы (например, «∗»),но им должен предшествовать символ «!»: alpha!+!−beta или !$gamma— допустимые идентификаторы. В системных идентификаторах частоиспользуются специальные символы и по этой причине не рекомендуетсяих использовать в программах.Идентификаторы используются для обозначения констант, переменных, функций, процедур, меток.2.3Ключевые словаКлючевые (зарезервированные) слова (раздел 16.1, стр. 98) используются для обозначения операторов и некоторых других конструкцийязыка, их запрещено использовать в качестве идентификаторов.

Наборключевых слов может зависеть от реализации системы «Reduce».2.4Числовые константыКонстанта целого типа это последовательность десятичных цифр (вообще-говоря произвольной длины). Перед последовательностью можетстоять знак «−» или «+».Рациональные константы это пара целых чисел с операцией делениямежду ними: 77/40.Примеры вещественных констант:3.14,0.314e1,314e − 2,314.e − 2,314.0e − 2,причем цифру 0 перед десятичной точкой, в отличие от таких языковпрограммирования, как C и Pascal, опускать нельзя, т.е.

запись .314e1запрещена.2.5СтрокиСтрока это последовательность символов заключенная в двойные кавычки. Для включения двойной кавычки в строку перед ней необходимопоставить еще одну двойную кавычку.Строки используются в операторах вывода и операторах работы сфайлами.Глава 2. Лексические элементы языка2.68ОперацииВ следующей таблице перечислены встроенные бинарные операциисистемы «Reduce». В скобках указаны другие варианты изображениятех же операций.Операция присвоения:= (setq);Логические операцииor, and, member, memq;Операции отношения= (equal), neq, eq, >= (geq),> (greaterp), <= (leq), < (lessp);Операция подстановкиwhere;Арифметические операции + (plus), − (difference, minus), ∗ (times),/ (quotient), ^ или ∗∗ (expt);Операция конструирования .

(cons).2.7КомментарииТекст от символа «%» и до конца строки или после команды «comment»и до ближайшего терминатора «;» или «$» считается комментарием, т.е.«Reduce» его игнорирует.Комментарии можно использовать для пояснений текста программыи для исключения фрагментов кода в процессе отладки программы. Хотядля исключения значительных фрагментов кода эти средства неудобны,а других средств в «Reduce» нет.2.8ПеременныеКаждая переменная имеет имя и значение. Переменные бывают свободные и связанные.

Значение свободной переменной совпадает с ее именем. Для присвоения переменной значения используются операторы «:=»и «Let».Следующие переменные имеют в «Reduce» фиксированные значения:Глава 2. Лексические элементы языка9e— основание натурального логарифма;i— мнимая единица, т.е. i2 = −1;infinity — бесконечность (∞);nil— в алгебраической моде синоним числа 0;pi— число π;t— true.2.9Алгебраическая и символическая моды«Reduce» написан на языке программирования «Lisp» и позволяетвставки на языке «Lisp». Для этого необходимо включить символическую моду.Значение переменной eval_mode равно текущей моде.Команда symbolic включает символическую моду (эквивалентнаякоманда lisp), если предшествует выражению, то действует только навыражение.Команда algebraic включает алгебраическую моду, если предшествует выражению, то действует только на выражение.Глава 3Списки, массивы, матрицы .

. .3.1Списки.Последовательность любых объектов разделенных запятыми и заключенная в фигурные скобки называется списком. Некоторые функции возвращают результат в виде списка. Следующая таблица содержитосновные функции для работы со списками.first(s)second(s)third(s)rest(s)————cons(a,s)—append(s1, s2) —reverse(s)—part(s, k)—возвращает первый элемент списка s;возвращает второй элемент списка s;возвращает третий элемент списка s;возвращает список с исключенным первым элементом;возвращает список s с добавленным элементом aв начале списка;возвращает объединение списков s1 и s2;возвращает список с обратным по отношению к sпорядком элементов;возвращает k-ый элемент списка.Пример:10Глава 3.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5259
Авторов
на СтудИзбе
421
Средний доход
с одного платного файла
Обучение Подробнее