Главная страница

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


Скачать 1.81 Mb.
НазваниеMathcad содержит большую библиотеку программ и пакетов расши рения, которые позволяют исключить рутинное программирование задач. Существенным отличием от других языков программирования является запись вычисляемых выражений
Дата18.03.2022
Размер1.81 Mb.
Формат файлаpdf
Имя файлаЛекции.pdf
ТипДокументы
#402665

Введение
Система MathCAD по своим возможностям достаточна для математического опи- сания практически любой задачи электротехники и электроэнергетики. Отличаясь просто- той записи, система MathCAD содержит большую библиотеку программ и пакетов расши- рения, которые позволяют исключить рутинное программирование задач. Существенным отличием от других языков программирования является запись вычисляемых выражений.
Они записываются так, как учат в школе.
Простота записи вычисляемых выражений позволяет применять MathCAD для про- граммирования простых задач уже через два – три часа после знакомства с системой через клавиатуру. Многолетний опыт общения со студентами подтверждает это.
Освоение системы MathCAD происходит постепенно. Сначала студент решает про- стые арифметические выражения. Почувствовав вкус, применяет систему для решения более сложных задач с графическим и табличным выводом результатов. Начиная с третье- го курса, все контрольные и курсовые работы выполняются в системе MathCAD. Причем создаются достаточно сложные программы, такие как универсальные расчета нормальных режимов в сложнозамкнутых неоднородных электрических сетях с количеством узлов сто-двести и более, коротких замыканий, электромеханических переходных процессов и т.д.
Важным достоинством системы является возможность работать с текстовыми ре- дакторами, копировать текстовые фрагменты, включая рисунки и таблицы, из Word и Ex- cel.
В настоящем пособии рассматриваются основные приемы применения системы
MathCAD для задач электротехники и электроэнергетики, решаемых студентами специ- альности 100400 «Электроснабжение» в Якутском государственном университете им.
М.К. Аммосова.
Установка MathCAD
Для начала работы с программой MathCAD необходимо установить ее на свой компьютер. Из последних версий MathCAD наиболее продвинутой является MathCAD
2001, выпущенной в трех вариантах, два из которых можно рекомендовать студентам:

MathCAD 2001 Standart – упрощенный вариант, удобный для большинства поль- зователей, в том числе и для студентов младших курсов электроэнергетических специальностей;

MathCAD 2001 Professional – профессиональный вариант, предназначенный для математиков и научно-педагогических работников. Эта версия рекомендуется для студентов старших курсов, так как предыдущая не решает некоторые задачи.
После окончания установки нужно не забыть перед первым запуском произвести регистрацию компонентов. Это делается при помощи соответствующей строчки в меню с программой MathCAD.

2
Теперь запустите саму программу MathCAD из того же меню.
В открывшемся окне перед Вами чистый лист бумаги, на котором Вы собственно и будете печатать все Ваши будущие шедевры.
Начните с простого – посмотрите, есть ли у Вас перед глазами
панель вывода па-
литр математических знаков
.
Ее можно было бы точнее назвать панелью Математика,
но такая кнопка есть в строке Меню. В панели вывода меню математических знаков со- держатся меню практически всех возможных действий с числовыми и символьными ма- тематическими выражениями, а также их графическими изображениями.
Панель вывода палитры матема- тических знаков может не оказаться при вызове MathCAD. В этом случае ее мож- но вызвать через строку Меню, кнопкой
Вид (View), далее кнопками Панели
(Toolbars) и Математика (Math).
При помощи этой панели можно будет открыть все палитры математических зна- ков, необходимые для работы.
Первоначально нажмите на этой панели на
палитру Кальку-
лятор
Калькулятор
–палитра, ко- торая позволит решать основные типы несложных математических задач.
На этой палитре представле-

3 ны основные математические операции, большинство из них есть на обычных калькуля- торах и операции с ними, думаем, не составят никакого труда для начинающего пользова- теля системы MathCAD. Ниже будут показаны возможности кнопок палитры.
Окно документа
Сразу после запуска MathCAD открывается окно документа (рис. 1), в котором первой строкой сверху выводится строка заголовка: в русифицированной версии –
MathCAD professional [без названия:1], в английской – MathCAD professional [Untitled:1], где 1 – номер документа. рис. 1. Окно MathCAD сразу после запуска.
Далее сверху вниз:
строка меню, в которой содержатся пункты меню с различными командами;
панель инструментов, содержащая кнопки с наиболее часто выполняемыми ко- мандами;
панель форматирования, позволяющая придать документу тот или иной вид, со- держащая кнопки шрифтов, алфавитов, и т.д.;
панель вывода палитр математических знаков.
Красным знаком
+ на поле документа отмечен курсор ввода. Если нажать клавишу

