Смекни!
smekni.com

Входной язык системы MathCAD 7. 0 (стр. 2 из 3)

PRNPRECISSION Число десятичных знаков, используемых оператором WRITEPRN (4)

FRAME Переменная счетчика кадров при работе с анимационными рисунками (0)

Пять последних переменных вводятся набором их имен. Значения системных переменных, как и обычных, могут быть в дальнейшем изменены путем присваивания им новых значений. К примеру, значение е можно изменить так, что эта переменная будет означать заряд электрона, а вовсе не основание натурального логарифма. Однако рекомендуется этого не делать во избежание двойного истолкования таких переменных.

Операторы

Операторы представляют собой элементы языка, с помощью которых можно создавать математические выражения. К ним, например, относятся символы арифметических операций, знаки вычисления сумм, произведений, производной и интеграла и т. д. После указания операндов (параметров операторов) операторы становятся исполняемыми по программе блоками. MathCAD позволяет задавать и свои новые операторы.

Функции встроенные и задаваемые пользователем

MathCAD имеет множество встроенных функций, которые обладают особым свойством: в ответ на обращение к ним по имени с указанием аргумента (или списка аргументов) они возвращают некоторое значение — символьное, числовое, вектор или матрицу. В систему встроен ряд функций, например функция вычисления синуса sin(x) аргумента х, логарифма\п(х) и т. д. Наряду со встроенными функциями могут задаваться и функции пользователя, отсутствующие в MathCAD. Благодаря встроенным функциям обеспечивается расширение входного языка системы и его адаптация к задачам пользователя.

Математические выражения

Функции (наряду с операторами) могут входить в математические выражения. Например, в выражении

У := 2*ln(x)+i

Y — переменная, 1 и 2 — числовые константы,* и+ — операторы, ln(x) — встроенная функция с аргументом х. Напоминаем, что встроенные функции в данной книге выделяются полужирным шрифтом (за исключением примеров их записей в документах, где специальных выделений нет).

При выполнении символьных операций переменные р и е используются только в символьном виде. Это значит, что их числовые значения не вычисляются при выводе результатов вычислений. К примеру, число 2л=6. 141... выводится как 2п, а не как приближенное численное значение.

Присваивание переменным значений

Обычные переменные отличаются от системных тем, что они должны быть предварительно определены пользователем, т. е. им необходимо хотя бы однажды присвоить значение. В качестве оператора присваивания используется знак:=, тогда как знак = отведен для вывода значения константы или переменной. Попытка использовать неопределенную переменную ведет к выводу сообщения об ошибке — переменная окрашивается в ярко-красный цвет. Существует также жирный знак равенства, который используется либо как признак неравенства в операциях сравнения, либо как оператор приближенного равенства (в прежних версиях этот знак имел вид =).

В версии MathCAD 7. 0 допустимо при первом присваивании вводить знак = (например, х=123). Система сама заменит его на знак: =. Эта возможность скорее исключение, чем правило; знаком присваивания все же является знак: =.

Если переменной присваивается начальное значение с помощью оператора: =, такое присваивание называется локальным. До этого присваивания переменная не определена и ее нельзя использовать. Однако с помощью знака = (три горизонтальные черточки) можно обеспечить глобальное присваивание, т. е. оно может производиться в любом месте документа. К примеру, если переменной присвоено таким образом значение в самом конце документа, то она будет иметь это же значение и в начале документа. Разумеется, в дальнейшем значение можно изменить и с помощью операции локального присваивания (см. рис. 11. 1).

Рис. 11.1Особенности локального и глобального присваивания переменным их числовых значений


Переменные могут использоваться в математических выражениях, быть аргументами функций или операндом операторов. Далее мы рассмотрим особые виды переменных, в частности индексированные (элементы векторов и матриц), а также переменные с заданными пределами их изменения (ранжированные переменные).

Статус присваивания не следует путать со статусом самих переменных. Все переменные, описанные выше, являются глобальными, поскольку можно определять их в любом месте документа и также в любом месте изменять их значение. Локальные переменные в системе MathCAD содержатся в телах функций пользователя. Эти функции будут рассмотрены ниже.

