Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Описание EWB.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
14.58 Mб
Скачать

Описание программы comcal

Программа COMCAL предназначена для вычисления комплексных функций от ком­плексных переменных и решения системы линейных уравнений n-ной степени с ком­плексными переменными. Все комплексные или действительные постоянные должны быть предварительно введены с помощью операции присвоения и фактически ничем не от­личаются от переменных. Характерной особенностью синтаксиса записи операций являет­ся использование прописных (заглавных) букв для обозначения констант и переменных, поскольку строчные используются для обозначения функций.

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

Текст программы с4_007.сс

! Расчет схемы из трех пассивных элементов с одним источником

! Исходные данные

1. F=50

2. Rl=60

3. L2=0.2

4. С3=0.0000398

5. Е=100

! Определить токи и напряжения для всех компонентов ! Найти полную, активную и реактивную мощности ! Расчет проведем методом свертки-развертки ! Определяем входное сопротивление методом свертки

6. X2=j*2*p*F*L2

7. Z12=R1*X2/ (R1+R2)

8. X3=-j /(2*p*F*C3)

9. Z123=Z12+X3

Определяем ток источника питания

10.I3=E/Z123

! Определяем токи через параллельные ветви

11.12=I3*R1/(R1+X2)

12.I1=I3*X2/(R1+X2)

! Определяем потенциал узла А

13. UA=I1*R1

! Определяем комплекс мощности

14. Е*&13

Сразу после запуска программы сс.ехе можно начать редактировать текст. Первые две стро­ки начинаются с ! и представляют собой комментарий. Затем следуют строки, задающие исход­ные данные с помощью операций присвоения. Это уже исполняемые строки, и после того, как нажата клавиша Enter, выполняются следующие операции: производится вычисление значе­ния переменной из выражения, записанного в текущей строке, на нижние табло выводится результат вычислений и курсор переводится на следующую строку. Когда курсор находится на какой-либо строке, возможно как ее редактирование, так и вычисление значения переменной при нажатии на клавишу Enter. Отметим, что в строке 14 для вычисления комплексного выра­жения для полной мощности применяется запись сопряженного значения потребляемого тока, для чего перед обозначением тока поставлен знак &.

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

Real

Imag

Abs

Arg, рад

Arg, градП

1

+5.0000000Е+01

+0,0000000Е+00

+5.0000000Е+01

+0,0000000Е+00

+00°0'0"

2

+6.0000000Е+01

+0,0000000Е+00

+6.0000000Е+02

+0.0000000Е+00

+00° 0' 0"

3

+2.0000000Е-01

+0,0000000Е+00

+2.0000000Е-01

+0.0000000Е+00

+00° 0' 0"

4

+3.9800000Е-05

+0,0000000Е+00

+3.9800000Е-05

+0.0000000Е+00

+00°0'0"

5

+1.0000000Е+02

+0.0000000Е+00

+1.0000000Е+02

+0.0000000Е+00

+00°0'0"

6

+0.0000000Е+00

+6,2831853Е+01

+6.2831853Е+01

+1.5707963+00

+90° 01 0"

7

+3.1382548Е+01

+2.9968126Е+01

+4.339300Е+01

+7.6234753Е-01

+43° 40' 45"

8

-0.0000000Е+00

-7.9977358Е+00

+7.9977358Е+00

-1.5707963Е+00

-90°0'0"

9

+3.1382548Е+01

-5.0009233Е+01

+5.9040559Е+01

-1.0103761Е+00

-57° 53' 25"

10

+9.0030005Е-01

+ 1.4346609Е+00

+1.6937509Е+00

+1.0103761Е+00

+57°53' 25"

11

+1.1459732Е+00

+2.3460058Е-01

+ 1.697401Е+00

+2.0192731Е-01

+11°34' 10"

12

-2.4567315Е-01

+ 1.2000603Е+00

+ 1.2249490Е+00

+ 1.7727236Е+00

+101°34' 10"

13

-1.4740389Е+01

+7.2003619Е+01

+7.3496941Е+00

+1.7727236Е+00

+101°34' 10"

14

+9.0030005Е+01

-1.4346609Е+02

+1.6937509Е+02

-1.0103761Е+00

-57°53'25"

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

Порядок матрицы и соответственно системы уравнений определяется переменной size, которая может быть задана выражением или константой.