4 какой-либо цифры или буквы, то она появится на месте курсора ввода.
С правой стороны поля документа и снизу имеются полосы прокрутки, позволяю- щие просматривать документ, если он не помещается весь в окне.
Изучать панели будем по мере освоения системы MathCAD в приложении к зада- чам энергетики. Рассмотрим пока панель инструментов и панель вывода палитр мате-
матических знаков. Еще отметим только кнопку Окно (Window) в строке Меню. Нажатие этой кнопки открывает весь список документов, с которыми работает пользователь. Он может, не закрывая текущего документа, открыть другой и работать с ним.
Первая кнопка на панели инструментов – чистый лист с загнутым концом – откры- вает новый документ без названия, в строке заголовка которого появится надпись в руси- фицированной версии – MathCAD professional [без названия:n], в английской – MathCAD
professional [Untitled:n], где n номер документа.
С нажатием второй кнопки появится окно открытия файлов (рис. 2.).
Рис. 2. Окно MathCAD с окном открытия файлов.
Чтобы открыть файл, необходимо его выделить курсором ввода и нажать кнопку
Открыть.
Третья кнопка – кнопка запоминания файла. Если у файла есть название, нажатием этой кнопки запоминается текущее состояние документа. Если названия нет, открывается окно Сохранить как. В строку Имя файла необходимо занести название файла.
Четвертая кнопка – кнопка печати документа.
Пятая кнопка – кнопка просмотра документа.
Шестая кнопка – кнопка проверки орфографии. Ей начинающие пользователи, как правило, не пользуются.
Три кнопки – седьмая, восьмая и девятая очень востребованы. Седьмая кнопка вы- резает выделенную часть документа. Выделить часть документа можно нажатием курсора ввода на пустом месте документа и обвести, не отпуская курсора, лишние операторы. Ес- ли операторов будет несколько, то каждый их них обведется пунктиром, если один –

5 сплошной линией. Нажатие седьмой кнопки уничтожит выделенный фрагмент програм- мы. Нажатием девятой кнопки можно восстановить уничтоженный фрагмент, начиная с места, отмеченного курсором. В отличие от седьмой кнопки восьмая только запоминает фрагмент. Вставляется запомненный фрагмент в нужное место девятой кнопкой. Восьмая кнопка очень полезна при создании фрагментов, мало отличающихся друг от друга.
Десятая кнопка возвращает предыдущее действие программиста, а одиннадцатая последующее. Следует отметить, что не всегда MathCAD запоминает предыдущее дей- ствие. Поэтому, если Вы испортили программу и вовремя спохватились, закройте ее нажатием кнопки с крестиком в правом верхнем углу. В окне появится панель с вопросом:
«Сохранить изменения в файле?» Нажмите кнопку «Нет» и вызовите программу снова.
Откроется программа с последним запоминанием.
Остальные кнопки панели инструментов для начинающего пользователя не нужны.
Они потребуются, когда Вы наберете большой опыт и почувствуете вкус к программиро- ванию.
На первом этапе рассмотрим только одну палитру математических знаков, которой пользуется начинающий пользователь. Это палитра калькулятора. Остальные будем рас- сматривать при иллюстрации решения соответствующих задач.
Кнопка палитры калькулятора первая на панели вывода палитры математических знаков. Выдаваемые значки и действия системы MathCAD после нажатия кнопок на па- литре Calculator при подстановке чисел приведены на рис. 3. Символ deg после числа по- казывает, что значение угла задано десятичными числами. Без этого символа значение уг- ла подразумевается в радианах.
Рис. 3. Действия системы MathCAD при нажатии кнопок палитры Calculator.

6
Начало работы в MathCAD
Простые математические действия в MathCAD
Для первых шагов неплохо было бы просто посчитать что-нибудь, т.е. сделать не- которое количество несложных математических вычислений. Эти вычисления могут по- надобиться в большинстве дальнейших расчетов.
Хотя считается, что основные математические операции всем хорошо известны еще со школы, но начать работу в MathCAD лучше с них. Вообще если понимание про- граммы MathCAD составляет проблему, то стоит потратить некоторое количество време- ни на ее изучение. А при изучении программы MathCAD лучше собственными руками набрать некоторое количество примеров приведенных в данном пособии. Это позволит научиться простым навыкам набора уравнений в MathCAD и заодно напомнит кое-что из давно забытого школьного курса математики.
Для занесения на экран нужного выражения, например, 2 + 7, необходимо щелк- нуть мышкой на том месте рабочего листа MathCAD где планируется ввести данные. По- том нажать на клавиатуре число 2 нажать + или выбрать мышкой на
палитре Кальку-
лятор
соответствующий оператор, после этого набрать 7 и нажать = на клавиатуре или выбрать мышкой на
палитре Калькулятор
соответствующий значок. После этого про- грамма MathCAD сама посчитает и выдаст ответ:
При наборе символов может вызвать затруднение само составление уравнения.
Например - как в MathCAD набрать -
Набираем на клавиатурой нужное число 14 , нажимаем на клавиатуре клавишу со значком / или выбираем мышкой соответствующий значок / на
палитре Калькулятор
, после этого нажимаем = на клавиатуре или выбираем мышкой соответствующий значок на
палитре Калькулятор
. Тогда программа MathCAD сама посчитает и выдаст ответ:

