Warning: include(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include_once(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82

Warning: include_once(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82
операторы | Учебники

Записи с меткой «операторы»

Пакет поддержки стандарта MathML

Пакет поддержки стандарта MathML
Для представления математической информации на страницах Интернета в последние годы был создан специальный язык MathML. Пока для большинства пользователей MathML — просто «экзотика», но так как наряду с XML его поддерживает World Wide Web Consortium, его вынуждены поддерживать все солидные фирмы — причем не только создающие системы Компьютерной математики. Среди них такие крупные корпорации, как Intel, IBM и Microsoft. В Maple 15 предусмотрена новая возможность поддержки стандарта MathML 2.O. Для такой поддержки используются MathML Viewer (см. урок 2) и пакет MathML.
Пакет MathML дает минимальный набор функций для использования языка MathML:
> with(HathML);
[Export, ExportContent, ExportPresentation, Import, ImportContent]
В нем всего 5 функций, что позволяет разобрать их достаточно детально. Первые три функции служат для экспорта выражений:

  •  Export(expr) — преобразует Maple-выражение ехрr в параллельное MathML-выражение;
  •  ExportContent (expr) — преобразует Maple-выражение ехрr в MathML-выра-жение в формате содержания;
  •  ExportPresentation (ехрr) -преобразует Maple-выражение expr в MathML-выражение в формате представления.

Еще две функции служат для импорта строки в формате MathML и его преобразования в Maple-выражение:
Import(mnlstring) и ImportConterrt(mmlstnng)
Следующий пример наглядно иллюстрирует применение функций пакета расширения MathML для преобразования математического выражения а*х+b вначале в запись на MathML, а затем преобразование этой записи str в Maple-выражение:
> str:=MathML[Export]
( а*х + b );
str := "<math xmlns-http://www.w3.org/1998/Math/MathML’>   <semanticsXmrow xrfe f=’id5’xmrow xref=’id3’xnii xref=’idl ‘>a</mi><mo>&InvisibleTimes;</moXml xref=’id2′>x</mi></mrowxmo>+</mo><mixref=’id4’>b</mi>
</mrowXannotati on-xml encodrag=’MathML-Content’><apply id=’id5′><plus/><apply id=’id3’xtft mes/xci id=’idl’>             a</ci><ci id=’id2′>x</cix/applyxci id=’id4′>b</ci></apply>    </annotation-xml>     <annotationencoding=’Maple’> a*x+b                 </annotationx/semantics ></math>" > Import(str):a x + b
Этот пример показателен тем, что дает представление о виде записей на языке MathML. далее…

Оценивание переменных и операции присваивания

Оценивание переменных и операции присваивания
Специфику математических выражений в системе Mathematica составляет возможность их оценивания и изменения в соответствии с заложенными в ядро системы правилами математических преобразований. В итоге после изменения значение выражения, которое присваивается переменной, может быть совсем иным, чем до оценивания. Поэтому в целом для определения переменных используют описанные ниже конструкции.
Основная функция Set [ Ihs, rhs ] имеет аналогичные по действию упрощенные операторы:

  • Ihs = rhs — вычисляет правую часть rhs и присваивает ее значение левой части Ihs. С этого момента Ihs замещается на rhs всюду, где бы этот идентификатор ни появился;
  • {11, 12, …} = {rl, г2, …} — вычисляет ri и назначает полученные результаты соответствующим 11.

Функция задержанного присваивания SetDelayed[lhs,rhs] может быть заменена аналогичным по действию оператором Ihs : =rhs, который назначает правой части rhs роль отложенного значения левой части Ihs. При этом rhs содержится в невычисленной форме. После этого, когда появляется идентификатор Ihs, он заменяется на значение rhs, вычисляемое каждый раз заново.
При задержанном (отложенном) присваивании вывода нет, тогда как при обычном немедленном присваивании lhs=rhs значение rhs вычисляется немедленно и результат выводится в строку вывода.
Функция присваивания верхнего уровня UpSet [Ihs, rhs] применяется в виде lhs A =rhs. При этом левой части Ihs присваивается значение правой части rhs, причем это значение связывается с символами, которые появляются на первом уровне вложенности в Ihs.
И, наконец, функцию отложенного присваивания верхнего уровня UpSetDelayed[lhs, rhs] может заменить оператор lbs^ :=rhs. При этом величина rhs выполняет роль отложенного значения Ihs, и связывается это присваивание с символами, которые появляются на первом уровне вложенности в Ihs.
Отметим еще одну важную конструкцию SetOptions [s, namel->valuel, name2->value2, . . . ], которая устанавливает для символа s указанные опции, определяемые по умолчанию.
Применение различных типов операций присваивания способствует большей гибкости системы. Различия между этими операциями на первый взгляд несущественны, но они принципиальны, и это станет понятно после более детального знакомства с символьными преобразованиями и приобретения практики работы с системой. далее…

Комплексные числа

Комплексные числа
Многие математические операции базируются на понятии комплексных чисел. Они задаются в форме
z=Re(z)+I*Im(z)
или
z=Re(z)+i Im (z)
где знак I (i) — мнимая единица (квадратный корень из -1), Re (z) — действительная часть комплексного числа, a Im (z) — мнимая часть комплексного числа. Пример задания комплексного числа:
2 + I3
или
2 + 3*I
Мнимая часть задается умножением ее значения на символ мнимой единицы I. При этом знак умножения * можно указывать явно или заменить его пробелом — в последнем случае комплексное число выглядит более естественным. Функции Re [ z ] и Im [ z ] выделяют, соответственно, действительную и мнимую части комплексного числа z. Это иллюстрируют следующие примеры:
Re[3+2*1]
3
Im[3+2 I]
2
Большинство операторов и функций системы Mathematica работают с комплексными числами. Разумеется, это расширяет сферу применения системы и позволяет решать с ее помощью различные специальные задачи — например, относящиеся к теории функций комплексного аргумента. Комплексные числа широко используются в практике электро- и радиотехнических расчетов на переменном токе.
Символьные данные и строки
Символьные данные в общем случае могут быть отдельными символами (например a, b,…, z), строками (strings) и математическими выражениями ехрг (от expression — выражение), представленными в символьном виде.
Символьные строки задаются цепочкой символов в кавычках, например "sssss". В них используются следующие управляющие символы для строчных объектов:

  • \n— новая строка (line feed);
  • \ t — табуляция.

Это иллюстрируется следующими примерами:
"Hello my friend!"
Hello my friend!
"Hello\nmy\nfriend!"
Hello
my
friend!
"Hello\tmy\tfriend!"
Hello my friend;
Следует помнить, что управляющие символы не печатаются принтером и не отображаются дисплеем, а лишь заставляют эти устройства вывода выполнять определенные действия. Mathematica имеет множество функций для работы со строками, которые будут описаны в дальнейшем.
Выражения
Выражения в системе Mathematica обычно ассоциируются с математическими формулами, как показано в следующей таблице.

далее…

Палитры математических операторов и функций

Палитры математических операторов и функций
У многих программ интерфейс предусматривает вывод панелей с кнопками быстрого управления — уже привычными стали панели инструментов и панели форматирования. С одной стороны, эти панели упрощают работу, особенно для начинающих пользователей, но, с другой стороны, они загромождают экран.
Тогда как большинство фирм-разработчиков программ компьютерной математики пошло по пути уменьшения числа таких кнопок, Wolfram Research сделала решительный шаг и вообще отказалась от вывода инструментальной панели с подобными кнопками. Причина такого шага вполне очевидна — запомнить назначение множества кнопок по рисункам на них оказалось ничуть не проще, чем иметь дело с множеством имен команд в обычном меню. Однако все же надо признать, что некоторое количество кнопок быстрого управления стоило бы оставить.
Однако, сделав шаг назад, упомянутая фирма одновременно сделала два шага вперед — она ввела выбираемые пользователем и перемещаемые по экрану в любое место инструментальные палитры со множеством пиктограмм ввода математических символов, функций и команд управления системой. Они выводятся с помощью меню File | Palettes (Файл | Палитры). далее…

Программирование и ядро системы

Программирование и ядро системы
Средства программирования и ядра системы Mathematica дают ряд новых возможностей:

  • функции NestWhile и NestWhileList, позволяющие обобщения функции FixedPoint;
  • функции PadLeft и PadRight;
  • поддержку перекрытия и расширения подсписков, генерируемых функцией Partition;
  • функции ListConvolve и ListCorrelate;
  • обобщение функций Take, Drop и связанных с ними функций до любой размерности и любых шагов по индексу;
  • поддержку функции All для определения частей на определенных уровнях в выражениях;
  • расширения в функции Mod для поддержки кириллических списков;
  • контекст Developer, предоставляющий доступ к внутренним функциям системы;
  • контекст Experimental, предоставляющий доступ к функциям, находящимся в стадии разработки.

Операции ввода и вывода
Операции ввода и вывода в Mathematica 8 дают следующие новые возможности:

  • оптимизированный разрыв строк для удобства ввода выражений и программ;
  • динамический текстовый курсор, обеспечивающий визуальную непрерывность ввода;
  • динамические цветные подсказки при вводе ограничивающих скобок;
  • автоматическое замещение вводимых ключевых последовательностей специальными символами или другими объектами;
  • новый альтернативный синтаксис для извлечения частей выражений и применения функций;
  • внедрение ячеек в текст;
  • существенно ускоренный вывод строковых выражений.

Системный интерфейс
На уровне системного интерфейса в Mathematica 8 обеспечены:

  • поточный вывод табличных данных;
  • развитая поддержка преобразования ячеек в HTML;
  • дополнительная поддержка вывода в формате ТеХ;
  • ускорено взаимодействие с внешними программами через MathLink;
  • поддержка дополнительных наборов символов, включая китайские и корейские;
  • экспериментальная поддержка вывода на экран в режиме реального времени;
  • экспериментальная поддержка удаленных файловых систем через MathLink;
  • экспериментальная поддержка всплывающих кнопочных палитр.

 
Что нового мы узнали
В этом уроке мы научились:

  • Классифицировать системы компьютерной математики.
  • Оценивать аппаратные ресурсы, нужные для работы с системами Mathematiса 3 и 4.
  • Использовать Интернет-сайт фирмы Wolfram Research — разработчика систем Mathematica.
  • Использовать некоторые средства диалога с системой.
  • Выполнять проверку некоторых решений.
  • Выполнять инсталляцию систем Mathematica 3 и 4.
  • Запускать системы Mathematica 3 и 4.
  • Выполнять прямые операции с ядром систем.
  • Распознавать многочисленные отличительные особенности Mathematica 8.

Интерфейс системы

  • Строка меню и окно редактирования документов
  • Палитры математических операторов и функций
  • Понятие о документах в форме notebooks
  • Особенности интерфейса Mathematica 8
  • Основные виды файлов и пакеты расширения
  • Работа с файлами
  • Печать документов
  • Основные понятия о документах и их стилях
  • Понятие о ячейках документов
  • Манипуляции с ячейками
  • Вставка различных элементов
  • Управление процессом вычислений
  • Команды поиска и замены
  • Управление расположением окон
  • Справочная база данных

Прежние версий системы Mathematica имели довольно скромный стандартный интерфейс, характерный для приложений MS-DOS. Однако в версиях Mathematica 3/4 интерфейс был существенно переработан. В этом уроке подробно рассматривается интерфейс систем Mathematica 3/4. Освоение интерфейса не менее важно, чем освоение чисто математических возможностей системы, поскольку именно использование всех возможностей интерфейса позволяет готовить вполне современные документы, отличающиеся высоким качеством визуализации.
Строка меню и окно редактирования документов
До сих пор разработчики пользовательского интерфейса математических систем по существу копировали стандартный интерфейс программ из комплекса Microsoft Office 95/97, в частности, самого популярного текстового процессора Word 95/97. Разработчики интерфейса пользователя систем Mathematica 3/4 отошли от этой традиции.
Нетрудно заметить, что пользовательский интерфейс систем Mathematica 3/4 реализует отдельный вывод своих элементов — окон (включая основное окно редактирования), панелей, палитр знаков и т. д. Это позволяет располагать их в любых местах экрана, что особенно удобно при работе с дисплеями, имеющими большой размер изображения — от 17 дюймов по диагонали и выше. При работе с дисплеями, имеющими небольшой экран (14 или 15 дюймов) и стандартном разрешении 640×480 пикселей раздельный вывод элементов интерфейса скорее неудобен, поскольку приходится тщательно располагать их в нужных местах и индивидуально подстраивать размеры отдельных окон и палитр. Однако после настройки элементы интерфейса выводятся в том виде, как это было задано.
Главное окно системы имеет крайне невзрачный вид, поскольку не содержит ничего, кроме строки заголовка и строки меню.
Справа и снизу большого окна редактирования находятся линейки прокрутки с характерными ползунками, управляемыми мышью. Они предназначены для скроллинга текстов больших документов, если последние не помещаются в видимой части окна. далее…

Улучшенные математические возможности

Улучшенные математические возможности
Математические возможности системы Mathematica 8 существенно пополнены и улучшены. В частности, обеспечены следующие возможности:

  • прямая поддержка линейной алгебры разреженных матриц;
  • экспериментальная поддержка кванторного исключения с использованием цилиндрического алгебраического разложения;
  • экспериментальная поддержка символьной оптимизации;
  • быстрая свертка и корреляция для массивов любого размера и размерности;
  • новые улучшенные алгоритмы для преобразований Фурье;
  • ускоренное вычисление полиномиальных уравнений;
  • новые алгоритмы для функции минимизации FindMinimum;
  • расширение возможностей матричных преобразований;
  • алгебраическая вычислительная поддержка для функций символьных преобразований Simplify, FunctionExpand и связанных с ними других функций;
  • расширение возможностей функций преобразования FullSimplify и FunctionExpand;
  • упрощение полиномиальных и других неравенств;
  • полная улучшенная поддержка символьных преобразований Лапласа и Фурье;
  • расширенные возможности решения трансцендентных уравнений;
  • ускоренное неоднократное дифференцирование;
  • поддержка ряда новых специальных функций (Дирака, Струве, обобщенных логарифмов, двумерных гипергеометрических функций Аппеля, полилогарифмов Ньелсена, гармонических функций, различных констант и т. д.);
  • новые оптимизированные методы для оценивания е, n и других констант с очень высокой точностью;
  • полная поддержка для непрерывных дробей и периодических цифровых последовательностей ;
  • прямая поддержка поразрядных операций.

Из видно, что на преобразование Фурье массива 500×500 элементов Mathematica 8 затратила около 2 с. Для сравнения отметим, что Mathematica 3 выполнила ту же работу за 11 с, то есть ускорение преобразования Фурье оказывается более чем пятикратным.
Рисунок иллюстрирует возможности выполнения интегральных преобразований Лапласа и Фурье в символьном виде.
Некоторые другие примеры использования, характерные для системы Mathematica 8, можно найти на Интернет-странице фирмы Wolfram.
 
Улучшенная поддержка средств графики и звука
Графика всегда была козырной картой систем Mathematica. В новой версии системы также реализованы многочисленные новые возможности. далее…