Научная статья на тему 'Моделирование дифференциальных уравнений второго порядка в процессоре с программируемой структурой'

Моделирование дифференциальных уравнений второго порядка в процессоре с программируемой структурой Текст научной статьи по специальности «Математика»

CC BY
225
38
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Моделирование дифференциальных уравнений второго порядка в процессоре с программируемой структурой»

Из рис. 2 видно, что лучи 1 и 2 не попали в приемник излучения, так как прошли среду насквозь. Если источник и приемник располагать ближе друг к другу, то траектория луча изгибается так, что он попадает в приемник излучения (лучи 3, 4, 5). Изложенная выше методика определения траекторий распространения света в биологической среде использована при неинвазивном мониторинге глюкозы в крови человека.

1. United States Patent «Non-invasive sensor capable of determining optical parameters in a sample having multiple layers» № 6,353,226, from March 5, 2002.//Khalil; Omar S.; Wu; Xiaomao; Kanger; Johannes Sake; Bolt; Rene' Alexander; Yeh; Shu-Jen; Hanna; Charles F.; de Mul; Frits Frans Maria.

2. Савельев И.В. Курс общей физики: Учеб. пособие: В 3-х т. Т. 2. Электричество и магнетизм. Волны. Оптика. М.: Наука. 1988. 496 с.

3. Тучин В.В. Лазеры и волоконная оптика в биомедицинских исследованиях. Саратов: Изд-во Сарат. ун-та, 1998. 384 с.

4. Гельфанд И.М., Фомин С.В. Вариационное исчисление. М.: Физматгиз, 1961. 228 с.

МОДЕЛИРОВАНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ВТОРОГО

ПОРЯДКА В ПРОЦЕССОРЕ С ПРОГРАММИРУЕМОЙ СТРУКТУРОЙ

Управление сложными техническими объектами сопряжено в ряде случаев с интегрированием дифференциальных уравнений в режиме многократного опережения реального масштаба времени при наличии ограничений на массо-габаритные характеристики ЭВМ. Примером является задача сброса груза с самолета в заданную точку, которая решается с помощью алгоритма прицеливания, приведенного в [1]. Данный алгоритм требует предсказания координат точки падения груза для каждого текущего момента времени в предположении, что груз сброшен. Искомые координаты могут определяться либо интегрированием уравнений движения груза в атмосфере Земли, либо аппроксимацией многомерных таблиц, содержащих заранее рассчитанные значения. Первый вариант более универсален, но требует сверхвысокого быстродействия бортовой ЭВМ, что трудно обеспечить в условиях малых габаритов. По этой причине предпочтение получает второй вариант, несмотря на его очевидные недостатки.

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

Рассмотрим основную задачу внешней баллистики [2]. В упрощенной постановке данную задачу можно сформулировать в виде системы дифференциальных уравнений второго порядка:

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

М.И.Ледовской

bvvx,

(1)

d Уу

---= -Р(аУу + ауУ),

dt2 У У

x(t0) = Хо> У(t0) = Уо>

vx(t0) = Ух0 = v0cos 0о>