7
7
8
9
10
Сложные математические действия в MathCAD
После того, как появится навык набора простых математических выражений, мож- но будет перейти к более сложным примерам. Рассмотрим один из них:
Попробуем набрать такой пример в программе MathCAD.
1.
Нажимаем cos на
палитре Калькулятор.
2.
Набираем цифру 2, нажимаем ми- нус на клавиатуре или на
палитре Калькулятор
3.
Набираем цифру 35.5 (
тут сле-
дует сделать одно замечание: в MathCAD разделением целой части числа и его
мантиссы служит именно точка, а не запятая
).
4.
Далее нужно выделить значение
2 – 35.5 как показано в выражении (
в MathCAD
синее выделение
показывает, где
находится курсор
), нажимаем пробел для выделения еще и цифры 2. как показано в выражении.
5.
Нажимаем косую черту (наклон вправо / ) курсор переходит в знаме- натель – там набираем цифру 47.
6.
Для набора значения степенного выражения нажимаем кнопочку х
2
на
палитре Калькулятор
и вводим цифру 2. Это будет сте- пень числа 47.
Продолжим набирать наше выражение:
7.
После ввода цифры 2 выделение осталось на этой цифре, поэтому чтобы перейти от выражения к выражению
8
нам нужно нажать пробел столько раз, пока выделение при- мет вид как в выражении
8
9
. Нужно нажать знак минус на клавиатуре или на
панели
Калькулятор
10.
Нажмем на
панели Калькулятор
значок tan , в скобках наберем цифру
46 и получим выражение.
Так как мы вводим значение угла в градусах, то нужно допечатать сразу после цифры –
deg.
Получим выражение
11
. Нажимаем пробел для выделения всего выражения (как в выражении
12
) и нажимаем косую черту
/
(с наклоном вправо). Получим выражение
13
Далее набираем значение знаменателя.
1
2
3
4
5
6
11
12
13

8
14
15
16
Дальнейший набор будет рассмотрен чуть позднее.
Для многих начинающих пользователей при работе в MathCAD является трудно- стью перевод значений углов из градусов в радианы и обратно. Значение углов в градусах наиболее привычно для нашего понимания и хотя в школе все изучают радианы, но чаще всего само понимание того, что это такое, так и не наступает. При задании угла в градусах мы просто набираем значение угла и здесь же допечатываем deg.
Например, для задания угла в 90 градусов нужно набрать:
Немного сложнее обстоит дело с заданием угла в градусах справа от знака равенства. Т.е. в уже полученном значении угла в ради- анах. Для этого нужно после получения ответа в радианах щелк- нуть мышкой на полученном значении:
Ввести в появившемся черном квадратике deg и тогда по- лученное значение будет представлено в градусах:

9
Вызов операторов клавиатурой
На первых порах рекомендуем при вызове оператора пользоваться палитрами ма- тематических знаков. Однако очень скоро обращение к палитрам начнет раздражать. По- этому в системе MathCAD предусмотрен вызов операторов через клавиатуру. Ниже при- ведены наиболее часто встречающиеся операторы.
( )
 


X

T

Оператор
Клавиша
Действие

