8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 23 24 25 26 27 28 29 ... 177

2.5.8. Создание оператора пользователя

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

В Mathcad существуют операторы двух типов: унарные и бинарные. Действие унарных зависит от одной переменной, и к ним относятся, например, оператор квадратного корня или модуля числа. Бинарный оператор определяется в общем случае функцией двух переменных.

Чтобы создать собственный унарный оператор, выполните следующую последовательность действий.

1.Задайте имя будущего оператора. Сделать это можно по тем же правилам, что и при определении функции. Однако учитывая то, что в математике операторы принято обозначать специальными символами, лучше для этого использовать подходящий значок, нежели слово. Некоторые специальные символы можно ввести и с клавиатуры, правда, в большинстве случаев для этого придется применять довольно тонкие технические ходы (что связано с тем, что в формульном режиме сочетание клавиш, соответствующее, например, символу S, вводит оператор ранжированной суммы), которые были рассмотрены в подразл. 2.2.3. Однако таким образом можно задать лишь несколько нематематических символов. В том случае, если вам нужно определить оператор в виде, например, символа суммы, можно попробовать перейти в текстовом режиме на шрифт Symbol (Символ). Однако можно поступить и проще. Чтобы ввести в документ некоторый редкий математический значок, нужно обратиться к разделу QuiekSheets (Шпаргалки) Ресурсов Mathcad. Здесь в списке следует задействовать ссылку Extra Math Symbols (Дополнительные математические символы). При этом откроется таблица, содержащая 55 символов, применяющихся для обозначения различных операций в математике. Скопировав нужный значок, вставьте его в документ.

2.Откройте скобки и пропишите переменную, преобразованием которой определяется действие оператора. Создадим, например, оператор пересчета утла в радианах (а именно в таком форме работает по умолчанию с углами Mathcad) в градусы. Для обозначения задаваемого оператора используем символ в виде острого угла рассмотренной выше таблицы Extra Math Symbols (Дополнительные математические символы):

Ах)

3.Далее введите оператор присваивания и пропишите то математическое действие, которое должен выполнять создаваемый оператор. В нашем случае выражение функции, описывающей оператор:

/(х):=--180 к

4.Описанные выше действия привели к заданию функции пользователя, пересчитывающей радианы в градусы, но ни в коей мере не оператора. Чтобы создать непосредственно оператор, введите специальную заготовку В виде двух Черных маркеров, расположенную на панели Evaluation (Выражение):


Заготовка эта имеет два типа, отличающиеся взаимным расположением оператора и переменной. Первый тип. Prefix Operator (Оператор-приставка), <fx», требует введения имени описывающей оператор функции на первом месте. Второй тип, Postfix Operator (Оператор-суффикс), требует обратной последовательности задания элементов (рис. 2.11),

Рис. 2.11. Задание унарного оператора

Задание бинарного оператора ничем принципиально не отличается от определения унарного. Рассмотрим его на примере определения оператора, вычисляющего длину гипотенузы прямоугольного треугольника подлине катетов.

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

2. Далее следует ввести одну из двух возможных форм заготовки бинарного оператора пользователя. Первая форма, Infix Operator, продолжает идею унарных заготовок И содержит три маркера:

В первый вводится величина переменной X, во второй - имя описывающей оператор функции, в третий — значение переменной у.

Вторая форма бинарной заготовки, Tree Operator, более необычна и служит для представлен ия оператора в форме графе

Мри такой форме определения оператора имя функции вводится в вершину графа, величины переменных - в маркеры ветвей.

Пример 2.32. Создание бинарного оператора

I

3 V 2 * 3.606

V = 3.606 3 1


2.6. Управление вычислениями

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

2.6.1. Режимы вычислений

В Mathcad существует два режима вычислений: автоматический и ручной. В вышеприведенных примерах предполагалось, что включен определенный по умолчанию автоматический режим. В большинстве случаев использование его более оправдано, так как при этом результаты вычислений появляются в режиме реального времени, что позволяет производить корректировки н находить ошибки непосредственно при создании алгоритма решения задачи. Однако иногда автоматический режим может быть весьма неудобен. Проблемы могут возникать в связи с тем, что любое изменение в предшествующих условиях привошгт к пересчету последующих выражений докуме(гта. Это обстоятельство, конечно, не играет никакой роли, если решаемая вами задача не слишком сложна в вычислительном плане — в этом случае пересчет займет неуловимые доли секунды. Однако если вы используете численные алгоритмы, требующие значительного числа операций (например, кратного интегрирования или решения жесткой системы дифференциальных уравнений), то время расчета может быть заметным лаже на мощном современном компьютере. Естественно, что в этом случае ждать после замены одной буквы или числа при редактировании, пока просчитается весь документ, совершенно неэффективно. Поэтому стоит перейти в ручной режим (manual mode) выполнения расчетов. Чтобы это сделать, в подменю Calculate (Вычислить) меню Tools (Инструменты) отиыите флажок Automatic Calculation (Автоматические вычисления).

При работе в ручном режиме, при задании выражений, вместо ответов после операторов вывода будут отображаться черные маркеры. Чтобы произвести расчет, системе нужно дать ссютветствуютлгую команду. Однако сделать это можно по-разному.

□Чтобы пересчитать все формулы документа, используйте команду Calculate Worksheet (Подсчитать документ) подменю Calculate Меню Tools.

□Зачастую иа одном документе располагается несколько не связанных напрямую вычислительных алгоритмов. При этом, естественно, совершенно нецелесообразно пересчитывать их все, если внесенные изменения коснулись лишь одного В подобной ситуации вместо команды Calculate Worksheet лучше использовать команду Calculate Now (Подсчитать). Данная команда пересчитывает формулы только видимой части документа. Регулировать ее работу можно, изменяя формат листа. Кстати, задействовать команду Calculate Now можно и Не обращаясь к соответствующему меню. Для этого следует либо нажать клавишу F9 на клавиатуре, либо использовать специальную кнопку панели Standard (Стандартные) (рис. 2.12).



0 ... 23 24 25 26 27 28 29 ... 177