Уу(^ = Vy0 = уо яп00, где t - время; х и у - текущие координаты материальной точки в вертикальной плоскости; V = д/УХ+^У - скорость; ух и уу - горизонтальная и вертикальная составляющие скорости; а = аХ +аУ - ускорение; ах и ау - горизонтальная и вертикальная составляющие

ускорения; g=9,81м/с2 - ускорение силы тяжести; р=0,407 • 10-4 - постоянный коэффициент. В начальный момент ^ материальная точка покидает координаты х0 и у0 со скоростью vo, направленной под углом 0О к горизонту. Затем, описав баллистическую траекторию, она попадает в конечные координаты хк и ук=0. Условие ук=0 определяет интервал [1;0, У, на котором интегрируется система (1).

Как отмечается в [3], непосредственное интегрирование уравнений второго порядка зачастую оказывается более эффективным, чем сведение этих уравнений к уравнениям первого порядка. Повышение эффективности заключается в уменьшении на порядок вычислительной погрешности. Однако в контексте настоящей работы более важное значение имеет следующее обстоятельство.

Непосредственное интегрирование уравнений системы (1) с помощью метода Штермера (Адамса-Штермера) [3] автоматически приводит к получению вторых разностей интегралов. Тем самым задается инкрементный способ вычисления интегралов на основе разностей второго порядка. Что же касается правых частей уравнений, то обычно они вычисляются на основе полноразрядных значений переменных. Это затрудняет реализацию в ЭВМ высокоскоростных параллельных вычислений из-за значительных аппаратных затрат на построение полноразрядных каналов обмена данными.

Как показано в [4], функциональные зависимости можно успешно воспроизводить в динамическом режиме, обрабатывая разности второго порядка. Такой прием позволяет организовать в ЭВМ параллельные вычисления, которые отличаются предельно высокой производительностью и существенным сокращением аппаратных затрат за счет обмена данными в виде малоразрядных разностей второго порядка. Следовательно, интегрирование системы (1) можно эффективно выполнить, используя инкрементный способ вычислений на основе разностей второго порядка.

Заметим, что ранее в [5] предложена методика интегрирования уравнений Шеннона на основе разностей второго порядка. В этом случае вторые разности образуются искусственно в результате применения разностного оператора V к формулам численного интегрирования уравнений первого порядка. Однако метод уравнений Шеннона имеет ряд существенных недостатков, что затрудняет его использование для решения рассматриваемой задачи.

С учетом изложенного выше интегрирование системы (1) следует возложить на проблемно-ориентированный процессор, который строится на следующих принципах. Во-первых, известный основополагающий принцип структурного моделирования дифференциальных уравнений, приводящий к построению процессора с программируемой структурой [6]. Для построения процессора используются операционные устройства сложения (вычитания), умножения, деления и интегрирования, предложенные в [4,7]. Поскольку эти устройства имеют жесткую структуру, то программирование структуры

процессора сводится к программированию коммутаций операционных устройств.

Во-вторых, инкрементный способ обработки информации, который хорошо зарекомендовал себя в методе уравнений Шеннона [6]. Однако в данном случае этот способ наполняется новым содержанием, а именно: интегралы дифференциальных уравнений моделируются с помощью операционных устройств-интеграторов, где вычисляются вторые разности интегралов по методу Штермера [7]; правые части уравнений моделируются с помощью операционных устройств сложения (вычитания), умножения и деления, в которых на основе вторых разностей операндов вычисляются вторые разности результатов соответствующих операций [4]. Использование полного базиса арифметических операций, включая операцию деления, позволяет расширить рамки применения инкрементного способа обработки информации по сравнению с методом уравнений Шеннона. В частности, удается успешно воспроизводить в динамическом режиме цепные дроби с инкрементной обработкой поступающих приращений аргумента. Кроме того, арифметические операции на основе приращений не обладают методической погрешностью и не накапливают вычислительную погрешность при воспроизведении функций в динамическом режиме [8]. Это позволяет получать идентичные результаты при переходе от обычного способа вычисления функций к инкрементному, что недостижимо в случае метода уравнений Шеннона из-за накопления методической погрешности. Наконец, исключается необходимость преобразования решаемой задачи в иную форму представления, так как в данном случае вместо арифметических операций на основе значений переменных выполняются их аналоги на основе вторых разностей. Поэтому можно использовать одну программу коммутаций операционных устройств для обоих способов вычислений.

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

С целью упрощения дальнейшего изложения рассмотрим процесс численного интегрирования одного уравнения второго порядка

d2z

dt2 (2)

^о>=^ ^0о>=^о> где z(t) - искомый интеграл; 2^) - первая производная.

В табл.1 приведен пример интегрирования уравнения (2) с помощью метода Штермера, где текущие значения интеграла вычисляются на основе вторых разностей: Vz1=Vz1_1+V2z1 - первая разность (приращение); V2z1 - вторая разность; z1=z1_1+Vz1 - значение интеграла в точке ^=^+^1 (1=0,1,2, ...); Vt - шаг численного интегрирования. Аналогично для функции £(:^). Однако на первом шаге такие вычисления затрудняются, поскольку приращение Vz0 неизвестно. По этой причине интегрирование уравнения (2) заменяется интегрированием двух уравнений первого порядка относительно интеграла z(t) и производной z/(t) соответственно. Для интегрирования данных уравнений используется модифицированный метод Эйлера, позволяющий вычислить приращение Vz1 (см. табл.1). Начиная со второго шага, выполняется непосредственное интегрирование уравнения (2) с помощью простейшей экстраполяционной формулы Штермера, благодаря

чему вычисляется вторая разность У^. Значения функции вычисляются на основе вторых разностей, начиная с третьего шага.

Таблица 1

Номер шага 1 Формула численного интегрирования Методическая погрешность

1 1 т У^ = z 0У + 2^0Уг ’ z1 = z0 +У^- > = У

2 А = ^ + У^1, У^2 = ^У12, Уz2 = Уz1 + У2z2, zl = ^ + Уzl и? сч > = 2 2 У

1 > 3 У^—1 = У^—2 + У^—1, ^—1 = А—2 + УА—1, У^ = fi—1У12, Уzi = Уzi—1 + У2zi—1, ^ = zi—1 +Уzi и? сч > = 2 У

В табл.2 приведены алгоритмы целочисленной операции интегрирования, которые получены на основе табл.1 с помощью методики, изложенной в [7]. В приведенных алгоритмах Z/0, У2Ь У^ и Г0, Гь УГЬ УГ1-Ь У2Г1-1 - масштабированные целочисленные аналоги вещественных значений 7/0,У71, У^ и f0, f1, f1-1, Уf1, У^, У2f1-l соответственно;

, У222 - масштабированные неокругленные значения соответствующих разностей; 02(1-1) и Ог(1-2) - остатки округления, полученные на предыдущих шагах интегрирования; Р0П—1 [°]2 и Р—П [°]2 - функции, обозначающие выделение из двоичного кода целой и дробной части соответственно.

Округление вторых разностей с учетом остатков, как и в методе уравнений Шеннона [6], позволяет исключить накопление погрешности округления. Отличие заключается лишь в том, что здесь используются два остатка, а не один.

Т аблица 2

Номер шага 1 Целочисленная операция на основе разностей второго порядка

1 У 1 ^ 11 3 ° 2 — — =3 II II £ 0п - N |-у-' <1 н + + -п о ° п N ° Р о _ , 1 2 ' 2 ч О <1 ч

2 Ч = 40 +УЧ1, У232 = 2-п+РЧ1УТ2, Oz2 = Р-1г [У 2~2 + 20N1 - Oz0 ]2’ У % = Р01-1 У 2~ 2 + 20zl - Oz0 ] 2.