[
[ctrl] 4
[ctrl] 6
!

[ctrl] 1
^
[ctrl] –
Круглые скобки.
Нижний индекс.
Суммирование элементов.
Верхний индекс.
Факториал.
Сопряжение комплексного числа.
Транспонирование матрицы.
Возведение в степень.
Векторизация. В матрице производит операции поэлементно.






\
[ctrl] \
|
[ctrl] 4 shift
$
[ctrl] 8
Квадратный корень.
Корень n-ой степени.
Суммирование элементов.
Абсолютное значение, модуль комплексного числа, определитель матрицы.
Суммирование элементов.
Произведение.
Векторное произведение.
[ctrl] 3 shift
: =
:
Присваивание.




d d
d d
d
X


#
?
&
Абсолютное значение, модуль комплексного числа, определитель матрицы.
Производная.
Производная n-ой степени.
Интеграл.
[ctrl] ?

10
Документы MathCAD
Документом MathCAD называют описание математического алгоритма решения задачи с текстовыми комментариями и результатами вычислений в форме символов, чи- сел, таблиц или графиков. В документе MathCAD вместе с программой выводятся резуль- таты расчета. Как программа, так и результаты расчета могут сопровождаться коммента- риями программиста. Комментарии не являются обязательной частью документа, но от- сутствие их усложняет работу с документом, особенно, если в работе с документом был значительный перерыв. Забываются, какими символами описываются переменные, сам алгоритм вычисления функций, те или иные оригинальные приемы в отдельных фрагмен- тах программы. Особенно актуальны комментарии, если пользователь, которым является студент, решает несколько задач по разным предметам.
Язык программирования MathCAD практически не отличается от обычного языка математических статей, отчетов и книг. Это делает понятными документы MathCAD даже школьнику старших классов и студенту младших курсов вузов. На рис. 4 приведены при- меры задания вычислений и действий с числами. Следует иметь в виду, что вычисления в системе MathCAD выполняются только на английской клавиатуре. Операции с числами можно задавать через меню Calculator или через клавиатуру. Деление через клавиатуру выполняется клавишей / , квадратный корень – клавишей \ , возведение в степень – кла- вишей 6 с одновременным нажатием клавиши Shift.
Рис. 4. Примеры действий с простыми и комплексными числами
$
Сложение с переносом.



[ctrl] 9
[ctrl] 3
[ctrl] =
Меньше либо равно.
Не равно.
Равно.
[ctrl] 0
Больше либо равно.

11
Привычная запись программируемых выражений избавляет пользователя от изуче- ния языков программирования как высокого, так и низкого уровня. Подавляющее боль- шинство решаемых задач требуют лишь корректной записи используемых формул.
Однако использование системы MathCAD в виде, приведенном на рис. 4 – это, если грубо сравнивать, все равно, что забивать гвозди компьютером. Можно, но не рациональ- но. Система MathCAD предназначена для решения очень сложных задач с применением формул и уравнений, записанных в буквенном виде. Для этого разработан математически ориентированный входной язык общения. Большинство операторов и функций входного языка общепринятые в математике. Будем стараться придерживаться обозначений физи- ческих величин и констант, принятых в электротехнике и электроэнергетике. Это позво- лит не вводить некоторые комментарии к выполняемым вычислениям.
Алфавит входного языка обширен и позволяет использовать латинскую, русскую и греческую азбуки, арабские цифры, общепринятые константы, математические операто- ры, встроенные функции.
Началом документа MathCAD рекомендуем указать название задачи, ее цель, ис- пользуемые методы расчета. Далее следует описать переменные, используемые в матема- тических выражениях, применяемых при вычислениях. Переменные имеют имена, при- надлежащие только им. Имена переменных, констант, других объектов называются иден-
тификаторами. Например, при вычислении выражения с = a + b идентификаторами яв- ляются a, b и с. Что подразумевается под идентификаторами, зависит от программиста.
Переменные могут быть числами, результатом предыдущих вычислений, константами, функциями переменных. Например, а = 4, b = sin(x), где х в свою очередь переменная.
Идентификаторы могут иметь любую длину, но без пробелов и обязательно начи- наться с буквы любого алфавита. Желательно избегать русской азбуки, потому что в ис- пользуемых версиях системы MathCAD после повторного вызова документа русские бук- вы иногда заменяются на нечитаемые символы. Программа работать будет, но трудно воспринимается. А если программа длинная, понять результаты ее работы практически невозможно. Примеры идентификаторов, используемых в энергетике: S, u, control, U_I,
Потери_напряжения,

U.
Чтобы работать с переменными, необходимо задать их значения. Эта операция называется присваиванием. Основным знаком присваивания является составной :=, кото- рый можно получить вызвав меню Calculator или Evaluation или через клавиатуру одно- временным нажатием клавиши Shift и двоеточия. Такое присваивание называется локаль-
ным. Следует отметить, что знак присваивания в системе MathCAD можно получить толь- ко с латинской клавиатурой. Например, вычисление с = a + b осуществляется сначала че- рез присваивание переменных a, и b, а затем через вычисление с.
Вычисления выполняются слева направо и сверху вниз. Если третье присваивание окажется выше второго или первого, вычисления не произойдет. Однако иногда требуется получить зависимость результата от каких-либо параметров, находящихся в самом начале вычислений. Если присваивание переменной и результат вычислений не помещаются в окно монитора, очень неудобно следить за изменением результата при изменении значе- ния переменной. Для этой цели в системе MathCAD имеется оператор глобального при-
сваивания (три горизонтальных черточки). Переменная с этим оператором может описы- ваться в любом месте программы. Например, предыдущее вычисление можно выполнить как a
5

b e
1.3


c a
b


c
5.273


12
Знак глобального присваивания можно получить, вызвав меню Evaluation.
Встроенные функции
MathCAD содержит большое число встроенных функций, используемых при опи- сании процессов, происходящих в объектах электротехники и энергетики. Любые функ- ции, используемые в высшей школе, поддерживает MathCAD. Это элементарные триго- нометрические, гиперболические, векторные и матричные и др. Примеры абстрактного пользования встроенными функциями приведены на рис. 5.
Рис.5. Пример программы с использованием встроенных функций.
Решение систем линейных уравнений
Требуется решить систему уравнений третьего порядка:
3
3
33
2
32
1
31
2
3
23
2
22
1
21
1
3
13
2
12
1
11
y
x
a
x
a
x
a
y
x
a
x
a
x
a
y
x
a
x
a
x
a









В MathCAD система уравнений решается как
y
a
x
1



, где
a
– квадратная мат- рица коэффициентов системы линейных уравнений;
y
– матрица-вектор свободных чле- нов. Пример решения приведен на рис 6.
Решить задачу можно тремя способами. Во всех трех необходимо заполнить мат- a
5

c a
b


c
5.273

b e
1.3



13 рицы соответствующими членами. Присвоение переменной
a
матрицы осуществляется через меню Matrix. Нажатием кнопки в верхнем левом углу выводится панель Вставить
матрицу. По умолчанию количество строк и узлов матрицы равно трем. Порядок системы уравнений примера также равен трем, поэтому нажимаем кнопку ОК. Присваиваем пере- менной
y
вектор столбец через ту же кнопку. Но на панели Вставить матрицу количе- ство столбцов задаем 1. Далее решаем уравнение
y
a
x
1



По первому способу матрицы
a
и
y
заполняются непосредственно численными значениями коэффициентов. Результат выводится в виде матрицы-вектора. Индексы в си- стеме MathCAD начинаются с нулевого номера. Т.е., первое неизвестное
1
x
в получен- ном результате имеет нулевой индекс,
2
x
– первый,
3
x
– второй.
По второму способу сначала присваиваются значения коэффициентов матриц, ко- торые затем заносятся в матрицы.
По третьему способу присвоение производится непосредственно коэффициентам матриц.
Рис. 6. Примеры решения системы линейных уравне- ний.
Нетрудно убедиться, что результат вычисле- ний один и тот же. Каждый способ имеет свои досто- инства и недостатки. Применение их диктуется в за- висимости от решаемой задачи. При разборе приме- ров решения задач электротехники мы будем обосно- вывать применение того или иного способа.
Рассмотрим пример применения данного алго- ритма к определению токов на основании законов
Кирхгофа в цепи, изображенной на рис. 7.
R
4
R
3
R
1
E
1
E
I
2
I
3
I
1
Рис. 7.

14
Уравнения, описывающие процессы в цепи, следующие:
.
E
)
R
R
(
I
R
I
;
E
R
I
R
I
;
0
I
I
I
2
3
2
2
4
3
1
4
3
1
1
3
2
1









Программа расчета токов приведена на рис. 8.
Рис 8. Варианты программ расчета токов цепи рис. 7.
В первом варианте коэффициенты матриц вычисляются предварительно. Опыт по- казывает, что это может привести к ошибкам. Этот вариант уместен, если коэффициенты матриц вычислять предварительно не надо. Во втором варианте вероятность ошибок меньше, и очень удобно проверять уравнения.
Вариант с заданием коэффициентов с использование индексов очевидно более тру- доемок. Он, как будет показано ниже, является единственным при большом числе неиз- вестных.
Никогда не выполняйте ту работу, которую компьютер выполнит лучше!
В некоторых учебниках по Теоретическим основам электротехники токи в ветвях рекомендуется рассчитывать через определители матриц. В системе MathCAD определи- тель выполняется оператором |x| из меню Calculator или Matrix. Пример программы при- веден на рис. 9. Результаты расчета, естественно, совпадают с расчетами, выполненными через обратную матрицу
a
В программах, приведенных на рис. 8 и 9, нет комментариев. Все идентификаторы соответствуют общепринятым обозначениям в теории электрических цепей. Авторы счи- тают, что пользователь достаточно хорошо изучил соответствующие разделы Теоретиче- ских основ электротехники.

15
Рис. 9. Пример программы расчета токов рис. 7. через определители.
При числе неизвестных токов или напряжений до 4 - 5 в рассчитываемой цепи це- лесообразно заполнение матрицы выполнять непосредственно, но в идентификаторах, как это выполнено при решении задачи на рис 8 вторым способом. Это уменьшит вероятность ошибок и облегчит проверку правильности составления уравнений.
Если неизвестные в системе уравнений в целочисленной степени, можно восполь- зоваться ключевым словом Given. Однако пользоваться этим приемом следует осторожно.
Система уравнений решается итерационными методами. Поэтому очень важным является первое приближение. Когда решается одно уравнение с неизвестным в первой степени, величина первого приближения практически несущественна. Но, когда какой-либо корень имеет несколько значений, от величины и вида первого приближения зависит решение.
Может оказаться, что MathCAD с задачей не справится.
Ниже приводятся несколько примеров решения систем уравнений (рис. 10).
Для решения системы уравнений необходимо выполнить следующее:

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

печатается ключевое слово Given. Оно указывает MathCAD, что далее сле- дует система уравнений. При печати слова Given можно использовать лю- бой шрифт, прописные или строчные буквы;

вводится уравнения и неравенства в любом порядке ниже ключевого слова
Given. Между правыми и левыми частями уравнения должен стоять знак равенства из палитры Boolean. Можно напечатать этот знак одновременным нажатием клавиш Ctrl и = .

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

16
Рис. 10. Примеры решения уравнений
Рис. 10а. Примеры решения уравнений

17
Рис. 10б. Примеры решения уравнений
На рис. 10 второй пример показывает, как решить систему уравнений с неизвест- ными во второй степени. Поскольку для каждого неизвестного задано только по одному приближению, решение выполнено для одного корня каждого неизвестного. Чтобы полу- чить вторые корни, необходимо задаться новыми приближениями, которые находятся ближе ко вторым корням, чем первые. Хорошо, если известно в какой области искать кор- ни. Но в большинстве случаев это не известно, и задача очень усложняется.
Существенно также, в области действительных или мнимых чисел находятся корни уравнения. Если корни мнимые, а первое приближение задано как действительное число, то решение найдено не будет. Поэтому в общем случае надо первое приближение надо задавать комплексным числом. А если корней несколько, то и приближений должно зада- ваться столько же. Пример решения одного уравнения второй степени приведен на рис.
1.7а.
Влияние первого приближения на истинность решения иллюстрируется примером, приведенным на рис. 10в, где решается уравнение пятой степени. В первом примере два корня уравнения повторились. И только после изменения первого приближения получены все корни. Проверка правильности корней, приведенная там же, показала, что корни найдены правильно.
Нахождение корней полинома
Для нахождения корней выражения, имеющего вид
0 2
2 1
n
1
n n
n a
x a
x a
x a
x a











удобно использовать функцию polyroots. Пример записи решения приведен на рис. 11.

18
Рис.11. Примеры отыскания корней полинома
Сначала формируется вектор коэффициентов а
к
, начиная с а
0
. Затем выполняется команда polyroots. Второй пример отыскивает корни уравнения, приведенного на рис.
10б.
Функция polyroots удобна тем, что не требуется первого приближения.
Работа с комплексными числами
MathCAD воспринимает комплексное число как a + bi, где а– вещественная часть,
b – мнимая. Если привычнее использовать j вместо i, вызовите меню Формат, в нем Фор-
мат результата, далее Параметры экрана, и в нем Мнимое значение, в котором вызы- ваете символ j. Тогда комплексное число будет восприниматься как a + b j. Следует иметь в виду, что символы i или j можно ставить только непосредственно после числа, напри- мер, 6 j. Если необходимо ввести мнимую единицу, необходимо печатать 1i или 1j. Когда курсор покидает выражение, единица пропадает. Мнимую единицу можно также получить как j
1


. В этом случае j воспринимается как переменная.
Задавать комплексное число можно также в показательной форме как, например,
Zе j

, где

угол вектора
Z
. Но результат всегда выдается как a + bi.
В MathCAD кроме арифметических операций имеются специальные функции и оператора для работы с комплексными числами:
Re (Z) – выделяет вещественную часть комплексного числа (вектора
Z
);
Im (Z) – выделяет мнимую часть комплексного числа (вектора
Z
); arg(Z) – определяет угол вектора
Z
;
|Z| – определяет модули вектора
Z
;
Z
– выполняет сопряжение вектора
Z
(изменяет знак мнимой части).
Операции с комплексными числами приведены на рис. 12.

19
Рис. 12. Примеры действия с комплексными числами.
Построение графиков
Начиная с первого курса, студенты постигают математические функции и зависи- мости через графические их представление. В системе MathCAD имеется возможность построить графики самого различного вида.
Рассмотрим табличную зависимость двух параметров y = f(x).
x
0 1
2 3
4
y
0 1
1.5 1.7 1.8
Зададим х и у векторами, т.е. матрицами-столбцами.
Чтобы построить график этой функции, достаточно в панели вывода палитр мате-
матических знаков вызвать палитру Graph и выбрать кнопку графика двух параметров.
Появится пустой график с двумя полями ввода по одному на каждой оси. Если в нижнее поле ввода занесем х, а в левое – у, получим искомую зависимость (левый график).
Однако этот график не совсем удобный. Он мал по площади, на нем отсутствует сетка. Увеличить масштаб можно, щелкнув по графику мышкой. График оконтурится черной рамкой с тремя квадратиками на ней – справа, снизу и в правом нижнем углу.
Установив курсор на одном из квадратиков, и двигая мышкой, можно растянуть график вправо, вниз и одновременно вниз и вправо.
Если два раза щелкнуть на графике, вызовется панель форматирования графика, приведенная на рис 14. В колонках Ось – Х и Ось – Y птичками отмечены Нумерация,
Автомасштаб, Авто сетка. Отметим еще Вспомогательные линии и после нажатия на кнопку ОК получим правый график (рис. 13). Чтобы изменить масштаб, выключите Авто
сетку, а в окна Размер сетки внесите нужные масштабы. Пример приведен на рис 14.

20
Рис. 13, 14. Примеры построения графиков, заданного таблично.
Рассмотрим пример построения потенциальной диаграммы для задачи, приведен- ной на рис 7. Для большей наглядности ЭДС Е
2
перенесена и включена между сопротив-

21 лениями R
2
и R
3
. На рис. 15. приведено решение задачи. Токи в ветвях определены через уравнения Кирхгофа. Потенциалы точек и нарастающее сопротивление от точки а по внешнему контуру по часовой стрелке представлены векторами

и R. Отличие от преды- дущих графиков в использовании формата Показать метки для выделения горизонталь- ной осевой линии. Тот же результат можно получить, если в Стиле осей графика отме- тить Пересечение. Фиксированные точки отмечены крестиками, которые получены, от- крыв Трассировку, а затем через Символ.
Рис. 15. Построение потенциальной диаграммы в цепи постоянного тока.
Используя палитру Graph, можно построить векторы, заданные комплексными числами. Построим векторную диаграмму трехфазной системы напряжений. (рис.16).
Напряжения U
A
, U
B
, U
C
заданы в показательной форме. Далее представим напряжения в виде векторов (матрицами-столбцами). Первый член матрицы равен нулю, второй - фаз- ному напряжению. Вызовем палитру Graph, вызовем кнопкой график в декартовых ко- ординатах и по вертикальной оси через запятую занесем активные составляющие векто- ров, по горизонтальной – реактивные. В Стиле осей графика нажмем кнопку «Пересече-
ние», а справа отметим Равные масштабы. Размер сетки принят равным 10. Следует от- метить , что обязательно при построении векторных диаграмм следует строить сетку, по- тому что даже при фиксировании Равных масштабов они зачастую равными не получа- ются, и приходится вручную изменять размеры графика по горизонтали или по вертикали.
При построении графика, изображенного на рис. 16 так и получилось.
Первая переменная всегда окрашивается в красный цвет, вторая – в синий, третья – в зеленый. Если Вам необходимо изменить цвета, вызовите Трассировку и измените цвет. Здесь же можно изменить толщину линий, задать их пунктирными, точками, пунк- тирными с точками и др.
Кроме векторных диаграмм на графике можно построить топографическую диа- грамму, а также суммировать или вычитать векторы. Чтобы суммировать или вычесть векторы, в матрице-столбце последний член задать равным нулю. Примеры топографиче- ской диаграммы и вычитания векторов приведены на рис. 17.

22
Рис. 16. Векторная диаграмма трехфазной системы напряжений
Рис. 17. Примеры топографической диаграммы и вычитания векторов
Рассмотрим построение графика функции от какого-либо аргумента, изменяюще- гося монотонно. Например,
)
t
sin(
I
i
m


и
)
2
/
t
sin(
U
u
m




. Пример построения

23 графика приведен на рис 18. В первую очередь необходимо задать значение угловой ча- стоты

и интервал времени. Интервал времени задается начальным моментом (в нашем примере нулем), затем задается следующий момент времени, затем команда многоточие из палитры Matrix, и конечный момент времени. Следует иметь в виду, что интервал между вычисляемыми друг за другом значениями функций должен обеспечивать плав- ность изменения графика. На правом графике приведены те же параметры, но при шаге вычислений в 25 раз большем, чем на левом. Неправильный выбор шага может полностью исказить картину процесса.
Рис. 18. Примеры построения графиков при монотонно изменяющемся аргументе.
Работа с матрицами и векторами
Выше рассматривались некоторые действия с матрицами. При решении систем уравнения выполнялось обращение матрицы, умножение матрицы на вектор взятие опре- делителя. Рассматривались также способы заполнения матрицы. Операторами «сложе- ние», «вычитание», «умножение» можно пользоваться, если матрицы отвечают соответ- ствующим требованиям. Оператором «деление» можно только разделить все элементы матрицы на число. Оператором «сопряжение» меняется знак мнимой части элементов матрицы.
В этом разделе рассмотрим некоторые операторы, которые помогут при составле- нии универсальных программ.
Запись
Клавиши
Описание
М
n
M^n
Возведение матрицы М в степень n. (Возведение в степень можно выполнять только для квадратных матриц).
М
Т
М Сtrl !
Транспонирование матрицы М (*)

24
M

М Сtrl –
Векторизация матрицы (выполнение одинаковых операций со всеми элементами матрицы) (*)


n
M
М Сtrl ^n
Выделение n – столбца матрицы
(*) – можно воспользоваться палитрой Matrix.
Примеры выполнения операндов приведены на рис.19.
Рис 19. Примеры применения операндов действий с матрицами
Только для работы с матрицами существует ряд встроенных функций, из которых наиболее часто применяемые при решении задач энергетики:

augment(M1,M2) – объединяет в одну две матрицы М1 и М2, имеющих одинаковое число строк (объединение по горизонтали);

stack(M1,M2) – объединяет в одну две матрицы М1 и М2, имеющих одина- ковое число столбцов (объединение по вертикали);

submatrix(M,ir,jr,ic,jc) – выделяет подматрицу из матрицы М, со строками с ir по jr и столбцами с по jс;
Примеры использования встроенных функций приведены на рис.20.
Создание процедур
Очень часто необходимо повторять в определенной последовательности объем вы- числений. MathCAD позволяет выполнить такие операции через процедуры. Главным раз- личием между выражением и процедурой заключается в способе задания исходных дан- ных. Рассмотрим, как создать процедуру решения системы уравнений третьей степени
(рис. 21). Эта задача решалась ранее (пример на рис. 6).
При создании процедур используется
палитра Программирование
.
Процедура задается оператором и исходными данными, которые заносятся в скобки через запятую.

25
Рис.20. Примеры использования встроенных функций
Рис. 21. Процедура решения системы уравнений третьей степени и примеры ее использо- вания к решению двух систем
палитра Программирование

26
Нажатием кнопки «Add Line» или клавишу ] создаем вертикальный столбец с поля- ми ввода для операторов процедуры. Операция присваивания осуществляется нажатием кнопки со стрелочкой или одновременным нажатием клавиш Ctrl и [. В остальном опера- торы вводятся также, как описывалось ранее.
Если сравнить операторы, приведенные в третьем примере рис. 6 и в правой части процедуры рис. 21, то можно заметить, что они одинаковы и различаются только написа- нием. Но, без использования процедур решение новой системы уравнений требует повто- рения всех операторов. При использовании же процедур новая система уравнений реша- ется только обращением к процедуре. Независимо от количества операторов в процедуре задача решается одним оператором.
Результатом процедуры является последний операнд.
При анализе нормальных и аварий- ных режимов электрических систем требу- ется составить матрицу собственных и вза- имных проводимостей электрической сети.
Покажем на примере матрицы четвертого порядка, как автоматизировать ее заполне- ние с помощью процедуры. Чтобы упро- стить пример, зададимся связями только в виде сопротивлений. Между узлами 3 и 0 включено сопротивление, равное 10 Ом, а между узлами 3 и 2 – 20 Ом. Процедура внесения сопротивления Z может быть со- ставлена в следующей редакции (справа).
Командой Y
3,3
:= 0 формируется квадратная матрица четвертого порядка (первые строка и столбец имеют нулевой индекс). Далее программируется тело процедуры. В скоб- ках левой части процедуры заносятся узлы m и n, и величина сопротивления Z. Пер- вым оператором в правой части заносится в процедуру матрица Y. Далее проводимость
1/Z суммируются с содержимым соответ- ствующих элементов матрицы Y. Результа- том работы процедуры является матрица Y с занесенными новыми проводимостями.
Нетрудно убедиться, что заполнение вы- полнено правильно. Тело матрицы в настоящем примере выдается, чтобы показать, как осуществляется ее заполнение после каждого обращения к процедуре. При решении же серьезной задачи применительно к системе с десятками и сотнями узлов матрица Y выда- ется только во время отладки при поиске ошибки.
Организация циклов
Простейший цикл по одной переменной может быть выполнен двумя операндами: первым задается переменная (в примере на рис. 22 – а), вторым – функция переменной.
Переменная задается начальным значением, оператором, фиксирующим интервал измене- ния переменной и конечным значением. В первом примере это а := 1 .. 10. Многоточие выполняется клавишей ; или кнопкой m .. n на
палитре Матрицы
. Интервал можно вы- звать только клавишей
;
. Он вызывается в виде

, начало и конец интервала заносятся слева и справа. Шаг переменной в этом случае равен единице. Во втором примере пере- менная задается начальным значением, следующим значением за начальным, затем ста-
Y
3 3

0

Zy m n

Z

(
)
Y'
Y

Y'
m m

1
Z
Y'
m m



Y'
n n

1
Z
Y'
n n



Y'
m n

1
Z

Y'
m n



Y'
n m

1
Z

Y'
n m



Y'

Y
Zy 3 2

20

(
)

Y
0 0
0 0
0 0
0 0
0 0
0.05 0.05

0 0
0.05

0.05









Y
Zy 3 0

10

(
)

Y
0.1 0
0 0.1

0 0
0 0
0 0
0.05 0.05

0.1

0 0.05

0.15










27

for
m
вится интервал и конечное значение интервала. Шаг цикла в этом случае любой.
Рис. 22. Примеры простых циклов
Цикл можно задать и оператором for (нажатием соответствующей кнопки на
па-
литре
Программирование)
. Выдается оператор
Слева от знака вводится имя переменной цикла, справа – диапазон значений, в котором должна изменяться пере- менная цикла. Форма задания диапазона в точности такая же, как и для дискретного аргу- мента (например, рис. 22). В оставшееся поле ввода заносится выражение, подлежащее повторяющимся вычислениям. Примеры организации циклов приведены на рис. 22 и 23.
MathCAD позволяет выполнить цикл по нескольким переменным. Это так называ- емые циклы в цикле. Рис. 23 иллюстрирует пример заполнения матрицы последователь- ным рядом чисел. Для этого задаются две переменные: t – текущая строка; q – текущий столбец.
Условные передачи управления
Обычно MathCAD выполняет операции сверху вниз и слева направо. Но часто по какому-либо условию требуется обойти часть вычислений. В этом случае применяется условная передача управления по заданному признаку. Например, формируется матрица проводимостей сети. При количестве узлов, определяемых десятками и сотнями, в мате- матической модели сети могут быть пропущен ряд узлов, например, нет узлов 48, 135 и
240, а номер последнего узла 341. В этом случае строки и столбцы 48, 135, и 240 будут нулевыми, а матрица проводимостей – особенной. Чтобы сделать матрицу неособенной, в

28 диагональные ячейки 48, 135 и 240 необходимо занести любые числа, например, единицы.
Выполняется это сравнением всех диагональных элементов матрицы с нулем. Если диаго- нальные элементы равны нулю, на их место ставится единица.
Рис. 23. Примеры организации циклов
Условная передача управления осуществляется оператором справа от if (соответствует русскому «если») записывается условие, по которому выполняется оператор, записываемый слева от if. Если условие не выполняется, тогда выполняется оператор, записываемый слева от otherwise (соответствует русскому
«иначе»).
Пример заполнения нулевых диагональных элементов единицами приведен на рис.
24.
Итерационные расчеты, какими являются расчеты нормальных режимов электри- ческих сетей, заканчиваются, если разность между предыдущим значением параметра и вычисленным на текущем шаге не превышает некоторой заданной величины. Чтобы в этом случае выйти из цикла, используется оператор break. Пример использования опера- тора break тоже приведен на рис 24. Формирование вектора U3 заканчивается когда раз- ность U1 3
= 7 и U2 3
= 7 меньше 0,1. Формирование вектора закончилось на третьем шаге, хотя цикл состоит из шести шагов.
На рис. 25 приведен пример процедуры вычисления параметров двухобмоточного трансформатора. В исходных данных задаются паспортные данные трансформатора. В случае отсутствия потерь в трансформаторе (

P
xx
= 0,

P
кз
= 0, I
xx
= 0) алгоритм не преду- сматривает вычисления активных проводимостей. Если в исходных данных присутствуют потери холостого хода и короткого замыкания, вычисляется поперечная проводимость, определяемая током холостого хода и активная составляющая продольного сопротивле- ния. if otherwise
Цикл по одной переменной
Цикл по двум переменным

29
Рис. 24. Пример условной передачи управления.

30
Y
4 4

0

Tr m n

Sn

Un


Pkz

Ukz%


Pxx

Ixx%



Z
0
Ukz%
100
Un
2
Sn

i



Yxx
0


Pkz
0

Pxx 0

if
Z
Ukz%
100
Un
2
Sn







2

Pkz
Un
2
Sn
2







2

i


Pkz
Un
2
Sn
2



Yxx
Ixx%
100
Sn
Un
2







2

Pxx
Un
2






2

i



Pxx
Un
2


otherwise s
Y

s m m

1
Z
Yxx

s m m



s n n

1
Z
s n n



s m n

1

Z
s m n



s n m

1

Z
s n m



s

Tr 2 4

100

110

0

10

0

0

(
)
0 0
0 0
0 0
0 0
0 0
0 0
0.083i

0 0.083i
0 0
0 0
0 0
0 0.083i
0 0.083i
















Tr 2 4

100

110

0.015

10

0.008

1

(
)
0 0
0 0
0 0
0 0
0 0
0 0
1.246 10 4


0.083i

0 1.24

10 4


0.083i

0 0
0 0
0 0
0 1.24

10 4


0.083i

0 1.24 10 4


0.083i


















Рис. 25. Пример процедуры расчета параметров двухобмоточного трансформатора и заполнения ими матрицы проводимостей электрической сети


написать администратору сайта