Переменные могут быть и размерными, т. е. характеризоваться не только своим значением, но и указанием физической величины, значение которой они хранят. Для присваивания значений таким переменным используется знак =. На рис. 11. 2 представлены примеры работы с размерными переменными.

Проведение расчетов с размерными величинами и переменными особенно удобно при решении различных физических задач. При этом правильная


Рис. 11.2Примеры задания и применения размерных переменных

размерность результата является дополнительным фактором, свидетельствующим о корректности таких расчетов

Использование незаданной переменной ошибочно Такая переменная отмечается красным цветом (в предшествующих версиях MathCAD — черным фоном) Использование несуществующих переменных в математических выражениях может привести к различным ошибкам Все они диагностируются и требуют исправления для продолжения вычислений

11.2. Ранжированные переменные и таблицы вывода

Задание ранжированных переменных

Ранжированные переменные — особый класс переменных, который в системе MathCAD зачастую заменяет управляющие структуры, называемые циклами (однако полноценной такая замена не является) Эти переменные имеют ряд фиксированных значений (либо целочисленных, либо в виде чисел), с определенным шагом меняющихся от начального значения до конечного.

Ранжированные переменные характеризуются именем и индексом каждого своего элемента Для создания ранжированной переменной целочисленного типа используется выражение

NameNbegin Nend

где Name — имя переменной, Nbegin — ее начальное значение, Nend — конечное значение, — символ, указывающий на изменение переменной в заданных пределах (он вводится знаком точки с запятой,). Если Nbegin < Nend, то шаг изменения переменной будет равен+ 1, в противном случае -1

Для создания ранжированной переменной общего вида используется выражение

Name = Nbegin, (Nbegin+ Step) Nend

Здесь Step — заданный шаг изменения переменной (он может быть положительным, если Nbegin < Nend или отрицательным в противном случае).

Таблицы вывода

Ранжированные переменные широко применяются для представления числовых значений функций в виде таблиц, а также для построения их графиков. Любое выражение с ранжированными переменными после знака равенства инициирует таблицу вывода. Несколько таких таблиц показано на рис. 11. 3.


Рис. 11.3Примеры типового применения ранжированных переменных

Полезно учитывать некоторые свойства таблиц вывода:

• число строк в них не может быть больше 50 (большие таблицы придется составлять из нескольких малых);

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

• при использовании в таблице единиц размерности все данные таблицы будут содержать единицы размерности (поделите результат с размерными переменными на размерность для указания ее только в заголовке таблицы вывода);

Есть три способа показать значения векторов:

Х, = выводится обычная таблица вывода;

Х= выводится вектор, если число его элементов меньше 10;

Х= выводится таблица вывода со слайдером, если число элементов вектора больше 10.

В таблицы вывода можно и вставлять числовые значения, и корректировать их. Естественно, это меняет значения элементов соответствующего вектора.

Применение ранжированных переменных

Важно отметить, что в сущности задание ранжированных переменных эквивалентно заданию конечных циклов. Сами ранжированные переменные являются векторами, что видно из выдачи их значений (столбец со всеми значениями переменных). Это означает, что объем памяти, занимаемый такими переменными, больше занимаемого обычными переменными.

Индексированные переменные, образующиеся в результате задания ранжированных переменных, могут применяться в последующих фор-мульных блоках. Однако в этих блоках необходимо соблюдать соответствие результатов (конечных и промежуточных) векторному типу этих переменных.

Привыкшие к обычному программированию пользователи часто забывают, что ранжированная переменная — вектор. Поэтому они пытаются выполнять с такими операциями действия, корректные лишь для обычных (скалярных) переменных. Например, задают выражение вроде f: =i* 2, используя обычную переменную f, что приведет к явной ошибке — система укажет (красным цветом), что f не соответствует векторному типу. Однако если использовать выражение, например, вида

f,:= i^2

то будет получен новый вектор с именем f, элементы которого в нашем случае являются квадратами значений элементов вектора i. Более подробно особенности задания и применения векторов рассматриваются далее.

Ранжированные переменные широко применяются при построении графиков. Например, для построения графика некоторой функции f(x) прежде всего надо позаботиться о создании ряда значений переменной х, для этого она должна быть ранжированной.

11.3. Массивы, векторы и матрицы