1 > 3 У^_1 =Уч;-2 +У2ч-1, ч;-1 = ч-2 +Уч;-1, У2~; = 2-п + РЧ;-1УТ2, 0zi = р-1г У 2^ + 20z(i-1) - 0z(i-2) ]2’ У2Zi = Р01-1 [у2~ + 20z(i-l) - 0z(i-2) ]2.

Для выполнения первого шага интегрирования, как видно из табл.2, необходимо вычислить начальное значение правой части уравнения (2), т.е. величину Fo, используя в качестве аргумента начальное значение интеграла 20. Традиционно для этой цели используется обычный способ вычислений на основе полноразрядных значений переменных. Однако в соответствии с изложенными выше принципами, значение F0 требуется найти с помощью инкрементного способа вычислений на основе одноразрядных или малоразрядных приращений. Для выполнения этого условия аргумент Z0 необходимо обрабатывать поразрядно, начиная со старших разрядов, в виде последовательности:

0

3 = 2П ^п-1 + 2П ^п-2 +--------+ 2^1 + 20z0 = X2kzk, (3)

к=п-1

где 2ке {0,1} - двоичная цифра; к - номер текущего разряда; п - разрядность аргумента. Тогда на к-м шаге в обработку вовлекается двоичная цифра 2к, что соответствует частичному значению аргумента

