Разработка программно-методического комплекса для анализа линейных эквивалентных схем в частотной области для числа узлов <=500

Разработка программно-методического комплекса для анализа линейных эквивалентных схем в частотной области (для числа узлов <= 500).

                                 Содержание:

0. Постановка задачи (неформальная).

1. Обзор методов математического обеспечения.

2. Выбор наиболее необходимого.

3. Разработка лингвистического обеспечения.

4. Выбор информационного обеспечения.

5. Справочные данные.

6. Обмен данными между программами.

7. Структура ПО.

8. Выбор и обоснование инструментальных средств              программирования.

9. Структура данных и система объектов.

10. Заключение, список используемой литературы.

1. Обзор методов

Цель метода:

1. Составляем (или уже имеем) эквив. схему.

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

Введем правила построения эквив. схем:

1) Эквив. схема, как и граф, состоит из множества ветвей и узлов.

2)   

      а.            б.        в.          г.              д.              е.             ж.              з.  

                                                                                    II             IU            UU  

3) Каждой ветви соответствует компонентное уравнение:

  а.

                dU

       I=C*

                dt

I, U - фазовые переменные типа потока и разности потенциалов (напряжения) в рассматриваемой ветви, С - емкость.

  б.

                   dI

       U=L*

                   dt

L - индуктивность

  в.

       U=R*I

R - сопротивление

  г.

      U=f1(V,t)

U - вектор фазовых переменных,

t - время, в частном случае возможное U=const

  д.

     I=f2(V,t)

U - вектор фазовых переменых,

I - м.б.  I=const

Зависимая ветвь - ветвь, параметр которой зависит от фазовых переменных.

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

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

В ЭВМ эта схема представляется в табличном виде на внутреннем языке.

Граф электрич. схем характеризуется некоторыми так называемыми топологическими мат-рицами, элементами которых являются (1, 0, -1). С помощью них можно написать независимую систему уравнений относительно токов и напряжений ветвей на основании законов Кирхгофа. Соединения ветвей с узлами описываются матрицей инциденции А . Число ее строк равно числу узлов L, а число столбцов - числу ветвей b. Каждый элемент матрицы a(i, j):

                       ì -1  - i-я ветвь входит в j-й узел,

           a(i, j) = í  1  - i-я ветвь выходит из j-го узла,

                       î  0  - не соединена с j-м узлом.

Легко видеть, что одна строка матрицы линейно зависит от всех остальных, ее обычно исключают из матрицы, и вновь полученную матрицу называют матрицей узлов А. Закон Кирхгофа для токов с помощью этой матрицы можно записать в виде:

                                   А * i = 0,  где i - вектор, состоящий из токов ветвей.

Для описания графа схемы используют еще матрицы главных сечений и главных контуров. Сечением называется любое минимальное множество ветвей, при удалении которых граф распадается на 2 отдельных подграфа. Главным называется сечение, одна из ветвей которого есть ребро, а остальные - хорды. Главным контуром называется контур, образуемый при подключении хорды к дереву графа. Число главных сечений равно числу ребер, т.е. L-1, а число главных контуров - числу хорд  m=(b-(L-1)).  Матрицей главных сечений П называется матрица размерностью (L-1) * b, строки которой соответствуют главным сечениям, а столбцы - ветвям графа. Элементы матрицы a(i, j)=1, если j-я ветвь входит в i-е сечение в соответствии с направлением ориентации для сечения; a(i, j)=-1, если входит, но против ориентации, и a(i, j)=0, если не входит в сечение.

Закон Кирхгофа для токов можно выразить с помощью матрицы главных сечений.

  Пi = 0

Матрицей главных контуров Г называется матрица размерностью (b-(L-1))*b, строки которой соответствуют главным контурам, а столбцы - ветвям графа. Элемент этой матрицы a(i, j)=1, если j-я ветвь входит в i-й контур в соответствии с направлением обхода по контуру, -1, если ветвь входит в контур против направления обхода, и 0, если ветвь не входит в контур.

Закон Кирхгофа для напряженй выражается с помощью матрицы главных контуров в виде:

   Пи = 0

Располагая в матрицах П и Г сначала столбцы, соответствующие ветвям-ребрам, а затем столбцы, соответствующие ветвям- хордам, можно записать:

   П = [E, Пх]                Г = [Гр, Е]

