X0(t0), X0(t0),
X0(t0)... ;t=ti-ti-1 ;Xi=f(xi-1)
Вывод: модели СГКБ имеют смысл, когда êlmaxï/ïlminï<= 100, где lmax и lmin -
собственные значения матрицы (А- Е).
Определение квазистатических (частотных)
характеристик линейных эквивалентных схем.
Для большинства линейных схем характерными
являются такие показатели, как добротность, полоса пропускания, равномерность
усиления в некотором частотном диапазоне и другие, определяемые по АЧХ и ФЧХ.
Основными широко применяемыми при “ручных”
расчетах схем являются методы операционного исчисления, и в частности,
спектральный (частотный) метод Фурье.
С помощью преобразований Лапласа решения
системы линейных дифф. уравнений переводятся в область комплексной переменной
p=Y+jw, показываемой комплексной частотой.
Функция от t, к которой применено
преобразование Лапласа, называется оригиналом, а соответствующая функция от р -
изображением. Связь между ними определяется формулами:
F(p)=òf(t)*e-ptdt
f(t)=1/2*пjòF(p)*eptdt
первые пределы:[0;бесконечность]
вторыке пределы:[g-jw;l+jw]
Основная цель этих преобразований - сведение
дифференциальных уравнений к чисто алгебраическим относительно комплексной
частоты р. Так, при нулевых начальных условиях операция дифференцирования
соответствует умножению на р-изображение, следовательно, при х0=0 уравнения системы:
.
х = Ах + f(t) х = х0
t=t0
х(t) - вектор переменных состояния,
А - матрица размерностью n x n,
х0 - вектор
начальных значений
будут иметь вид:
р Х(р) = А Х(р) - F(р)
а решение исходной системы вида:
х(t) = eAtx0 +òeA(t-s) f(S)dS, где еAt =S(At)k
/k! (матричная
экспонента)
будет иметь вид:
Х(р) =
(рЕ - А)-1 * F(p) = K(p) F(p)
Так как выходные токи и напряжения линейным
образом выражаются через переменные состояния и входные воздействия, то вектор
выходных переменных z = Bx + Cf , где В, С - матрицы. Тогда матрица В(рЕ - А)-1 + С соответствует матричной передаточной функции, обозначаемой
обычно К(р). Отношения любых переменных вектора неизвестных называются схемными
функциями. Численный расчет или формирование аналитических выражений для
схемных функций составляют основу задачи анализа линейных эквив. схем в
частотной области. Согласно правилам Крамера, эти функции описываются линейной
комбинацией отношений алгебраических дополнений матрицы А. Таким образом, в
общем случае схемные функции есть дробно-рациональные выражения относительно
комплексной частоты. Форма их представления называется символьной (буквенной),
если коэффициенты при различных степенях р определены через параметры элементов
схемы. Если коэффициенты получены в численном виде, то такую форму
представления принято называть символьно-численной или аналитической.
К достоинствам методов определения схемных
функций на ЭВМ можно отнести: получение конечного результата анализа в
аналитическом виде; возможность быстрого дальнейшего расчета значений схемных
функций на заданных частотах; удобство при решении задачи оптимизации и
определения устойчивости схемы.
К недостаткам при решении задачи на ЭВМ можно
отнести: огромный порядок (до нескольких десятков) полиномов схемных функций,
диапазон изменения коэффициентов полиномов может превышать возможности
представления чисел в разрядной сетке ЭВМ, что требует проведения
соответствующей нормировки и счета с удвоенной точностью. Это объясняется
влиянием всех элементов схемы во всем частотном диапазоне.
Вывод: используя метод оределения схемных
функций, можно достичь в приемлемое время результатов для схем небольших
размерностей.
Наряду с методами символьного анализа
существуют методы численных решений или расчета тех же схемных функций по
точкам. Целью анализа в том случае является получение набора численных значений
схемных функций на заданных частотах путем многократного решения системы
линейных алгебраических уравнений с комплексными коэффициентами. В процессе
расчета необходимо учитывать разреженность матрицы и оптимальный порядок
исключения переменных. Алгоритмы численных методов расчета схемных функций,
как правило, легче реализуются на ЭВМ и требуют меньших объемов машинной памяти
и используются при этом для расчета достаточно больших схем , имея при этом
удовлетворительную погрешность и приемлемое время.
Численный метод.
Идея: Выбирается диапазон частот, для каждого
значения частоты решают комплексное уравнение.
[Cjw1+G]X=Y
........................
........................
........................
[Cjwn+G]X
x1
X=
xn
ReXl +jImXl Bejg
Xl/Xs=
¾¾¾¾¾¾¾¾
= ¾¾¾
ReXs+jImXs
AejY
Xl/Xs-отношение вх. к
вых. Или наоборот.
(B/A)-ФЧХ.
(g-Y)-ФЧХ.
Достоинства и недостатки метода:
1. Можно работать с переменным шагом частоты.
Чем сильнее меняются характеристики, тем меньше шаг, это может привести к
огромному количеству шагов.
2. Трудоемкость линейно зависит от количества
шагов.
Линейно-аналитический метод.
Идея метода: Определить выходные
характеристики в аналитическом виде (т. е. как функция от р, где р - буква).
Далее вместо р подставляют конкретное значение частоты и получают иско-мые
характеристики.
А х =Y ; [A1
... An ] х = Y
det[A1,...Ai-1,Y,Ai+1,...An]
xi=¾¾¾¾¾¾¾¾¾¾¾
detA
Будем считать, что в схеме имеется
единственный источник входных сигналов.
[ Cp + G ] x = Y - исходная модель
det[Cp+G]/ab
¾¾¾¾¾¾
0
det[Cp+G]
0
xl/xk= ¾¾¾¾¾¾¾¾¾
=...............= A1...Ai-1 0 Ai+1...An
0
det[Cp+G]/dg
0
¾¾¾¾¾¾
det[Cp+G]
det[Cp+G]/ab
anpn+...+a1p+a0 an(p-z1)*...*(p-zn)
detA1=*[A2].....= ¾¾¾¾¾¾
= ¾¾¾¾¾¾¾
= ¾¾¾¾¾¾¾¾¾
=
det[Cp+G]/dg
bmpm+...b1p+b0 bm(p-p1)*...*(p-pm)
где А1 - большая матрица,
в которой вычитаем строку и столбец,
А2 - алгебраическое
дополнение, оставшееся после вычитания строки и столбца,
a,b,d,g - говорят о номерах вычеркнутых строк и столбцов, многочлен имеет
ровно столько корней, какова его степень. корни могут быть вещественными и/или
комплексно сопряженны-ми.
{an/bm - константы = к,
z1 ,... ,zn - нули,
р1 ,... ,рm - полюсы,
к уровень системной функции (к=an/bn) }
Az1ejjz1*...*Aznejjzn
= ¾¾¾¾¾¾¾¾¾
{аналитическое выражение для вычисления частотных хар-к}
Bp1ejYp1*...*BpmejYpm
P÷ Zi ÷
F= k* ¾¾¾¾¾¾ - формула вычисления частотных характеристик
P
÷ pi ÷
Достоинства и недостатки:
- Нули и полюсы заранее известны по виду
функции (больше полезной информации).
- Точное решение многочлена высокой степени
(>4) не может быть получено, а вычисление значений многочлена степени >30
приведет к погрешности >50%.
- Нули и полюсы вычисляются как собственные
значения матриц (числителя и знаменателя).
- Трудоемкость этой задачи 2 * n (n -
порядок матрицы), и 4/3 * n - для вычислений в одной точке по частоте.
Вывод: применяется для задач малой
размерности.
Информационное
обеспечение и справочные данные.
В ПМК будут использоваться базы данных по
элементам . В этих базах будут содержаться реальные
характеристики R,L,C и т. д. элементов.Так как данный ПМК предназначен для
решения реальных задач,то данные базы данных представляют
собой ни что иное,а электронные справочники по различным
типам элементов(при необходимости и их зарубежным аналогам).
Информация о каждом элементе должна быть
максимально полной:включая не только основные
электрические,тепловые ,маркировку и
т.д. ,то есть характиристики,жизненно важные для расчетов,но и цвет,размеры,массу,материал из
которого изготовлен и т.д.
Использование их как в составе ПМК,так и отдельно даст двойную эффективность.
Обмен
данных между программами.
Поскольку данный ПМК будет представлять собой
систему взаимодействия между:
1. Пользователя с программами.
2. Программ между собой.
3. Здесь не будет рассматриваться взвимодействие программ с ОС и
ПЕРЕФЕРИЕЙ поскольку
данные функции реализуются,как правило,по средствам ОС.
то для безошибочной и удобной работы всей
системы необходимо разработать систему интерфейсов.Так же
необходимо учесть,что особенностью данного ПМК будет то,что для всех шагов,результаты работы предыдущето
шага(программы) есть результаты для работы следую -щего(следующей
программы).
Для решения проблемы взаимодействия между
программами будем использовать так называ-
емый ИНТЕРФЕЙСНЫЙ ФАЙЛ.Поскольку
ПМК ,в частности,ориентирован на
конкрктный
объем вычислений,в нашем
случае это ограничение на число узлов:n<=500,то
практически воз-
можно осуществить расчет объема данных,используемых на том или ином шаге.Используя это
представим структуру файла в следующим образом:файл разбивается на так называемые СЕГ-
МЕНТЫ ДАННЫХ,каждый из
которых будет содержать или входные или выходные данные.
Каждый СЕГМЕНТ будет иметь УНИКАЛЬНЫЕ
КООРДИНАТЫ в соответствии с которыми
программа,которой
требуются данные,безошибочно воспользуется ими зная
координаты нача-
ла и конца сегмента.
С другой стороны появляется еще несколько
дополнительных способов работы ПМК:
-это способ работы нескольких программ на одном шаге используя данные одного или
нескольких ИНТЕРФЕЙСНЫХ ФАЙЛОВ,то есть возможно брать
данные из одного,а
выдавать в другой файл.Почему несколько,потому что возможно привязав к стандартному
набору шагов несколько ИНТЕРФЕЙСНЫХ ФАЙЛОВ
запускать в ПЛАНИРОВЩИКЕ нес-колько программ,реализующих
данный шаг или одну программу с различными входными данными несколько раз.
-это способ работы согласно модификации только
данных/результатов работы того или иного шага/шагов системы.В качестве модификатора данных предполагается
использовать некотурую
программу,работающую с
жестким учетом структуры данных данного ПМК.Иными словами возможно задаться
вопросом:А что произойдет,если
результаты работы данного шага или
нескольких шагов будут такими-то?
Кроме этих способов на базе интерфейсных
файлов можно создать полный протокол работы
ПМК.Эта возможность поможет отладить работу
ПМК и обнаружить ошибки,конечно только на уровне взаимодействия программ.
Теперь рассмотрим интерфейс взаимодействия с
пользователем.Несомненно что самым удоб-ным интерфейсом явлается система окон и
меню:
1. Панировщик.
2. Спиок подключенных программ.
3. Режимы работы.
4. Графика.
5. Результаты.
6. Справочная информация.
7. Помощь.
8. Выход.
· Пункт
меню ПЛАНИРОВЩИК.
Содержит порядок выполнения пакетов(для
системы это BAT-файлы),если текущий
режим работы ПМК-пакетный и порядок выполнения шагов(каждый пакет система
рассматривает как
последовательность шагов каждый,в свою
очередь,выполняется с определенными параметрами,
например,итерфейс-файл для взатия данных и
итерфейс-файл для выдачи результатов.
Если текущий режим работы-с использованием
данных,то позволяет на определенном шаге или
шагах указать модификатор или
модификаторы(если режим пакетный с использованим данных)
данных.
Так же данное меню позволяет воспользоваться
загрузкой данных из файлов(формата ПМК)
то есть схем,моделей т.д. и возможности по
изменению порядка пакетов,программ(шагов) в
составе пакета и т.д.
· Пункт меню СПИСОК
ПРИКЛАДНЫХ ПРОГРАММ.
Каждый пункт данного меню содержит информацию
о всех файлах подключенных к системе.
· Пункт меню РЕЖИМЫ
РАБОТЫ.
Содержит всевозможные режимы работы ПМК.
-Обычный(1 интерфейс-файл,1 пакет стандартных
шагов для реализации задачи).
-Пакетный(несколько интерфейсных
файлов,несколько пакетов,в каждом пакете м.б.
несколько программ для реализации данного шага или
шагов )
-Модификация данных(1 интерфейсный файл,1
пакет стандартных шагов для реализации задачи,причем в качестве шага м.б.
использована программа для модификации данных с
соответственным указанием этого системе)
-Модификация данных в пакетном
режиме(несколько интерфейсных файлов,несколько паке- тов,причем в качестве шага
или шагов м.б. использована программа или несколько программ для модификации
данных с соответственным указанием этого системе)
Следует заметить,что согласно алгоритму работы
того или иного режима некоторые пункты в различных меню могут недоступны.
· Пункт меню ГРАФИКА.
Позволяет задать драйвер графического
режима,текущее разрешение,файл работы с графикой(в
ПМК предусмотрена работа с файлами графических
форматов,а конкретнее,сохранять схемы и
результаты работы(в нашем случае это график
или графики АЧХ,ФЧХ и т.д.) в фаил или файлы
графических форматов,а так же работать в
текстовом режиме,отключив грвфический.Следует
отметить,что поддержка разрешения и прочих
неотъемлимых атрибутов графического режима
осуществляется с помощью используемого
драйвера и полностью зависит от него,кроме того
следует обратить особое внимание на
согласование поддержки всего спектра рзрешений и дру-
гих атрибутов графического режима такими
модулями ПМК как редактор схем и построитель
графиков.(возможно объединение модулей ПМК
ответственных за реализацию математических методов и построения схем и
графиков,но гибкость системы при этом значительно снижается).
· Пункт меню
РЕЗУЛЬТАТЫ.
Данный пункт отвечает за вид выводимых
результатов работы ПМК.ПМК имеет возможность
вывода результатов на принтер,плоттер,в файл и
на экран ЭВМ.
· Пункт меню ПОМОЩЬ.
Указывает на текущий файл помощи,используемый
ПМК и согласно структуре этого файла
и системе контекстной помощи могает легче
найти ответ на тот или иной вопрос пользова-
теля.
· Пункт меню СПРАВОЧНАЯ
ИНФОРМАЦИЯ.
Позволяет быстро получить всю информацию о
текущем состоянии системы (режимах работы,
подключенных файлах и т.д.),кроме того
позволяет осуществить необходимые привязки одних
файлов к другим(модуля(ей) ПМК к
интерфейс-файлу(ам) и т.д.) и определить все стандартные
пакеты или пакет.
· Пункт меню ВЫХОД.
Позволяет осуществить выход из среды
ПМК(только по окончании работы всех шагов системы ), дает возможность удобного
выхода в OS ,по необходимости,оставляя основной модуль в
ОЗУ и обратного возвращения в среду ПМК по определенной команде и т.д.
Структура ПО.
Данное ПО представляет собой разветвленную
структуру.По стволу соответствующего дерева
производится взаимодействие с
программами(модулями) реализующими тот или ной шаг сис-темы,в первом круге
происходит взаимодействие между программами(модулями) и основной
интерфейсной программой,запускаемой на первом
шаге работы ПМК,во втором,в свою оче-редь-взаимодействие между интерфейсной
программой и пользователем.
Данную систему можно представить графически:
Используемые обозначения:
ШАГ1...ШАГN-стандартный
шаг системы.
М1...Мn-модули(программы)
реализующие пот или иной шаг системы.
И1-интерефейс взаимодействия ’’модули«модули’’.
И2-интерефейс взаимодействия ’’основная интерфейсная программа«И1’’.
И3-интерефейс взаимодействия ’’пользователь«И2’’
И3
И2
ШАГ1 ШАГN
И1
М1 .... Мn M1 .... Мn
...........................
Система объектов.
С точки зрения основной интерфейсной прграммы
каждая взаимодействующая с ней прог-
рамма(модуль) есть объект,реализующий тот или
иной стандартный шаг системы и имею-
щий определенные свойства.Пронумерованный
список стандартных шагов приводится в начале описания объектов,а затем,указав
номер шага и имя объекта можно,привязав данный объект к одному или нескольким
интерфейсным файлам,имя или имена которых описываются после описания набора
стандартных шагов,можно осуществить привязки каждой из программ,
взаимодействующих с системой (модулей) непосредственно к системе.Следующий
пример по-кажет как осуществить вышеописанное для нашей задачи:
/Список Стандартных Шагов Системы:/
<0. Редакторы схем.>
<1. Построители моделей.>
<2. Математические методы.>
<3.Построение частотных характеристик. >
<4. Вывод результатов.>
/Список интерфейсных файлов:/
<C:\inter\face1.int>
<C:\inter\face2.int>
<C:\inter\face3.int>
/Блок описания объектов:/
<0. Редакторы схем.>
1.’C:\edit\map.exe’
<привязан к файлу схемы>’C:\edit\map.map’
<привязан к интерфейс файлам:>’С:\inter\face1.int’,’C:\inter\face2.int’
<взять данные из файла>’C:\inter\face1.int’<номер раздела>’15’
<выдать результаты в файл>’C:\inter\face2.int’<номер раздела>’16’
2.
.........................................................................
.........................................................................
.........................................................................
<1. Построители моделей.>
1.’С:\build\model1.exe’
<привязан к файлу модели>’C:\model\model1.mod’
<привязан к интерфейс файлам:>’C:\inter\face2.int’
<взять данные из файла>’C:\inter\face2.int’<номер раздела>’16’
<выдать результаты в файл>’C:\inter\face2.int’<номер раздела>’17’
2.
...........................................................................
...........................................................................
...........................................................................
<2. Математические методы.>
1.’С:\method\okb1.met’
<привязан к интерфейс файлам:>’C:\inter\face2.int’,’С:\inter\face1.int’
<взять данные из файла>’C:\inter\face2.int’<номер раздела>’17’
<выдать результаты в файл>’C:\inter\face1.int’<номер раздела>’18’
...........................................................................
...........................................................................
...........................................................................
и т.д.
Возможность описания нескольких файлов в одном
разделе появляется появляется только в
пакетном режиме.Данная структура является
очень гибкой,но может быть немного громозд-
коватой и сложноватой.В заключении следует
ометить,что за гибкость приходится платить:
возростает трудоемкость отслеживания ошибок.
Структура данных.
При явном наличии в качестве результатов
большого количества чисел,данные можно пред-
ставить ввиде отсортированных в порядке
последующего взятия и перечисленных через запя-
тую или другой разделитель чисел,которые
являются результатами работы того или иного ша-га.В связи с этим необходим
строгий учет согласования форматов данных для взаимодействую-щих между собой
модулей.
Что касается электронных
справочников(таблиц),то выбор данных из них производит програм-ма,которой они
необходимы,и ей необходимо абсолютно точно знать координаты необходи-мых ячеек.
Вообще,некорректную работу на уровне обмена
данных предотвратят заранее определенные для всех взаимодействующих программ
правила их использования.
Выбор и обоснование
математического обес- печения.
На этом шаге приступим к расчету трудоемкости
вышеописанных методов.Под трудоемкостью математического метода будем иметь
ввиду количество мультипликативных операций необхо-димых для получения решения
с помощью данного метода.
Оценка трудоемкости при
использовании численного метода.
Где N-число
точек по частоте,
CN-система уровнений,соответ-
ствующая N-й точке.
CN имеет вид:
_ _
[Cjw+G]X =Y
w1«С1
wN «СN
Оценим трудоемкость с учетом того,что число
узлов n<=500:
n2=5002- на выполнение операций умножения.
1/3*n3=1/3*5003-
для плотной системы.
4/3*n3=4/3*5003- для комплексного случая.
3/2*n2=3/2*5002- для определения вектора решения.
4*3/2*n2=4*3/2*5002- для
определения вектора решения при комплексном
случае.
Подведем итог:
Тобщ.@42млн.230тыс. операций.
Тобщ.компл.@167млн.750тыс. операций.
Оценка трудоемкости
при использовании
численно-аналитичнского метода.
Здесь задача разбивается на 2 этапа:
1. Имеем
дробь вида:
(p-z1)*...*(p-zn)
K* ¾¾¾¾¾¾¾
(p-p1)*...*(p-pm)
В первую очередь необходимо вычислить
следующие коэффиециенты:
K;z1...zn;p1..pm.
2. Задав точки по частоте и приняв p=jw вычисляют трудоемкомть
вычисления дроби.
Т1=k*n4-
трудоемкость вычисления числителя.
T2=k*n4-
трудоемкость вычисления знаменателя.
Тобщ.=2*k*n4
Подведем итог:
Тобщ.@1250*k*108 операций.
Вывод:
2-й метод прост,но требует громадной
трйдоемкости по сравнению с первым.В связи с этим,
более эффективным решением будет выбрать
первый.Кроме того,при использовании разрежен-ных матриц и
соостветственно,специальных алгоритмов для их обработки,трудоемкость значи-
тельно снизится.
Еще следует обратить особое внимание на
область частот в которой работает исследуемая схе-ма,т.к. при очень высоком
порядке частоты,значения сопротивления резистивных элементов, например,не будут
играть вообще ни какой роли на фоне остальных.
Технические и
инструментальные средства и технология программирования.
Что касается технических средств(’железа’) для будущей работы данного ПМК,то очень
полез-
ным делом было бы упомянуть о следующем:каждая команда выполняется процессором за нес-
колько машинных циклов(цикл-это интервал
времени за который происходит обращение про-
цессора к оперативной памяти или внешнему
устройству и т.д.),каждый цикл,в свою очередь,
состоит из машинных тактов,когда
такт-минимальный промежуток времени за который в про-
цессоре происходит какое-либо изменение.Кроме
этого следунт напомнить о том,что основны-ми гарантами высокой скорости работы
являются скорости выполнения мультипликативных
операций(вычисления и т.п.) и операций
ввода-вывода(работа с данными и т.д.).
С учетом всего этого можно сделать вывод о
том,что чем меньше процессор затрачивает вре-
мени на выполнение такта при реализации
мультипликативных операций и операций ввода-
вывода,тем больше он нам подходит.
Кроме этого,если предполагается использование
высококачественной,цветной графики,то необходимо позаботиться о хорошей SVGA-карте и мониторе(диагональ (>=17’’) и размер
зерна (<=0.27’’)),что касается выбора типа системной
шины,то несомнено вабор падет на
PCI,в качестве устройств вывода информации
можно использовать принтер(в данный мо-
мент существуют струйные принтеры,имеющие
очень высокое качество печати и недоро-
гие) или графопостроитель.
Вышеперечисленные характиристики в своем
подавляющем большинстве были рассмот-
рены непосредственно по отношению к платформе PC,не исключено,а скорее даже наобо-
ро,что при анализе других платформ на
процессорах MAC,ALPHA,SPARK и т.д. реализация
данной задачи окажется во много раэ
эффективнее.
Что касается операционных систем,опять же
применительно к платформе PC, то для э того прекрасно
подойдет ОС Windows(95/NT),т.к.
существует достаточное количество прекрасных
средств для разработки приложений под эти ОС-ы
таких как:DELPHI,DELPHI2,C++BUILDER,
VISUAL C++ и т.д.ОС-ы семейства Windows(кроме 3.х) представляют собой полноценные мно-
гозадачные ОС-ы,так например,при вычислении
точек по частоте можно,пользуясь этими спо-
собностями,имея n точек
по частоте и разбив этот промежуток на m интервалов можно
запус-
тить m процессов на
параллельную обработку,а затем опять тоже самое, но внутри каждого ин-
тервала и уже с коррекцией шага в зависимости
от изменения значения характиристики в конк-
ретной точке со значением частоты.Кроме этого
можно воспользоваться тем,что ОС Windows
NT поддерживает многопроцессорную
обработку,тоесть можно распараллелить вычисления
на нескольких процессорах, что даст огромный
вклад в производительность системы.
Что касается технологии программирования,то из
достаточно большого их числа:структурное
программирование,объектно-ориентированоое,смешанное
и т.д. более эффективным будет вы-
бор смешанного,поскольку та или иная
технология позволяет упростить программирование только в каких-то определенных
рамках.Таким образом,используя смешанную технологию
мож но будет получить максимальный эффект от
написания программы.
Страницы: 1, 2
|