30к = 2п-12п-2 ••• 2к+12к00 ••• 0 = Z0(k+1) + ^к’ (4)

где Z0n=0 - начальное значение. Поступление 2к вызывает отклик в к-м разряде функции в виде одноразрядного или малоразрядного приращения У^, позволяющего найти ее частичное значение

Fok = 4-14-2 • • • fk+А 00 • • • 0 = Fo(k+1) + 2к Уfk, (5)

где Г0п=0 - начальное значение; {0,1}.

Приращение У4 можно найти, если аналогичный отклик будет определяться для каждой арифметической операции А=А(В,С), что позволит получить частичное значение ее результата

A0k - an-1an-2 ••• ak+1ak 00 ••• 0 - A0(k+1) + 2k Vak> (6)

где Аоп=0 - начальное значение; Vak - приращение в k-м разряде результата, вызванное поступлением соответствующих приращений операндов Vbk и Vck; ake{0,1}. Причем получаемый результат A0k должен соответствовать частичным значениям операндов:

B0k - bn-1bn-2 ••• bk+1bk00 ••• 0 - B0(k+1) + 2k Vbk,

C0k - cn-1cn-2 • • • ck+1ck00 • • • 0 - C0(k+1) + 2k Vck,

где B0n= C0n=0 - начальные значения; bk, cke {0,1}.

В табл.3 приведены целочисленные алгоритмы выполнения арифметических операций, которые позволяют находить величину F0 в поразрядном режиме вычислений. В основу этих алгоритмов положен инкрементный способ выполнения арифметических операций с помошью приращений [8]. Заметим, что операция деления выполняется с учетом остатка делимого R0(k+1), полученного на предыдущем шаге. Алгоритм операторов div и mod приведен на рис. 1.

Т аблица 3

Операция над значениями переменных Целочисленная операция на основе приращений с переменным весом

