Устройство для решения линейных дифференциальных уравнений
Иллюстрации
Показать всеРеферат
ИЗОБРЕТЕНИЕ ОТНОСИТСЯ К ЦИФРОВОЙ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКЕ ,В ЧАСТНОСТИ, К УСТРОЙСТВАМ ДЛЯ РЕШЕНИЯ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ. ЦЕЛЬ ИЗОБРЕТЕНИЯ - РАСШИРЕНИЕ ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ ЗА СЧЕТ РЕШЕНИЯ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ВЫСОКОГО ПОРЯДКА. ПОСТАВЛЕННАЯ ЦЕЛЬ ДОСТИГАЕТСЯ ТЕМ, ЧТО УСТРОЙСТВО СОДЕРЖИТ ГЕНЕРАТОР 1 ТАКТОВЫХ ИМПУЛЬСОВ, Р СДВИГАЮЩИХ РЕГИСТРОВ 2<SB POS="POST">1</SB>-2Р ГДЕ Р - РАЗРЯДНОСТЬ ПЕРЕМЕННЫХ, N УМНОЖИТЕЛЕЙ 3<SB POS="POST">1</SB>-3Р, ГДЕ N - ЧИСЛО ШАГОВ ОСРЕДНЕНИЯ, ПЕРВЫЙ СУММАТОР 4, БЛОК 5 ПАМЯТИ, РЕГИСТР 6, ВТОРОЙ СУММАТОР 7, Р ЭЛЕМЕНТОВ ИЛИ 8<SB POS="POST">1</SB>-8Р, БЛОК 9 УПРАВЛЕНИЯ, БЛОКИ 10 ИНТЕРПОЛЯЦИИ, 11 ФОРМИРОВАНИЯ ВЕКТОРОВ И 12 ИНТЕГРИРОВАНИЯ. 3 З.П. Ф-ЛЫ, 4 ИЛ.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ .
РЕСПУБЛИК
„.,Я0„„14764 (51) 4 С 06 F 15/32
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
AO ИЗОБРЕТЕНИЯМ И OTHPblTHRM
ПРИ ГКНТ СССР (21) 4314610/24-24 (22) 08.10.87
1 (46) 30.04.89. Бил. 9 16 (71) Институт проблем моделирования в энергетике АН УССР (72) В.В.Васильев, Г.Я.Береговенко, С.Е. Саух, В.В.Федотов и Н.В.Федотов (53) 681.325 (088.8) (56) Урмаев А.С. Основы моделирования на аналоговых вычислительных машинах. — М.: Наука, 1974, Авторское свидетельство СССР
1р 928351, кл. С 06 F 7/64, 1981. (54) УСТРОЙСТВО ДЛЯ РЕШЕНИЯ ЛИНЕЙНЫХ
ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ . (57) Изобретение относится к цифровой вычислительной технике, в частности к устройствам для решения линейных дифференциальных уравнений.
Цель изобретения — расширение функциональных возможностей за счет ре- шения линейных дифференциальных уравнений высокого порядка. Поставленная цель достигается тем, что устройст» во содержит генератор 1 тактовых импульсов, р сдвигавщих регистров 2,—
2 р, (где р — разрядность переменных) и умножителей 3, — 3 „, (где n — число шагов осреднения), первый сумматор 4, блок 5 памяти, регистр б, второй сумматор 7, р-элементов ИЛИ 8„- 8р, блок 9 управления, блок 10 интерполя" ции, блок ll формирования векторов и g блок 12 интегрирования. 3 s.п.ф-лы, 1476486
Изобретение относится к цифровой вычислительной технике, в частности к устройствам для решения линейных дифференциальных уравнений.
Цель изобретения — расширение функциональных воэможностей за счет решения дифференциальных уравнений высокого порядка.
На фиг.! изображена схема устройстна; на фиг.2 — схема блока интерполяции; на фиг.3 — схема блока формирования векторов; на фиг.4 — схема блока .интегрирования.
Устройство содержит генератор 1 импульсов, сдвигающие регистры 2,—
2, умножители 3„- 3„, первый сумма-. тор 4, узел 5 памяти, регистр 6,. второй сумматор 7, элементы ИЛИ 8, — 8, блок 9 управления, блок 10 интерполя- 20 ции, блок 11 формирования векторов и блок 12 интегрирования.
Блок 9 управления состоит из счетчика 13, первого 14 и второго 15 триггеров, первого 16, второго 17 и 25 третьего 18 элементов И и элемента
ИЛИ 19.
Блок 10 интерполяции образуют первый 20, второй 21 и третий 22 узлы памяти, первый 23, второй 24 и третий 30
25 счетчики, регистр 26, умножитель
27, сумматор 28, дешифратор 29, первый 30, второй 31 и третий 32 триггеры, первый 33, второй 34, третий
35, четвертый 36, пятый 37, шестой
38, седьмой 39, восьмой 40 и девятый 41 элементы И, а также первый 42 и второй 43 элементы ИЛИ.
Блок 11 формирования векторов включает в себя узел 44 памяти, пер- 4р вый 45 и второй 46 счетчики, регистр
47, умножитель 48, сумматор 49, коммутатор 50, триггер 51, элемент HE 52 первый 53, второй 54 и третий 55 элементы И„,элемент ИЛИ 56 и элемент 45
ИСКЛН)ЧАЮЩЕЕ ИЛИ 57.
Блок 12 интегрирования содержит группу из q узлов памяти 58,!„!—
58 !, узел 59 памяти, первый 60, второй 61, третий 62 и четвертый 63 счетчики, первый 64, второй 65 и третий 66 дешифраторы, первый 67 и второй 68 триггеры, группу из элементов
И 69 — 69 <1 1, первый 70, второй
71 и третий 72 элементы И, а также первый 73 и второй 74 элементы И3!И.
Для простого интегратора справедливы. выражения для ступенчатых изображений
Б(у ) =1! "О, (S Гу "- )Ягу ) VP (у ).
Обозначим в правой части выражения (1) вектор ступенчатых изображений известных значений через
N j,(у, 3, который для квадратичной (j! интерполяции имеет вид м у j (S Cy, ) +UP<(y 3 ) =S tó,""l+(— - 8(у, "1 +
+ — а8(у + ))8(1) + -- S Ty ") 8 12 12 О
=(8(у, 3+ — - St>."1 (2a) + — — 8 (у "3)SCi) +
12 о
2 8(У ° 1
h (pi - (Ч -11 для кубической интерполяции
Мз(у 3 =(S CZ". 3+
+-g- я(y >) +- — !8(у, Л +
0 12
24 (q-s) (%-1!
"Sg<= m» SCl) + mz 8р+ (%-11 - /
+-m ., Scp (26) БА Б/ и т д. имегде векторы s C! ), ют вид
S(l) =(l,1..., !) ! (1 0
% Э е..О) 1 (1 -l
h т (3) + — — S CУ 3)$(11 +(— - S C у »l+
h < (g) h1
24 " 12
1476486
О О
24
28
9
24 о о
9 О
28
23
24 (4) I0 vqç h
- c+-j+<) — (s-i+ )—
- 2. v О„м„(у, - ). (7б) 23
28 9
24 24
23 28
24 24
1 Е а;- — = f(<) %-1
1=О dc (5) у" + 0,25y= 0 с начальными условиями
35 у(0) = O; у (О) = 0,5.
О 0 0 (7а) 55
5 О 0
13
UO =Ь 1
l3 5 О
12 12
SS"= — - (I 2,1 0,...,0)".
Для выражения ()) имеют
s (y 1- v q „s fy)Допустим необходимо решить дифференциальное уравнение с постоянными коэффициентами
20 и начальными условиями у(0), у (О), ..., y -- (0).
Подставляя ступенчатые иэображения для производных (4) в (5) получают
s(yJ т v q 8(к1
1
I--о 1= i
k 30 х М1,(y l 1 "j
Элементы первого столбца матри-1 цы Т и обратной матрицы Т могут быть вычислены по формулам (см.
Береговенко Г.Я., Пухов Г.Е. Ступенчатые изображения и их применение.—
Киев: Наукова думка, 1983, с.106).
Ступенчатое изображение (6) решения дифференциального уравнения пред40 ставляет собой аппроксимацию искомого решения, которая тем точнее, чем меньше шаг h. Точность значений сту-! пенчатых изображений можно увеличить не только уменьшением шага h но и
45 применением для представления функций интерполяционных полиномов более высоких степеней k, с которыми связаны треугольные матрицы например, для квадратичной интерполяции k=2 для кубической интерполяции k 3
Определение элементов матриц вида (7а) и (7 ) при применении интерполяционных полиномов более высоких степеней не требует предварительных вычислений, т.к. непосредственно связаны с коэффициентами формулы
Грегори. Следовательно, можно считать заранее известными и элементы матриц U»Q „, представляющих собой
% более высокие степени матриц (7а) и (7б).
Рассмотрим пример решения дифференциального уравнения
В этом случае q = 2; à о- 1; а„01 а 1 = 0,25.
Решение проводят с применением.интерполяционного полинома 2-й степени. Шаг осреднения h выбирают равным 0,1. Ступенчатые изображения начальных условий S(y,1= -0,025;
St.y î J= 0,5;. S jy ", J = 0,00625;
48Гу J = Оэ000625; dslyа J
= -0,0125.
Вычисленные по формулам элементы первого столбца матрицы Т имеют значения Q,= 0,999561; 1 = -0,002255; (} = -0,0050077; Q = -0,007647; . Q g = -0,0104545; Q1= -0,01327246; . (1, = -0,0161144.
С учетом формулы (?a) и коэффициентного уравнения на основании выражения (6) получают
S(yj =Т U Q Sff3 +Т 1 а,(Я (у7 +
1476486 6 (Я (у )+ БРт Гу 3 ) 1
Т UO,S ff j + T (М (у) +Ups (y 3 )=
h h
+ — — a S Су "3 )St13 + - — S (у" 1 S +
12 О 12 0
Значения коэффициентов для вектоРа равны б
+ UP Гу 7+ Ug<(S(y. )+ Щ(у" 3 )3 +
T UQ,Stf) + T (t(SCy,7
+ Uq f(S,Гу 2+ -- S,Ü "1 +
T UO 8 tf) + Т (т1г S(1) +
+ m, Б Р + Ш! (ш„S(1) + m )) = Т Uq,sff l+ Т V.
4,5;5,5;6,5;...) + 0,000005208 (0,417;
1,083; 1; 1;...1) =(0,02500;
0,07504; 0,12506; 0,17508; 0,22510;
0,27501; 0,32501;...) .
Значения компонент искомого вектора БГУ 3 = (0,024989; 0,074951;
0,17415; 0,22310; 0,271434; 0,319180; 7
° ° ° ) °
При подготовке к решению задачи в счетчик 23 блока IO интерполяции и в счетчик 60 блока 12 интегрирования заносится в дополнительном коде число импульсов, равное степени интерполяционного полинома k используемого г при решении данного уравнения. В счетчиках 61 и 63 блока 12 интегрирования заносится в дополнительном коде число импульсов, равное порядку решаемого дифференциального уравнения q.
Кроме того, в ячейки узла 20 памяти блока IO интерполяции заносятся известные численные коэффициенты из формул вида (2а) и (2б). B ячейки узла 21 памяти блока 10 интерполяции заносятся по группам заранее подсчитанные численные значения величин т — (Оfyf + 2 о у
+ --- DS,tó ) } = -0,025 + 0,05х
1
О 5-0 1 — — О 000625 0 0000051
1 2
m = — — S у ) = О 01 — — О 5
Ы.
О, 000416; (8) т„ =. (S,Ly 3+ —,— S.ty" 3 +
+ — 8 ly .I ) 0,5 + 0
"Π00625 - Π1 — — 0 0125
%
12
0,500208;
h тп = — — S (y3 =001 ° -—
12 12 0,00625 = 0,000005208.
Используя векторы (3) получают вектор
-0,0000052(l; 1;...I) +
+ 0,00417(11 ;О; О;...0) +
+ 0,05002084(0,417; 1;5; 2,5; 3,5;
S(y 3,Ü 8(у, ) (данные о предыс30 тории) и т.д. i = О, где i — номер группы. В ячейки узла 22 памяти блока 10 интерполяции заносятся ступенчатые изображения заданных начальных условий задачи.
При этом численные коэффициенты и
35 данные о предыстории одной группы размещаются соответственно в блоках
20 и 21 памяти таким образом, чтобы при подаче прямой последовательности адресов из памяти одновременно извле40 кались численный коэффициент и соответствующие ему данные о предыстории согласно (2а) и (2б).
Устройство в процессе решения задачи оперирует и-мерными векторами, но число ячеек памяти для хранения этих векторов в каждом из узлов
58т !,!памяти не обязательно равно и.
Например, элемент 58,<, памяти содержит одну ячейку памяти для хранения первого из векторов вида (3), так как все элементы этого вектора равны 1. Второй из векторов вида (3) этой группы хранится в узле
58,«! памяти, состоящем всего из
55 2-х ячеек памяти, так как (кроме первого) остальные элементы вектора равны О. Второй узел 58 тт памяти содержит 3 ячейки памяти, третий—
1476486
4 ячейки и т.д, Третий узел 58 > памяти, в котором хранится 3-й из
k векторов, состоит из 5 ячеек памяти и т.д.
Аналогично определяется число, ячеек памяти любого из элементов
58 (н) памяти для хранения векторов.
Численные значения, составляющие любой вектор, записываются в узлы
58 1,1 1 памяти в каждой из q групп в прямой последовательности адресов сверху вниз.
Коэффициенты исходного дифференциального уравнения (5) заносятся в узел 59 памяти блока 12 интегрирова ния в прямой последовательности адресов а,...,а . Все остальные элементы памяти, регистры, счетчики импульсов и триггеры устанавливаются 20 в нулевое состояние.
Предварительно вычисляются по известным формулам элементы первых столбцов матриц Т и Т
Работа устройства начинается с 25 момента подачи импульса на вход запуска блока 9 управления, который устанавливает триггеры 14 и 15 соответственно в нулевое и единичное состояния 30
Вычисление обоих слагаемых в правой части выражения (6) производится одновременно . Первое слагаемое вычисляется следующим образом.
К моменту поступления импульса пуска значения элементов первого столбца матрицы Т U О поступают
1 каждое на вход соответствующего ему умножителя 3,- 3 „. С первым импульсом от генератора 1 импульсов первый элемент заданного вектора ЯГй ) поступает на входы сдвигающих регистров 2, — 2, причем каждый разряд i-го элемента этого вектора поступает на вход своего регистра 2;.
На первом выходе каждого сдвигающего регистра 2„- 2 р появляется информация о первом элементе вектора
Sff ), умножитель З„выдает на первый вход сумматора 4 результат произведения первого элемента столбца матрицы Т U Q 1на первый элемент вектора S(f ). С выхода сумматора 4 информация поступает на первый вход сумматора 7. Выбор адреса блока 5
55 памяти осуществляется счетчиком 13 блока 9 управления. Смена адреса происходит по импульсу ГИЗ, поступающему от генератора 1 импульсов на вход счетчика 13 импульсов. По тактовому импульсу ГИ4 от генератора 1 импульсов считывается в регистр 6 информация из ячейки блока 5 памяти °
Эта информация поступает с выхода ре-, гистра 6 на вход сумматора 7. По импульсу ГИ5 от генератора 1 импульсов результат сложения с выхода сумматора 7 записывается в выбранную ячейку блока 5 памяти. В данном случае в первую ячейку памяти заносится результат умножения первого элемента вектора Stf ) на первый элемент столбца матрицы T U Î . . 1с
Второй тактовый импульс ГИ1 сдвигает информацию о первом элементе вектора Sff ) во вторые разряды каждого из сдвигающих регистров 2, — 2, в первые разряды этих регистров поступает второй элемент вектора 8 ff ).
Умножитель 3 выдает на второй вход сумматора 4 результат произведения второго элемента вектора Я(К 1 на пер.
-1 1 вый элемент столбца матрицы Т Б Я
На первый же вход сумматора 4 поступает результат произведения первого элемента вектора S(f ) на второй эле-1 0 q, мент столбца матрицы Т U О „. По-. ступление аналогичной последовательности тактовых импульсов от генератора 1 импульсов приводит к тому, что во вторую ячейку блока 5 памяти заносится результат суммы двух парных произведений, представляющих собой произведения первых двух элементов вектора на второй и первый элементы столбца матрицы Т U g соответk ственно.
Таким образом, после поступления и-го импульса ГИ1 на сдвиговый вход регистров 2, — 2 р и последующей за ним серии сдвинутых тактовых импуль- сов от генератора 1 импульсов в блоке памяти содержатся элементы вектора промежуточного результата произведения вектора S(f) на матвицу
Т Б 10, т.е. первого из слагаемых в правой части выражения (6).
Параллельно с первым слагаемым вычисляется и второе векторное слага". емое в правой части выражения (6) следующим образом.
Тактовые импульсы ГИ2 от генера-. тора 1 импульсов через элемент И 35 поступают на вход счетчика 24 и через элемент ИЛИ 42 на вход счетчика 23. В счетчик 23 импульсов предварительно занесена в дополнительном
1476486
10 коде степень используемого при решении интерлоляционного полинома, инверсные выходи этого счетчика соединены с адресным входом узла 20 памяти блока 10 интерполяции. В узле
20 памяти хранятся .значения коэффициентов. С выхода счетчика 24 подаются адреса на вход узла 21 памяти блока 10 интерполяции. Из узла 21 памяти при работе устройства данные о предыстории также лишь считываются, однако из этой группы ячеек памяти, на которую подается управляющий сигнал считывания, который поступает с выходов дешифратора 66.
Таким образом, с каждым тактовым импульсом ГИ2 на умножитель 27 блока
10 интерполяции поступает пара сомножителей, соответствующих друг другу: из узла 20 памяти — коэффициент, а из узла 21 памяти — соответствующие ему данные о предыстории в соответствии с формулами (2а) и (26). В качестве третьего сомножителя на умножитель 27 подается шаг осреднения h. Результат этого произведения через элемент И 39 поступает на вход сумматора 28. Это обеспечивается разрешениями на других входах элемента И 39, которые поступают с нулевых выходов триггеров
30 — 32. Так как выход сумматора 28 связан через регистр 26 с собственнь м входом, а запись в регистр через элемент И 40 осуществляется тактовым импульсом ГИI от генератора I,то сумматор 28 складывает текущее значение произведения с предыдущим. Таким образом определяются числовые множители для данного решаемого дифференциального уравнения перед векторами (3), из которых образуются векторы (2а) и (26).
При поступлении числа импульсов
ГИ2 от генератора 1 импульсов на входы счетчиков 23 и 24, равного степени используемого в данном решении интерполяционного полинома, и, сле- довательно, образовании в сумматоре
28 суммь| из трех сомножителей, триггер 30 импульсом переполнения счетчика 23 устанавливается в единичное состояние. Ia вход сумматора 28 информация поступать не может из-за снятия разрешающего сигнала на элементе И 39 от триггера 30. Первый числовой множитель для данного уравнения выдается с выхода сумматора 28.
В формулах (2а) и (26) первый числовой множитель содерЖит кроме суммы сомножителей еще и соответствующее начальное условие. Информация
5 о начальном условии поступает из узла 22 памяти на вход сумматора 28 через элемент И 37 при дешифрации лишь последнего адреса со счетчика 23 дешифратором 29.
Как видно из формул (2а) и (26) для векторов М у числовые множители m," перед векторами вида (3) представляют собой суммы трех сомножителей, при этом число складываемых сомножителей из коэффициентов и данных о предыстории каждый раз сокращается. Это организовано синхронной подачей нужных адресов на входы ячеек узлов 20 и 21 памяти блока 10 интерполяции следующим образом.
После установления триггера 30 в единичное состояние импульсы ГИ2 продолжают поступать в счетчики 23 и 24
25 до переполнения счетчика 24. Импульс переполнения счетчика 24 устанавливает в единичное состояние триггер 31.
К этому моменту информация в счетчике 23 восстанавливается, так как счетчики 23 и 24 работают параллельно, Единичное состояние триггера 31 запрещает поступление импульсов ГИ2 на входи счетчиков 23 и 24 через элемент И 35, но через элемент И 33 и элемент ИЛИ 42 проходит ровно один
35 импульс ГИ2 на вход счетчика 23, по<.кольку он устанавливает в нулевое состояние триггер 30. Этот импульс через элемент ИЛИ 43 записывается в счетчик 25, Таким образом происходит сдвиг начального адреса выбора коэффициентов из элемента 20 памяти ровно на один адрес по сравнению с исходным, записанным предварительно в
45 счетчик 23, в результате организуется соответствие синхронной выборки пар сомножителей из узлов 20 и 21 памяти.
Во время этих вспомогательных
50 действий на вход сумматора 28 информация не поступает, так как на входе элемента И 39 отсутствует разрешающий сигнал сначала с нулевого выхода триггера 30, а затем с нулевого выхода триггера (Q)
Числовой множитель т; появится в момент окончания регенерации содержимого счетчика 23, т.е. когда триггер 31 устанавливается в единичное
1476486
I состояние импульсом переполнения счетчика 24. Числовой множитель m < 11
1 поступает на вход умножителя 48. На другой вход умножителя 48 подается значение первого коэффициента а дифференциального уравнения, выбранное из узла 59 памяти блока 12 интегрирования по адресу, предварительно установленному с помощью счетчика 62 этого блока.
По управляющему сигналу с нулевого выхода триггера 51 выходы счетчика 46 через коммутатор 50 соединяются с адресными входами узлов 58,< i — - 15
58 <„1 памяти. В процессе работы устройства к узлам 58 r — 58 q< } памяти обращаются лишь в режиме считывания. Необходимый управляющий сигнал считывания вырабатывается 20 элементами И 69 1<„1 в 69;(,(ц по совпадению информации о номере узла 58 памяти из счетчика 60 через дешифратор 64, о номере группы узлов 58 памяти из счетчика 61 через дешифратор 25
65, о числе обращений к элементам 58 1(1,1- 58 «(,((,(памяти из счетчика 63 через дешифратор 66.
Первоначально сигнал считывания с элементов И 69,((,» — 69 <,<ц подается на первый узел 58,<„ . С выхода счетчика 46 блока 11 формирования векторов через коммутатор 50 считанная информация из первой ячейки узла
581< 11 памяти поступает на вход ум. 35 ножителя 48 и на единичный вход триггера 51 блока 11 формирования векторов. Последнее происходит из-за того, что узел 58 „<„ памяти содержит всего одну ячейку памяти, так как 40 из (3) все компоненты вектора S(1.( состоят из 1 и можно хранить лишь одно его значение. Об этом свидетельствует сигнал метки в соответу ще разряде которыи устанавли 45 вает триггер 51 в единичное состояние. Единичное состояние триггера
51 запрещает дальнейшее поступление тактовых импульсов ГИЗ через элемент
И 53 на вход счетчика 45 и снимает
50 50 управляющий сигнал с коммутатора 50.
Поскольку на других входах умножителя 48 информация уже присутствует, результат произведения поступает на вход сумматора 49,блока 11 фор55 мирования векторов. По адресу с выхода счетчика 46 из выбранной первой ячейки узла 44 памяти по сигналу считывания информация иэ данной ячейки, (первоначально нулевая) записывается в регистр 47 и с него подается на вход сумматора 49. Информация с выхода сумматора 49 записывается в выбранную ячейку узла 44 памяти сигналом .записи с выхода элемента И 16.
Каждый последующий импульс ГИЗ, поступающий на вход счетчика 46, изменя- . ет адрес ячейки узла 44 памяти, в которые по аналогии с предыдущим записывается результат произведения с умножителя 48 через сумматор 49 с помощью регистра 47. Таким образом, формируется и-мерный вектор в ячейках узла 44 памяти. Об окончании формирования вектора свидетельствует им:пульс переполнения счетчика 46, который устанавливает триггер 51 в нулевое состояние и через элемент ИЛИ 56 сбрасывает счетчик 45 в исходное состояние.
При считывании по адресу из ячеек какого-либо узла 58 7(s) 58 q.(a) памяти нулевой информации она поступает на вход элемента НЕ 52, с выхода ко-. торого сигнал через элементы И 55 и
ИЛИ 56 сбрасывает счетчики 45 и 46 в исходное состояние. Таким образом, не затрачивается время на формальное формирование неинформативных компонент и-мерного вектора в узле 44 памяти.
В случае считывания по какомулибо адресу из ячеек узлов 58
58 (1 памяти отрицательной компо% ненты вектора, сигнал со знакового разряда с выхода блока 12 интегрирования поступает на управляющий вход элемента ИСКЛИЧАИЩЕЕ ИЛИ 57 для образования дополнительного кода числа.
Таким образом, на вход умножителя 48 отрицательная компонента вектора поступает в дополнительном коде. Сигналом об окончании формирования п-мерно. го вектора в узле 44 памяти служит импульс переполнения счетчика 46.
Этот сигнал осуществляет сброс реги— стра 26 в исходное состояние и через элемент И 38 устанавливает в нулевое состояние триггер 31. Кроме того, этот сигнал через элемент И 38 поступает на вход счетчика 60 этого блока.
Этим осуществляется переход режима считывания к следующему узлу 58,(Ä( памяти. Вектор не формируется, так как отсутствует разрешающий сигнал с единичного выхода триггера 31. Устройство переходит к определению второго чиолоеого множителя перец нек13
1476486
14 торами (3), из которых образуются векторы (2а) и (2б).
Поскольку сигналом окончания формирования вектора триггер 31 блока
l0 интерполяции установлен в нулевое состояние, с его нулевого выхода имеется разрешение на входе элемента
И 35. Это позволяет импульсам ГИ2 от генератора 1 поступать на входы счетчиков 23 и 24, что приводит к смене r адреса.и, следовательно, выбору следунн1<их коэффициентов и данных о предыстории соответственно из узлов 20 и 21 памяти. Далее устройство работает так же,как и при определении первого числового множителя. При этом на начальный адрес на входе узла 20 памяти сдвинут ровно на 1 по сравнению с предыдущим, как того требуют выражения (2а) и (2б) .
Далее устройство работает так же как и при, формировании первого вектора.
Количество числовых множителей для данного уравнения всегда равно степени используемого интерполяцион. ного полинома и, кроме тога, последний из них представляет собой лишь один сомножитель из трех чисел на умножителе 27 блока 10 интерполяции . как следует из (2а) и (2б). После каждого определения числового множителя происходит сдвиг начального адреса на 1. Таким образом, после определения последнего числового множителя содержимое счетчика 23 равно нулю. В этом единственном случае происходит совпадение импульсов переполнения счетчиков 23 и 24, которое через элемент И 36 .устанавливает в единичное состояние триггер 32 блока
10 интерполяции, снимая разрешение с входа элемента И 39. Это дает возможность сохранить накопленную информацию в регистре 26. Кроме того, разрешается прохождение через элемент
И 34 регенерационной серии импульсов от генератора 1 в счетчики 23 и 25 через элементы ИЛИ 42 и 43 соответственно. К этому моменту в счетчике
25 занесено число импульсов, равное числу числовых множителей, и при прохождении регенерационной серии импульсов до переполнения счетчика
25, которое устанавливает в нулевое состояние триггер 32, в счетчике 23 восстанавливается исходная информация. Устройство оказывается подготовленным к определению числовых множителей для следующей группы формируемых векторов.
Сигнал об окончании формирования вектора с выхода блока 11 формирования векторов поступает на вход счетчика 60, в котором содержится порядковый номер числового множителя. После определения последнего числового множителя импульс переполнения счетчика 60 через элемент И 72 и элементы ИЛИ 74 и 75 поступает на входы счетчиков 61 и 62 соответст15 венка, таким образом с выхода счетчика 61 через дешифратор 65 формируется управляющий сигнал считывания на группу узлов 58 „<„1- 58,„<„ памяти. Поскольку счетчик 60 является
2р счетчиком с изменяемым коэффициентом счета, после переполнения в нем автоматически восстанавливается исходная информация (степень интерполяционного полинома).
25 - Для образования второго слагаемого в правой части выражения (6) каждый из числовых множителей m, дол I жен перемножаться с соответствующими коэффициентами а; и векторами
30 из соответствующих узлов 58 «<
58 <1,1 памяти. При этом для каждого последующего вектора M (y (, 1) вида (2а) и (2б) для последовательности j = l,п выборка векторов из груп" пы узлов 58 (gi — 58 q,(a) памяти сокращается на одну группу. Организовано это в устройстве следующим образом.
Сигнал переполнения счетчика 60 через соответствующие элементы посту4р пает на входы счетчиков 61 и 62, импульс переполнения счетчика 61 устанавливает триггер 68 в единичное состояние, разрешая поступление через элемент И 71 и элементы ИЛИ 74
45 и 75 на входы счетчиков 61 и 62 соответственно регенерационной серии импульсов.до переполнения счетчика 62 и установки в единичное состояние триггера 67. При этом в счетчике ál восстанавливается исходная информация. Поскольку на входе элемента
И 70 с единичных выходов триггеров
68 и 67 имеются разрешения, то с выхода блока 12 интегрирования проходит лишь один импульс ГИ2, который устанавливает триггеры 67 и 68 в нулевое состояние и поступает на вход счетчика 61, В результате формирующийся на элементах И 69 i.(l,) — 69 (.1
l5
1476486 !
6 управляющий сигнал считывания с выходя счетчика 61 через дешифратор 65 для исходной группы узлов 58 („!
58 q,
5 единицу по сравнению с предыдущим.
Синхронность выборки коэффициентов а; исходного уравнения и обращения к уэ58;(I 58 (,! соответствующей r nnû обеспечивается тем, что с выходов счетчика 61 через дешифратор 65 формируются управляющие сигналы считывания, выходы счетчика 62 соединены с адресными входами узла 59 памяти, где предварительно записаны значения коэффициентов. 15
Выходы счетчика 63, на вход которого поступают импульсы переполнения со счетчика 61, через дешифратор 66 вырабатывают сигналы считывания на элементах И 69 i(v — 69 t(! для узлов 58 „<„ — 58 „> памяти соответствующей группы. Кроме того, выход счетчика 63 связан с адресным входом узла 22 памяти, где хранятся ступенчатые изображения начальных 25 условий. Импульс переполнения счетчика 63 с выхода блока 12 интегрирования устанавливает триггер 14 в единичное состояние. Этот сигнал свидетельствует о том, что определены 30 все векторы М1, у „II ) вида (2а) и (2б), число которых равно порядку решаемого дифференциального уравнения.
Сигнал с единичного выхода триггера !4 свидетельствует о том, что определен результирующий вектор для второго слагаемого в правой части выражения (6) .
По этому сигналу элементы первого столбца матрицы T подаются на входы соответствующих умножителей
3, — 3„. Тактовые импульсы ГИЗ поступают на входы счетчиков 13 и 46, в результате чего формируются адреса блока 5 памяти и узла 44 памяти. По 45
ГИ4 происходит считывание значения компонент промежуточного вектора первого слагаемого выражения (6) из выбранной ячейки памяти и запись его в регистр 6. Так .как триггер 14 блока 9 управления находится в единичном состоянии, по ГИ5 происходит считывание значений компонент промежуточного вектора второго слагаемого выражения (6). Как и при вычислении произведения столбца матрицы Т U Q
k на вектор Stf J, вычисляется произведение столбца матрицы Т " на значения компонент промежуточного векторя второго слагаемого в выражении (6) и суммирование их на сумматоре
7 со значениями компонент промежуточного вектора первого слагаемого выражения (6), поскольку запись в ячейку блока 5 памяти происходит по ГИ5.
Через и импульсов ГИ5 в ячейках блока 5 памяти хранится результат решения дифференциального уравнения. Момент получения результата решения может быть зафиксирован одновременным переполнением счетчиков 13 и 46 соответственно блока 9 управления и блока !1 формирования векторов.
Ф о р м у л а и з о б р е т е н и я !. Устройство для решения лиьейных дифференциальных уравнений, содержащее с первого по р-й сдвигяющие регистры (где р — разрядность переменных),с первого по и-й умножители (где и — число шагов осреднення), первый сумматор и генератор тактовых импульсов, причем первый выход генератора тактовых импульсов подключен к входам сдвига сдвигающих регистров с первого по р-l, выходы с первого по и-й i-го (i=l,...,р) сдвигяющего регистра подключены к д-м входам соответственно умножителей с первого по п-й,(р+1)-е входы умножителей с первого по и-й подключены соответственно к входам с первого по и-й столбца определяющей матрицы устройства, выходы умножителей с первого по и-й подключены соответственно к входам с первого по и-й первого сумматора, о т л и ч я ю щ е е с я тем, что, с целью расширения функциональных возможностей устройства за счет решения линейных дифференциальных уравнений высокого порядка, в него введены с первого по р-й элементы
ИЛИ, второй сумматор, регистр, блок памяти, блок управления, блок интерполяции, блок формирования векторов и блок интегрирования, при этом с первого по р-й входы значений ступенчатого изображения устройства подключены соответственно к первым входам элементов ИЛИ с первого по р-й, выходы которых подключены соответственно к информационным входам сдвигающих регистров с первого по р-й, вход шага осреднения устройства подключен к первому информационному входу блока интерполяции, вход запуска устройст17
1476486
18 ва подключен к входу запуска блока управления, первый выход генератора тактовых импульсов подключен к пер1 вому входу синхронизации блока интер5 поляции, второй выход генератора тактовых импульсов подключен к второму входу синхронизации блока интерполяции и первому входу синхронизации блока интегрирования, третий выход генератора тактовых импульсов подключен к входу синхронизации блока формирования векторов и первому входу синхронизации блока управления, четвертый выход генератора тактовых импульсов подключен к второму входу синхронизации блока управления, входу записи регистра и входу чтения блока памяти, пятый выход генератора тактовых импульсов подключен к треть- gp ему входу синхронизации блока управления и входу записи блока памяти, выход первого сумматора подключен к первому входу второго сумматора, выход которого подключен к информацион- 25 ному входу блока памяти, выход которого подключен к выходу результата устройства и информационному входу регистра, выход которого подключен к второму входу второго сумматора, пер- 3р вый выход блока интегрирования подключен к входу режима блока управле-, ния, с первого по пятый. выходы которого подключены соответственно к вы ходу признака результирующего векто- 35 ра устройства, адресному входу блока памяти, первому и второму управляющим входам блока формирования векторов и входу. запуска генератора тактовых импульсов, шестой выход которого 4О подключен к третьему входу синхронизации блока интерполяции и второму входу синхронизации блока интегрирования, первый, второй и третий выходы блока интерполяции подключены соот- 45 ветственно к первому, второму информационным входам блока формирования векторов и первому информационному входу блока интегрирования, выходы с второго rio q+3)-й которого подключе(50 ны соответственно к информационным входам с второго по (с1+3)-й блока интерполяции, (q+4)-й информационный . вход которого подключен к первому выходу блока формирования векторов, выходы с второго по (р+1)-й которого подключены соответственно к вторым входам элементов ИЛИ с первого по р-й,(р+2)-й выход блока формирования векторов подключен к второму информационному входу блока интегрирования, выходы которого с (q+4)-ro по (q+7)-й подключены соответственно к информационным входам с третьего по шестой блока формирования векторов, при этом блок управления содержит счетчик, два триггера, три элемента И и элемент ИЛИ, причем вход запуска блока управления подключен к входу установки в "О" первого триггера и входу установки в ."1" второго триггера, вход режима блока управления подключен к входу установки в "1" первого триггера, прямой выход которого подключен к первому входу первого элемента И и первому выходу блока управления, инверсный выход первого триггера подключен к первым входам второго и третьего элементов И, первый н второй синхровходы блока управления подключены соответственно к счетному входу счетчика и второму входу треть-. его элемента И, третий синхровход блока управления подключен к вторым входам первого и второго элементов
И, информационный выход счетчика и выход второго элемента И подключены соответственно к второму и третьему выходам блока управления, выходы первого и третьего элементов И подключены к входам элемента ИЛИ, выход которого подключен к четвертому выходу блока управления, прямой выход второго триггера подключен к пятому выходу блока управления.
2. Устройство по п.1, о т л и— ч а ю щ е е с я тем, что блок интерполяции содержит три узла памяти, три счетчика, регистр, умножитель, сумматор, дешифратор, три триггера, девять элементов И и два элемента
ИЛИ, причем первый вход синхронизации блока интерполяции подключен к первому входу первого элемента И, второй вход — к первым входам второго и третьего элементов И, третий вход — к первому входу четвертого элемента И, выход которого подключен к первым входам первого и второго элементов ИЛИ, выходы которых подключены соответственно к счетным входам первого и второго счетчиков, выход переполнения первого счетчика подключен к входу установки в "1" первого триггера и первому входу пятого элемента И, выход которого
1476486 подключен к входу установки в "!" второго триггера, прямой выход кото- ,рого подключен к второму входу четвертого элемента И, а инверсный вы" ход — к вторым входам второго и третьего элементов И и первому входу шестого элемента И, выход которого подключен к первому входу сумматора, выход которого подключен к первому входу седьмого элемента И и информационному входу регистра, выход которого подключен к второму входу сумматора, выход переполнения второго счетчика подключен к входу установки 15 в "0" второго триггера, информационный выход первого счетчика подключен к входу детифратора и адресному входу первого узла памяти, выход которого подключен к первому входу 20 умножителя, выход которого подключен к второму входу шестого элемента И, выход дешифратора подключен к первому входу восьмого элемента И, выход которого подключен к третьему 25 входу сумматора, прямой выход первого триггера подключен к третьему входу второго элемента И, выход которого подключен к второму входу пер-i вого элемента ИЛИ, входу установки в 30
"0" первого триггера и второму входу второго элемента ИЛИ, выход первого элемента И подключен к входу записисчитывания регистра, выход третьего элемента И подключен к третьему входу первого элемента ИЛИ и счетному входу третьего счетчика, информационный выход которого подключен к первому адресному входу второго узла памяти, выход которого подключен к 40 второму входу умножителя, выход переполнения третьего счетчика подключен к входу установки в "1" третьего триггера, инверсный выход которого подключен к третьему входу третьего 45 элемента И, к второму входу первого элемента И и третьему входу шестого элемента И, инверсный выход первого триггера подключен к четвертому входу шестого элемента И, третьему входу первого элемента И и первому входу девятого элемента И, выход седьмого элемента И подключен к первому выходу блока интерполяции, прямой выход третьего триггера подключен к второму выходу блока интерполяции, ".четвертому входу второго элемента И, вторым входам пятого и седьмого элементов И, выход девятого элемента, И подключен к третьему выходу блока интерполяции и входу установки в "0" третьего триггера, первый информационный вход блока интерполяции подключен к третьему входу умножителя, информационные входы с второго по (q+1)-й блока интерполяции подключены соответственно к адресным входам с второго по (q+1)-й второго узла памяти, (q+2)-й и (q+3)-й информационные входы блока интерполя-, ции подключены соответственно к входу чтения и адресному в