Описание блок-схемы программы (рис. 3.1).
Блок № 1 – начало программы. В этом блоке происходит инициализация всей программы, создание основного и дополнительных окон программы, отвечающих за вывод графиков, результатов в текстовом виде, окна прав на программу и диалоговых окон.
Блок № 2 – цикл для ввода исходных данных. Этот блок является виртуальным, поскольку на самом деле его нет, но программа построена таким образом, чтобы нельзя было начать расчет без ввода всех исходных данных в блоке № 3 и проверки их на правильность в блоке № 4.
Блок № 3 – ввод исходных данных. В этом блоке происходит ввод всех исходных данных: тип первого четырехполюсника, тип соединения четырехполюсников, тип второго четырехполюсника, физическая длина отрезка линии, диэлектрическая проницаемость, начальная частота исследуемого диапазона частот, конечная частота исследуемого диапазона частот, волновое сопротивление, величина коэффициента связи, сопротивление нагрузки, сопротивление генератора, количество выборок из исследуемого диапазона частот или количество точек на графиках.
Блок № 4 – проверка правильности вводимых данных. В этом блоке происходит проверка вводимых данных на соответствие реальным нормам и параметрам рассчитываемого четырехполюсника (в программе существуют определенные рамки для каждого из вводимых параметров, за которые она не дает выйти, чтобы не вызвать сбоя или ошибки).
Блок № 5 – выбор типа четырехполюсника. После блока № 4 программа переходит непосредственно к расчету. В этом блоке программа определяет для себя, какой из типов четырехполюсников был выбран как первый или второй и передает управление одному из блоков с номерами от 6 до 12.
Блоки № 6…12 – расчет а-матрицы выбранного четырехполюсника. В этом блоке происходит расчет а-матрицы одного из выбранных четырехполюсников по введенным исходным данным для всех выборок.
Блок № 13 – проверка на выбор второго четырехполюсника. В этом блоке ведется проверка на тот случай, если тип соединения четырехполюсников выбран таким, в котором участвуют два четырехполюсника.
Блок № 14 – выбор типа соединения. В зависимости от типа соединения четырехполюсников этот блок передает управление одному из блоков с номерами от 15 до 18.
Блоки № 15…18 – расчет результирующей а-матрицы. В этом блоке ведется расчет результирующей а-матрицы с использованием а-матриц просчитанных в блоках с номерами от 6 до 12 с учетом введенных параметров.
Блок № 19 – выбор выходной характеристики. В этом блоке программа дает возможность выбрать одну из семи возможных вариантов сочетания выходных характеристик.
Блоки № 20…26 – расчет и вывод результатов. В этом блоке происходит расчет выбранной характеристики по ее заранее запрограммированным формулам и уравнениям, а также вывод на экран форм: с графиком выбранной характеристики и с данными расчета результирующей а-матрицы в текстовом виде.
Блок № 27 – сохранение и печать конечного результата. Этот блок является виртуальным поскольку на самом деле его нет, однако существует возможность сохранения и печати результатов расчета.
Блок № 28 – конец программы. Программа завершает свою работу после нажатия на кнопку "Закрыть". В этом блоке происходит деинициализация и разрушение всех окон созданных программой.
Рис. 3
.1Результаты расчета НВЛ рассматриваются на одном примере.
Исходные данные для примера:
1) Тип первого четырехполюсника – 5 (отрезок линии с замкнутыми полюсами по диагонали с одновременной изоляцией одного из них);
2) Тип второго четырехполюсника – 2 (отрезок линии с замкнутыми полюсами по диагонали);
3) Схема соединения четырехполюсников – последовательно-параллельная;
4) Геометрическая длина – 3 см;
5) Диэлектрическая проницаемость – 9;
6) Начальная частота – 10 МГц;
7) Конечная частота – 1 ГГц;
8) Волновое сопротивление – 100 Ом;
9) Коэффициент связи – 0,7;
10) Сопротивление нагрузки – 75 Ом;
11) Сопротивление генератора – 6 Ом;
12) Количество выборок – 30;
13) Выбранная характеристика – рабочее затухание.
Исходные данные были рассчитаны программой и получены следующие результаты. График рабочего затухания отображен на рис. 4.1.
График рабочего затухания
Рис. 4.1
Результаты расчета НВЛ в тестовом виде:
Значения для частоты 10000000 Гц. :
a11=(4,7878)+j(0); a12=(0)+j(-10,3358)
a21=(0)+j(2,95); a22=(-4,9975)+j(0)
Значения для частоты 43000000 Гц. :
a11=(4,7097)+j(0); a12=(0)+j(-44,1892)
a21=(0)+j(0,673); a22=(-4,9456)+j(0)
Значения для частоты 76000000 Гц. :
a11=(4,5343)+j(0); a12=(0)+j(-76,4896)
a21=(0)+j(0,3672); a22=(-4,8286)+j(0)
Значения для частоты 109000000 Гц. :
a11=(4,2787)+j(0); a12=(0)+j(-106,4093)
a21=(0)+j(0,2421); a22=(-4,6598)+j(0)
Значения для частоты 142000000 Гц. :
a11=(3,9656)+j(0); a12=(0)+j(-133,1573)
a21=(0)+j(0,1726); a22=(-4,4444)+j(0)
Значения для частоты 175000000 Гц. :
a11=(3,5934)+j(0); a12=(0)+j(-156,1747)
a21=(0)+j(0,1273); a22=(-4,1911)+j(0)
Значения для частоты 208000000 Гц. :
a11=(3,18)+j(0); a12=(0)+j(-175,3788)
a21=(0)+j(0,0952); a22=(-3,9154)+j(0)
Значения для частоты 241000000 Гц. :
a11=(2,7579)+j(0); a12=(0)+j(-190,6065)
a21=(0)+j(0,0716); a22=(-3,6232)+j(0)
Значения для частоты 274000000 Гц. :
a11=(2,3351)+j(0); a12=(0)+j(-202,1663)
a21=(0)+j(0,0535); a22=(-3,3267)+j(0)
Значения для частоты 307000000 Гц. :
a11=(1,9216)+j(0); a12=(0)+j(-210,2469)
a21=(0)+j(0,0395); a22=(-3,0312)+j(0)
Значения для частоты 340000000 Гц. :
a11=(1,5291)+j(0); a12=(0)+j(-215,2939)
a21=(0)+j(0,0284); a22=(-2,7435)+j(0)
Значения для частоты 373000000 Гц. :
a11=(1,1491)+j(0); a12=(0)+j(-217,5385)
a21=(0)+j(0,0196); a22=(-2,4655)+j(0)
Значения для частоты 406000000 Гц. :
a11=(0,8173)+j(0); a12=(0)+j(-217,6019)
a21=(0)+j(0,0128); a22=(-2,2031)+j(0)
Значения для частоты 439000000 Гц. :
a11=(0,4948)+j(0); a12=(0)+j(-215,7355)
a21=(0)+j(0,0071); a22=(-1,9566)+j(0)
Значения для частоты 472000000 Гц. :
a11=(0,2302)+j(0); a12=(0)+j(-212,2591)
a21=(0)+j(0,003); a22=(-1,7262)+j(0)
Значения для частоты 505000000 Гц. :
a11=(-0,0229)+j(0); a12=(0)+j(-207,4489)
a21=(0)+j(-0,0005); a22=(-1,5122)+j(0)
Значения для частоты 538000000 Гц. :
a11=(-0,248)+j(0); a12=(0)+j(-201,6131)
a21=(0)+j(-0,0032); a22=(-1,3148)+j(0)
Значения для частоты 571000000 Гц. :
a11=(-0,4436)+j(0); a12=(0)+j(-194,9488)
a21=(0)+j(-0,0052); a22=(-1,133)+j(0)
Значения для частоты 604000000 Гц. :
a11=(-0,6092)+j(0); a12=(0)+j(-187,6184)
a21=(0)+j(-0,0068); a22=(-0,966)+j(0)
Значения для частоты 637000000 Гц. :
a11=(-0,7826)+j(0); a12=(0)+j(-179,756)
a21=(0)+j(-0,0081); a22=(-0,8127)+j(0)
Значения для частоты 670000000 Гц. :
a11=(-0,9024)+j(0); a12=(0)+j(-171,4991)
a21=(0)+j(-0,0088); a22=(-0,6725)+j(0)
Значения для частоты 703000000 Гц. :
a11=(-1,0196)+j(0); a12=(0)+j(-162,893)
a21=(0)+j(-0,0093); a22=(-0,5439)+j(0)
Значения для частоты 736000000 Гц. :
a11=(-1,1349)+j(0); a12=(0)+j(-154,0664)
a21=(0)+j(-0,0097); a22=(-0,4264)+j(0)
Значения для частоты 769000000 Гц. :
a11=(-1,2273)+j(0); a12=(0)+j(-145,044)
a21=(0)+j(-0,0098); a22=(-0,319)+j(0)