A0 - 2-sB0 ± 2-rC0 Oak - P-kn-1[2-S Vbk ± 2-r Vck + Oa(k+1)]2, Vak -Pkn-1[2-SVbk ±2-rVck + O^h

A0 - 2-n+v(B0 • C0) B0k - B0(k+1) + 2k Vbk> C0k - C0(k+1) + 2k Vck> Vak - 2-n+v+k[B0(k+1)Vck + C0kVbk], Oak - P-kn1[Vak + Oa(k+1)]2, Vak - Pk 1[V~k + Oa(k+1)]2

A0 - (2n-wB0)/C0 B0k - B0(k+1) + 2k Vbk, C0k - B0(k+1) + 2 Vbk, R0k - (R0(k+1) + 2n-w+k Vbk - 2k A0(k+1)Vck) mod 2k C0k, Vak - (R0(k+1) + 2n-w+k Vbk - 2kA0(k+0Vck) div 2kC,k, A0k - A0(k+1) + 2k Vak

Из табл.2 следует также, что выполнение второго шага интегрирования системы (2) сопряжено с вычислением значения р1, а также приращения УРЬ которое в общем случае является многоразрядным. Для этого можно воспользоваться изложенной выше методикой с той лишь разницей, что поразрядной обработке подвергается приращение интеграла У2ь начиная со старших разрядов, в виде последовательности

У^ = 2™ 1рт—1 + 2™ 2рт—2 +•••+ 21р1 + 2°р0 = Х2крк, (8)

к=т—1

где рке{0,1} - двоичная цифра; т - разрядность приращения. Тогда на к-м шаге вычисляется частичное приращение функции

УFlk = Ят—1 • • • Як+1Як 00 • • •0 = ур1(к+1) + 2к Уfk. (9)

где УР1т=0 - начальное значение; У^ - отклик в к-м разряде функции, вызванный

поступлением соответствующей цифры приращения аргумента рк; qk е {0,1}. Частичное

значение Г1к определяется по формуле

Р1к = Р'1(к+1) + 2к Ук> (10)

где Г1т= Г0 - начальное значение.

Для вычислений по формулам (9) и (10) в каждой арифметической операции формируются частичные приращения операндов и результата операции:

УВ1к =Рт—1Рт—2 • • • Рк+1Рк00 ••• 0 =УВ1(к+1) + ^УЬк, (11)

УС1к = у т—1у т—2 • • • ук+1Ук 00 ••• 0 = УС1(к+1) + ^ Уск>

УА1к = ат—1ат—2 "ак+1ак00 ••• 0 =УА1(к+1) + 2Уак>

где УА1т=УВ1т=УС1т=0 - начальные значения; ак, Рк, уке{0,1}. Частичные значения операндов и результата операции определяются по формулам

В1к = В1(к +1) + 2к Уьк, к (12)

С1к = С1(к+1) + 2 Уск,

А1к = А1(к+1) + 2к Уак, где А1т= А0, В1т= В0, С1т= С0 - начальные значения.

В табл.4 приведены целочисленные алгоритмы выполнения арифметических операций, которые позволяют находить значение Г1 и приращение УР1 в поразрядном режиме вычислений аналогично алгоритмам из табл.3. Наряду с этим в операциях умножения и деления определяются произведения УВ1УС1 и УА1УС1, которые необходимы для дальнейших вычислений на основе вторых разностей.

Как отмечалось выше, значения F1-1, начиная с третьего шага интегрирования, вычисляются на основе вторых разностей У Г1-1, которые могут быть одноразрядными или малоразрядными. Для нахождения этих разностей необходимо использовать алгоритмы арифметических операций на основе разностей второго порядка [4] (табл.5). Все исходные данные для вычислений по указанным алгоритмам определяются в результате реализации алгоритмов из табл.3, 4. Тем самым обеспечивается беспрепятственный переход от вычислений на основе полноразрядных значений переменных к вычислениям в динамическом режиме на основе разностей второго порядка. Алгоритмы, приведенные в табл.3-5, имеют общую основу построения, что упрощает их реализацию в операционных устройствах.

Т аблица 4

Операция над значениями переменных Целочисленная операция на основе приращений с переменным весом

Ai = 2-sBi ± 2_rCi Oak = P-kn-1[2-s+kvbk ±2-r+kVck + Oa(k+1)]2, Vak = Pkn-1[2-s+kVbk ±2-r+k Vck + Oa(k+i)]2

Ai = 2-n+v(Bi • Ci) VB1k = VB1(k+1) + 2k Vbk, VC1k = VC1(k+1) + 2k Vck, B1k = B1(k+1) + 2k Vbk> C1k = C1(k+1) + 2k Vck > (VBVC)ik = (VBVC)1(k+1) + 2k(VB1(k+1)Vck +VC1kVbk), Vak = 2 n+v+k[Bk+1Vck + CkVbk] 5 Oak = P-n1[V~k + Oa(k+1) ]2, Vak = Pk 1[V~k + Oa(k+1)] 2

A1 = (2n - wB1)/C1 VB1k = VB1(k+1) + 2k Vbk, VC1k = VC1(k+1) + 2k Vck, B1k = B1(k+1) + 2k Vbk > C1k = B1(k+1) + 2k Vbk > (VAVC)1k = (VAVC)1(k+1) + 2k(VAKk+1)Vck +VC1kVak), R1k = (R1(k+1) + 2n W+k Vbk - 2k A1(k+1)Vck) mod 2k C1k, Vak = (RKk+1) + 2n-w+kbk - 2kAKk+0Vck) div2kC1k, VA1k = VA1(k+1) + 2k Vak, A1k = A1(k+1) + 2k Vak

Операционные устройства, рассмотренные в [4,7], позволяют интегрировать уравнение (2), начиная с третьего шага, в соответствии с алгоритмами из табл.2 (1>3) и табл.5. Другими словами, они не учитывают рассмотренных выше особенностей выполнения первого и второго шага. На рис.2-5 приведена структура операционных устройств интегрирования, сложения (вычитания), умножения и деления, в которые включены новые блоки и связи для реализации алгоритмов из табл. 2 (1<2) и табл.3-4. К новым блокам , в частности, относятся мультиплексоры МР и демультиплексоры ДМ, обеспечивающие прием и выдачу приращений с переменным весом.