где Пх содержит столбцы, соответствующие хордам; матрица Гр - столбцы, соответствующие ребрам, а Е - единичные матрицы [размерность матрицы Е, входящей в П,  (L-1)*(L-1), а входящей в Г,  (b-(L-1))*(b-(L-1))].

Матрицы Гр и Пх связаны следующим соотношением:

Гр=-Пxт ,  где т - знак транспонирования матрицы, или, обозначая Гр=F, получаем Пх=-Fт.

Если для расчета электрической схемы за искомые переменные принять токи i и напряжения u ветвей, то уравнения:

    Ai = 0             или              Пi = 0

    Гu = 0                                 Гu = 0

совместно с компонентами уравнений:

       Fj(I,U,dI/dt,dU/dt,x,dX/dt,t)=0

составят полную систему уравнений относительно 2b переменных.

То есть полная система в общем случае представляет собой набор обыкновенных линейных дифференциальных уравнений.(в случае линейных схем)

Число переменных и уравнений можно уменьшить следующим образом. Токи ребер Ip и напряжения хорд Ux можно выразить через токи хорд Ix  и напряжения ребер Up:

    Ip= F  * Ix             Ux = -Fu

Если подставить эти уравнения в уравнение:

      Fj(I,U,dI/dt,dU/dt,x,dX/dt,t)=0

то число уравнений и переменных можно уменьшить до числа ветвей b.

Обозначения:    L - число вершин (узлов),

                           b - число ветвей,

                           p - число ребер,

                           m - число хорд.

Для связного графа справедливы следующие отношения:

     p = L - 1                m = b - (L-1)

хорда - ребро, не вошедшее в дерево.

Оценим эффективность использования вышеописанных матриц описания схем с точки зрения размерности, для ЭВМ это проблема экономии памяти.

Пусть имеем: число вершин (узлов)  L = 500,

                          число ветвей  b = 1000.

Оценим размеры матриц:

Инцидентности:

                 L * b = 500 * 1000 = 500000

Главных сечений:

                  (L-1) * b = p * b = 499 * 1000 = 499000

Главных контуров:

                  (b-(L-1)) * b = (b-p) * b = (1000-(500-1)) * 1000 = (1000-499) * 1000= 501000

Из вышеприведенных нехитрых вычислений следует, что для описания схемы выгоднее использовать матрицу главных сечений.

2 - Эквив.схема преобразуется в программу решения линейных дифференциальных уравнений.

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

Схема организации вычислит. процесса:

                                         Ввод исходной информации

                                  Трансляция исходной информации.

                                  Заполнение массивов в соответствии с

                                  внутр. формой представления данных

                                   Построение матем. модели схемы

                                   Решение системы линейных уравнений

    

                                       Обработка и выдача результатов

Задачи:

1. Получить АЧХ, ФЧХ (АФЧХ) решением системы дифф. уравнений

2. Построить характеристики по АЧХ и ФЧХ

                          Построение модели эквивалентной схемы.

Модель схемы может быть построена в одном из 4-х координатных базисов:

1. ОКБ - однородный координатный базис

2. РОКБ - расширенный однородный координатный базис

3. СГКБ - сокращенный гибридный координатный базис

4. ПГКБ - полный гибридный координатный базис

1) Модель представляет собой систему алгебро-интегро-дифференциальных уравнений. Неизвестные величины - напряжения U в узлах.

2) Система обыкновенных дифф. уравнений первого порядка, в неявной форме.

                                                Uс

                                                 Il

3) Модель - система обыкновенных дифф. уравнений в форме Коши (в явной форме). Неизвестные величины:       

                                                Uc

                                                 Il

4)           

                                                 U

                                                  I

Для построения модели используются:

1) МУП - метод узловых потенциалов

2) ММУП - модифицированный МУП

3) МПС - метод переменных состояния

1) ОКБ

Используются следующие матрицы:

          С                G                 L            Y

На нулевом шаге все матрицы и векторы заполнены нулями.

Рассмотрим следующий элемент:       

                                                                    i                       j

В матрице С рассматриваются i, j строки и столбцы.

      i        j

i    C   - C

j  - C     C

         C

При совпадении индексов элемент в матицу включается со знаком “+”, а при несовпадении - со знаком “-”.  В матрицу могут быть включены 4 или 1 элемент.

      i                      j

      i        j