Далее решается система вида:

A(l,l)*x(l)+A(l,2)*x(2)+...+A(l,n)*x(n)=A(l,n+l);

A(n,l)*x(l)+A(n,2)*x(2)+...+A(n,n)*x(n)=A(n,n+l).

Коэффициент А(1,1) задается операцией присвоения с помощью некоторого выраже­ния в следующем формате:

@1 1=1+1*5, что соответствует записи A(l,l)=l+i*5.

Пример записи системы уравнений второго порядка, имеющей вид:

x(l)+(l+i*5)*x(2)=i*7;

5*x(l)+i*8*x(2)=7, приведен ниже:

size 2

@11=1

@1 2=l+i*5

@1 3=i*7

@21=5

@2 2=i*8

@23=7

compute

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

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

При вызове программы необходимо ввести полный путь к файлу с расширением *.сс, в котором эта программа записана, и, получив сообщение "загрузка прошла успешно", на­жать последовательно клавиши Esc и Ctrl-PgUp.

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

Основное меню

Функции Операции Константы Команды Синтаксис Режимы

"Горячие клавиши" О программе

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

Функции

Программой вычисляются следующие комплексные функции комплексных переменных. Тригонометрические:

sin - вычисляется по формуле: sin z = (exp(jz)-exp(-jz+)/2j,

cos - вычисляется по формуле: cos z = (exp(jz)+exp(-jz))/2,

tg - вычисляется по формуле: tgz = sin z/ cos z, дает ошибку, если cos z = О,

ctg - вычисляется по формуле: tgz = cos z/ sin z, дает ошибку, если sin z = О,

Обратные тригонометрические:

arcsin - вычисляется по формуле: arcsin z = ln(jz+sqrt(l-z*z))/j,

arccos - вычисляется по формуле: arccos z = ln(z+sqrt(z*z-l))/j,

arctg — вычисляется по формуле: arctg z = ln(sqrt((l+jz)/(l-jz))/j, дает ошибку, если z = j или z = -j,

arcctg - вычисляется по формуле: arctg z = ln(sqrt((j+z)/(j-z))/j, дает ошибку, если z = j или z = -j.

Гиперболические:

sh - вычисляется по формуле: sh z = (exp(z)-exp(-z))/2,

ch - вычисляется по формуле: ch z = (exp(z)+exp(-z))/2,

th - вычисляется по формуле: th z = sh z/ ch z, дает ошибку, если cos z = О,

cth - вычисляется по формуле: th z = sh z/ ch z, дает ошибку, если sin z = О, Обратные гиперболические:

arsh - вычисляется по формуле: arsh z = ln(z+sqrt(z*z+l)),

arch - вычисляется по формуле: arch z = ln(z+sqrt(z*z-l)),

arth - вычисляется по формуле: arth z = ln(sqrt((l+z)/(l-z))), дает ошибку, если z = 1 или z = — 1,

arcth - вычисляется по формуле: arcth z = ln(sqrt((z+l)/(z-l))), дает ошибку, если z = 1 или z = -1. Степенные и логарифмические:

ехр - вычисляется по формуле: exp z = exp(x)-*cos(y)+j*sin(y)) при z=x+j*y,

In - вычисляется по формуле: In z = ln(r)+j*f при z=r*exp(jf), дает ошибку, если z = О,

lg - вычисляется по формуле: lg z = ln(z)/ln(10), дает ошибку, если z = О,

sqrt - вычисляется по формуле: sqrt z = sqrt(r)**(cos(f/2)+j*sin(f/2)) при z=r*exp(jf),

Операции

Программой предусматриваются следующие бинарные (над двумя переменными) и унарные (над одной переменной) операции:

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

* - умножение комплексных величин;

/ - деление комплексных величин;

# - вычисление сопротивления для параллельного соединения двух комплексных со­противлений;

" - операция возведения комплексного числа в комплексную степень;

$- запись комплексного числа в экспоненциальной форме;

После этого выполняются такие операции, как:

+ - сложение комплексных чисел; - вычитание комплексных чисел;

, - запись комплексного числа в алгебраической форме.

Унарные операции - нуждаются в одном аргументе слева от знака операции. Все би­нарные операции выполняются справа налево с учетом скобок. Эти операции имеют наи­высший приоритет. К унарным операциям относятся следующие:

- унарный минус, изменяет знак перед действительной и комплексной частями при записи в алгебраической форме, или знак модуля при записи в экспоненциальной форме;

+ - унарный плюс, изменяет знак перед действительной и комплексной частями при записи в алгебраической форме, или знак модуля при записи в экспоненциальной форме;

&- выполняет операцию замены аргумента на комплексно-сопряженный. Взятие функции одного аргумента также считается унарной операцией.

Константы

Стандартные константы:

i или j - мнимая единица, в алгебраической форме записывается в виде (0,1);

р - число р, равное 3.14159265358979

Радианные константы:

Это действительные числа, выражающие углы в радианной мере.

Градусные константы:

Задают углы в градусной мере в формате:

'Градусы' Минуты' Секунды.

Например, запись '90'12'50 соответствует 90 градусов 12 минут 50 секунд,

запись '87 - 87 градусов.

Команды

Функциональные клавиши реализуют следующие команды:

F1 - войти в справочную систему,

F2 - сохранить программу в текстовом файле *.сс

F3 - вставить строки из текстового файла перед текущей строкой,

F4 - получить листинг,

F5 - очистить экран,

F8 - вызвать командный процессор MS-DOS,

F9 - вернуться в Norton Commander,

F10 - выйти из программы

используются стандартные текстовые файлы с длиной строки не более 78 символов

Синтаксис

Строки:

Пустая строка - игнорируется программой, при прохождении этой строки ничего не происходит, в нижних табло высвечивается комплексное число равное нулю;

Комментарий - строка, начинающаяся с ! ;

Выражение - совокупность постоянных и переменных, связанных знаками операций и скобками.

Операторы:

size - выделяет необходимый объем памяти для системы уравнений, порядок которой определяется выражением, все коэффициенты в системе обнуляются;

compute - оператор решения системы уравнений.

Оператор решает систему.

= - оператор присвоения, вычисляет значение переменной или коэффициента системы уравнений.

Лексемы:

Скобки - (), {}, [], <

Остальные лексемы рассмотрены выше. К ним относятся функции, константы, опера­ции и переменные.

Лексемы могут отделяться друг от друга произвольным числом пробелов (от 0 и более), ис­ключение составляют функции, между которыми должен быть по крайней мере один пробел.

Режимы

Цвет:

При вызове этого раздела меню можно установить три различных цветовых режима экрана:

IBM цветной;

IBM черно-белый;

Mazovia

Обозначение мнимой единицы:

Этот раздел меню позволяет выбирать для обозначения мнимой единицы символ j или i. Иногда (всегда) с порядком (Е):

Этот раздел меню позволяет либо выбрать принудительный вывод величин в формате с фиксированной точкой (если выбирается режим всегда) либо оставить определение форма­та вывода за программой (если выбирается режим иногда).

Способ выражения радианных величин выбирается из трех следущих:

Режимы для установки величин:

Этот пункт меню позволяет установить один из следующих способов представления уг­ловых величин - в радианах, в радианах *р или в градусах.

"Горячие" клавиши

Меню:

Перечисляются клавиши осуществляющие движение по строкам меню.

Ноте - к первому элементу меню;

End - к последнему элементу меню;

Esc - выход из меню;

i,→ ,Tab - к следующему элементу меню;

Т, ←, Shift+Tab - к предыдущему элементу меню;

Enter - выбрать элемент меню.

Строка:

Перечисляются клавиши команд текстового редактора, применяемого при написании строки программы вычислений.

→/← на символ вправо / влево;

CTRL+→, CTRL+←, - на слово вправо / влево;

Home / End - к первому / последнему символу;

Backspace - удалить символ слева от курсора;

Del - удалить символ, указываемый курсором;

Esc - удалить все символы строки;

Insert - изменение режима вставки / замены.

Прочие:

Перечисляются клавиши команд, применяемые для движения по тексту программы в процессе редактирования и вычислений.

↓/ ↑ - на строку вниз / вверх;

Ctrl+Home / Ctrl+End - к началу / концу экрана;

PgUp / PgDn - на страницу вверх / вниз;

Ctrl+ PgUp / Ctrl+ PgDn - к началу / концу программы;

Серый + / серый — удалить / вставить строку

Enter - вычислить строку.

68