Приведенные операционные устройства могут вычислять значения переменных в двух режимах: поразрядном режиме на основе приращений с переменным весом и динамическом режиме на основе разностей второго порядка. В обоих режимах каждое операционное устройство работает как автоматы Мили, у которых состояние выхода в текущем шаге полностью определяется состояниями входов и внутренних регистров РГ. Причем задержка сигнала в операционных устройствах определяется лишь переходным процессом в комбинационных узлах, как это показано в [4]. Поэтому текущий шаг выполняется за один машинный такт.

Т аблица 5

Операция над значениями переменных Целочисленная операция на основе разностей второго порядка

Ai = 2-sBi ± 2-rCi Oai = P-n[2s V2Bi ± 2r V2Ci + 2Oa(i-1) - Oa(i-2)]2, V2Ai = Pon-1[2sV2Bi ±2rV2Ci + 2Oa(i-1) - O^h

A; = 2-n+v(Bi• Ci) vb; = vb;-1 + V2B;, vc; = vc;-1 + V2C;, b; = b;-1 + vb;, c; = c;-1 + vc;, (VBVC); = (VBVC);-1 + VBi-1V2Ci +VCiV2Bi, V2A; = 2-n+v[2(VBVC);-1 + (B;-1 + VBi-1)V2Ci + CiV2Bi], Oai = P0n 1[V2~~i + 2Oa(i-1) - Oa(i-2)]2 ’ V2Ai = Pn2n-1[V2Ai + 2Oa(i-1) - Oa(i-2)]2

Ai = (2n - WBi)/Ci vb; = vb;-1 + V2B;, vc; = vc;-1 + V2C;, Bi = B i 1 + VBi, Ci = C;- 1 + VCi, (VAVC) = (VAVC);-1 + VAi-1V2Ci + VAiV2Ci, Ri = [2Ri-1 - Ri-2 + 2n-w V2Bi - (Ai- + VAi-1)V2Ci --2(VAVC)i-1] mod Ci, V2Ai = [2R^1 - Ri-2 + 2n-W V2Bi - (A^1 + VAi-1)V2Ci --2(VAVC)i-1] div C;, va; = va;-1 + V2A;, Ai = Ai-1 + VAi

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

V = = л/^ в виде итерационной последовательности по методу Ньютона, огра-

ничившись, например, двумя итерациями. Начальное приближение для этой последовательности определим с помощью квадратичного полинома наилучшего приближения на интервале аппроксимации [0,1]:

У2Еы

1

РГ1 У2^

СМ1

РГ2 УЕ_

СМ2

РГ4 Е

УТ2

СДВ1

СМ3

СМ4

РГ9 У71ч

т

СМ5

РГ10 7-.

МР

ргз 7'

У 71 (2к=рк) Рис.2

7'

М2

5 М 1 СД В2

я

РГ7 о =(1-1)

РГ8 02(1-2)

о„

РГ6

РГ5

р

7

7

0

к

У 2В1 (УЬк)

У 2С1 (УСк)

-) СДВ1

СДВ2

•А, -А, М/ М/

СМ

МР

I

У 2А1 (УаК)

Рис.3

Л

РГ3 0а(1-1)

РГ4 0 а(1-2)

2

у0 = Р2^ + Р^ + Ро,

1 w

У1 = Т(у0 + —)’ (13)

2 Уо

1 w

V » У2 = -(У1 + —),

2 У1

где р2=-4/7, р1=48/35, р0=6/35. Погрешность вычислений по формулам (13) составляет

6 /22

1-10". Аналогично для операции а = ^ ах +ау. Заметим, что в результате

масштабирования переменных интервал [0,1] приводится к диапазону [0,2п-1-1], в котором изменяются целочисленные положительные значения. Поэтому дополнительного приведения переменных к интервалу аппроксимации не требуется.