i    Y     -Y

j   -Y      Y

         G

Принцип построения аналогичен матрице С.

Рассмотрим следующий элемент:       i                      j

      i        j

    1/L  -1/L

j   -1/L   1/L

           L

Принцип построения аналогичен матрице С.

Рассмотрим следующий элемент (зависимый источник тока, управляемый напряжением):

                                                          s

                                       i         IU          j

                                      k                       l                          S - крутизна

      k        l

     S      -S

j    -S       S

          G

Принцип построения аналогичен матрице С.

Рассмотрим следующий элемент (независимый источник тока):

                                        независ.

                              i        источник       j

                                           тока

       i

i    U(t)

j   -U(t)             Этот вектор почти нулевой

       Y

Принцип построения аналогичен матрице С.

Характеристики модели в ОКБ.

Достоинства:

- Метод построения прост, обладает низкой трудоемкостью.

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

Недостатки:

- Используется только один вид зависимых источников.

- Наличие интегральных уравнений.

2) Построение модели в РОКБ с помощью ММУП.

Цель - избавиться от интегральных уравнений и оставить только дифференциальные уравнения.

1. Записывается модель в ОКБ.

2. Избавляемся от интегральных членов уравнения ( вида 1/pL, т. к. 1/р - оператор интегрирования), преобразовывая их в новые неизвестные (например, токи).

3.   

   ì  C*dX(t)/dt+G*X(t)=Y(t)

   î  X(0)=X0

  X(t),dX(t)/dt,Y(t)-вектора

  С,G-матрицы.

Это система линейных обыкновенных дифференциальных уравнений 1-го порядка с постоянными коэффициентами в неявной форме.

Решаем полученную систему.

Достоинства:

1. В модели могут быть любые типы источников.

2. Низкая трудоемкость (т. к. метод прост).

3. Отсутствуют интегральные уравнения.

Недостатки:

Выросла размерность решаемых задач.

3)   

                                            Ul

dX(t)/dt=x(t)+C*Y(t)    X=         ;  X(0)=X0

                                            Uc 

МПС сложен для осмысления и для реализации. МПС можно построить, если в схеме нет топологических выражений (это контуры из емкостей или звезды из индуктивностей).

Чтобы выйти из этой ситуации, в схему вводят дополнительные элементы, но снижается точность вычислений.

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 ÷  p÷

Достоинства и недостатки:

- Нули и полюсы заранее известны по виду функции (больше полезной информации).

- Точное решение многочлена высокой степени (>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:interface1.int>

<C:interface2.int>

<C:interface3.int>

/Блок описания объектов:/

<0. Редакторы схем.>

1.’C:editmap.exe’

    <привязан к файлу схемы>’C:editmap.map’

    <привязан к интерфейс файлам:>’С:interface1.int’,’C:interface2.int’

    <взять данные из файла>’C:interface1.int’<номер раздела>’15’

    <выдать результаты в файл>’C:interface2.int’<номер раздела>’16’

2.

.........................................................................

.........................................................................

.........................................................................

<1. Построители моделей.>

1.’С:uildmodel1.exe’

     <привязан к файлу модели>’C:modelmodel1.mod’

    <привязан к интерфейс файлам:>’C:interface2.int’

    <взять данные из файла>’C:interface2.int’<номер раздела>’16’

    <выдать результаты в файл>’C:interface2.int’<номер раздела>’17’

2.

...........................................................................

...........................................................................

...........................................................................

<2. Математические методы.>

1.’С:methodokb1.met’

     <привязан к интерфейс файлам:>’C:interface2.int’,’С:interface1.int’

    <взять данные из файла>’C:interface2.int’<номер раздела>’17’

    <выдать результаты в файл>’C:interface1.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 поддерживает  многопроцессорную обработку,тоесть можно распараллелить вычисления

на нескольких процессорах, что даст огромный вклад в производительность системы.

Что касается технологии программирования,то из достаточно большого их числа:структурное

программирование,объектно-ориентированоое,смешанное и т.д. более эффективным будет вы-

бор смешанного,поскольку та или иная технология позволяет упростить программирование только в каких-то определенных рамках.Таким образом,используя смешанную технологию

мож но будет получить максимальный эффект от написания программы.