Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

8. Mathematica. Структура выражения. Функции, ее определяющие




8. Mathematica. Структура выражения. Функции, ее определяющие

представле­ние выражения в виде Head [subexprj, subexpr2,..., subexprn] (1), где Head - голова выражения, subexpri, i = 1,..., n - подвыражения перво­го уровня, которые, в свою очередь, являются выражениями и также имеют вид (1), и т. д. вплоть до атомарных объектов. В пакете Mathematica все есть выражение. Вид (1) имеют уравнения, неравенства, операторы, более привычные для нас в традиционной мате­матической нотации, а также функции, структуры данных, команды - любая информация входной вычисляемой ячейки является выражением. Результат работы Ядра - выходная ячейка - также содержит информацию вида (1), то есть выражение. Любая функция или команда, независимо от того, является ли она встроенной или была определена пользователем, имеет вид (1). При этом голова выражения Head является именем функции, а подвыражения, за­писанные в скобках - ее аргументами. Для вызова функции используют различную форму ее записи. Пол­ная форма функции совпадает с полной формой выражения (1). Функции одного аргумента могут быть записаны в префиксной форме, с использованием символа @ после имени функции, либо постфиксной форме, записывая имя функции после аргумента и разделяя аргумент и функцию символом //.

9. Mathematica. Назовите не менее пяти видов выходных форматов выражения.

Количество подвы­ражений первого уровня указанного выражения можно определить при помощи функции Length [expression] Функция Level [expression, levelspec] возвращает список подвыра­жений выражения expression, находящихся на указанном уровне levelspec. Аргумент levelspec иначе называют спецификатором уровней. Спецификатор уровней levelspec используется в аргументах функ­ций Apply, Cases, Count, FreeQ, Level, Map, Maplndexed, Position, Re­place, Scan. Количество уровней, или глубину выражения определяет функция Depth [expression]. Определим подвыражения выражения Ехрг, находящиеся на каждом уровне. Для этого используем стандартную конструкцию повторения Do [expression, iterator]. Функция Print [expression] позволит увидеть ре­зультаты вычисления каждого шага цикла Итераторы используются в аргументах функций Sum, Product, Range, Table, Do. Почти такой же результат, как и при использовании оператора Do, дает функция Table [expression, iterator]. Ее преимущество состоит в том, что Table возвращает список вычисленных выражений expression при каждом значении локальной переменной. Элементы этого списка из­влекаются при помощи встроенных функций пакета. Получить часть выражения можно также при помощи функции Take. Она используется в виде Take [expression, sequencespec]. Второй аргумент функции называют спецификатором последовательности. Спецификатор последовательности указывается в аргументах функций Take, Thread, Drop, Ordering, StringDrop, StringTake

Функция TreeForm [expression] позволяет получить выражение в виде дерева.

Определить позицию подвыражения можно при помощи функции Position [expression, pattern]. Она возвращает список позиций подвыражений выражения expression, соответствующих образцу pattern. Для извлечения частей выражения используются функции Part, Ex­tract, Take, Cases. Наиболее часто употребляется функция Part. При извлечении под­выражения первого уровня она имеет вид Part [expression, position], или в операторной форме expression [[ position ]]

10. Mathematica. Атомарные объекты, входной формат и полная форма каждого вида

Выражение, не содержащее подвыражений, называют атомарным. Тестирует выражение на принадлежность к атомарным функция AtomQ. Это булева функция, или тест-функция, она принимает только два значения: True либо False. Длина атомарного выражения, или число его подвыражений, равна нулю, глубина (количество уровней) - единице. Атомарные объекты имеют вид Head [atom], где Head - голова вы­ражения, atom - содержимое атомарного объекта, не являющееся подвы­ражением. Голову атомарных выражений, как обычно, вычисляет функция Head {Integer, Rational, Real, Complex, Symbol, String} Входной формат выражения вводится в In []-секцию пакета. Различают его формы: InputForm, когда ключевые слова и символы располагаются последо вательно друг за другом (1D), StandardForm, реализующая двумерную (2D) структуру выражения, что достигается использованием палитр (Palettes) ввода или комбина ций «горячих» клавиш,

• TraditionForm, отображающая выражение в традиционной математи ческой нотации,

• FullForm, представляющая выражение в том виде, в котором с ним работает Ядро системы. Существуют также функции, определяющие свойства атомарных объектов. Наиболее употребимые из них - IntegerQ, EvenQ, OddQ, PrimeQ, Positive, Negative, Nonnegative, NumberQ, NumericQ, StringQ.

 

11. Mathematica. Функции-конверторы, позволяющие преобразовывать тип атомарных объектов.

ToExpression   преобразует данные типа String в выражение.

To String     возвращает вычисленное выражение с головой String.

Rationalize [х, eps]              дает рациональное приближение вещественного х с точностью eps.

Floor           возвращает наибольшее целое, не превосходящее             указанное рациональное или вещественное число.

Ceiling        возвращает наименьшее целое, превосходящее указанное рациональное или вещественное число.

Round        дает целое число, ближайшее к указанному рациональному или вещественному.

N                преобразует в тип Real или Complex.

Chop          в указанном выражении заменяет нулями все числа,         меньшие 10-10.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...