Кроме того, заменим функции s1n0o и cos0o усеченными рядами Маклорена, представив их по схеме Горнера:

^п 0 о =(((0 0 с7 + с5 )0 0 + сз)0 2 + с1)0 0’

cos 0 о = ((0 0Ь6 + Ь 4 )0 0 + Ь2)0 0 + Ь0’

(14)

где с7=-1/840, с5=1/20, с3=-1/6, сх=1; Ь6=-1/120, Ь4=1/12, Ь2=—1/2, Ь0=1. Погрешность 116

РГ1

РГ2

s

г

формул (14) на интервале [0,1] не превышает 3-10"5.

На рис.6 представлен информационный граф системы (1) О, полученный с учетом (13) и (14).

У 2В1(УЬк) У2С1(Уск)

у2а1 (Уак)

Рис.4

У 2В1 (УЬк) У2С1 (Уск)

Рис.5

Рис.6

Операционные устройства, приведенные на рис.2-5 позволяют построить процессор, который соответствует изложенным выше принципам. Структура процессора синтезируется в соответствии с методикой [4], которая предусматривает аппаратную реализацию информационного графа О. Строго говоря, в процессоре реализуется информационный граф У2О относительно разностей второго порядка. Данный граф получается путем простого переобозначения вершин и дуг графа О. Затем каждой вершине графа У2О ставится в соответствие операционное устройство, выполняющее обозначенную операцию. Использованные операционные устройства коммутируются друг с другом в соответствии с информационными связями графа У2О.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Горелик А.Л., Бутко Г.И., Белоусов Ю.А. Бортовые цифровые вычислительные машины. М.: Машиностроение, 1975. 204с.

2. Демидович Б.П., Марон И.А., Шувалова Э.З. Численные методы анализа. М.: Наука, 1967. 368с.

3. Бахвалов НС. Численные методы. М.: Наука,1973. 632с.

4. Ледовской М.И. Операционные устройства для обработки разностей второго порядка // Известия ТРТУ. 2002, №2(25). С.186-199.

5. Кравченко П.П. Основы теории оптимизированных дельта-преобразований второго порядка. Цифровое управление, сжатие и параллельная обработка информации. Таганрог: Изд-во ТРТУ, 1997. 200с.

6. Каляев А.В. Многопроцессорные системы с программируемой архитектурой. М.: Радио и связь,

1984. 240с.

7. Ледовской М.И. Операционные устройства для интегрирования дифференциальных уравнений второго порядка // Моделирование как инструмент решения технических и гуманитарных проблем, Ч.2. Таганрог: Изд-во ТРТУ. 2002. С.38-46.

8. Ледовской М.И. Арифметические операции для решения задач динамического характера // Научная мысль Кавказа. Приложение. 2001, №9. С.81- 89.

9. Карцев М.А., Брик В.А. Вычислительные системы и синхронная арифметика. М.: Радио и связь, 1981. 360с.

А.А. Батальщиков, А.В. Розенберг

О ВОЗМОЖНОСТИ АППРОКСИМАЦИИ ГИДРОАКУСТИЧЕСКОГО ПОЛЯ ДВИЖУЩЕГОСЯ ВОЗДУШНОГО ИСТОЧНИКА РЕШЕНИЯМИ УРАВНЕНИЯ ГЕЛЬМГОЛЬЦА ЗАДАЧИ ДЛЯ НЕПОДВИЖНОГО ИСТОЧНИКА

Задачи о гидроакустическом поле движущегося воздушного источника представляют большой практический интерес. Учёт движения в аналогичных задачах о водном источнике, как правило, сводится только к изменению координат в соответствующем решении задачи для неподвижного источника, т.е. к замене расстояния по формуле г = г0 + + VI, где V - скорость движения источника, а 1 - время. В большинстве случаев такой подход вполне оправдан тем, что отношение скорости водного источника к скорости звука в воде оказывается пренебрежимо малым, однако типичные скорости воздушных источников на порядок выше, чем водных, поэтому необходим учёт эффектов истинного

i Надоели баннеры? Вы всегда можете отключить рекламу.