1
Изобретение относится к вычислительной технике и может быть использовано для решения с заданной точностью однородных линейных дифференциальных, уравнений с постоянными коэффициентами. ;
Известно устройство для решения дифференциальных уравнений, содержащее блоки умножения функций и переменных, ит-8граторь 1, сумматор, регистры приращений, элементы И, сумматоры приращений, коммутатор к запоминающе-е устройство коэффициентов.
При решении дифференциальных уравнений применяется структурное моделирование с использованием численных методов интегрирования, характ9ризующи.хся трудностью выбора шага, Данное устройство обладает невысоким быстродействием вследствие ограничения скорости передачи переполнений и невысокой точностью решений вследствие использования численных методов интег рирования l ,
Наиболее близким по технической сущности к предлагаемому изобретению является устройство, содержаЩба регистр функции, регистры производных, регистры приращений функции, производных и аргумента, регистр старшей производной, регистры постоянных и переменных коэффициентов, блоки анализа, триггеры знаков, коммутатор, блок сдвига и блок элементов ИЛИ|:27.
10
В этом устройстве решение дифферен-. циального уравнения
.,Ха,,-.Л.
) (Л h-1
15
на интервале Х,, при начальных условиях s/(,) }ipoHcx.owT путем вычисления рядов Тейпор а с шагом .j jsIliiiL формулируемых для каждой точки интерн20вала.
Точность вычислений с использованием ряда Тейлора зависит при заданной величине шага/ от количества членов ряда.
.причем, чем большее количество членов. ряда участвовать в вычислениях, тем с большей точностью будет получен результат.
Поскольку количество членов в рядах
Тейлора для :/.;,v,4i,....vf;-; .
уменьшается на единицу с каждым повыш нием порядка производной, то при .заданной величине шага, ,V 1rfбудут вычислены с различной точностью, что скаЖется на точности решения в следующей точке интервала. Следовательно, неодинаковое количество членов в рядах Тейлора для значений, опред8ляю11щ.х вычислительный процесс 6 данном устройств понижает точность решения.
Из сопоставления ряда Тейлора для и решаемого дифференциального уравнения следует, что число членов у -ipi одинаковое. Следовательно, зависимость количества членов ряда Тейлора для от порядка решаемого днффере1щиального уравнения также понижает точность решения.
По полученному значению ряда Тейлора для являющемуся решением диффере щиального уравнения в точке ( 1+1) интервала, нельзя судить о точности результата, поскольку неизвестно точное значение решения в этой точке, по которому можно его контролировать, Следовательно, отсутствие контрольной величины для контроля точности решев точке ( i +1) интервала
НИЯ U
1-и
и самого контроля также понижает точность решения.
Чтобы получить решение дифференциального уравнения с требуемой точностью, необходимо выбрать соответствующую величину шага. Для этого необходимо сравнение контрольных решений с половинной, одинарной и удвоенной величинами взятого шага, В случае неудовлетворительного расхождения результатов коетгропьных решений, у)казанная процедура подбора соответствующей величины шага продолжается. Необходимость подбора требуемой величины шага значительно увеличнваегг время получения решения.
Последовательный во времени характер вычислительного прсщесса также понижает быстродействие данного устройства,
Цель изобретения - повьциение быстродействия точности при решении однородных линейных дифферанциальньк уравнений с постоянными коэффициегпгами.
Поставленная цель достигччетс:.я тем, что в устройство содержащее регистр функции, регистры производньк, регистр приращений аргумента, регистры постоянных коэффициентов, блок управления, вьпсоды которого подсоединены к управляющим входам регистра приращений аргумента и регистров постоянных коэффициентов, введены блоки умножения, сумматор, блоки вычисления членов рядов Тейлора положительного аргумента и блок вычисления членов ряда Тейлора отрицательного аргумента, накопители значений функции и производных положительного аргумента, накопитель значений функции отрицательного аргумента сясема сравнения, регистр предпрёдыдущего значения функции и регистр предьщущ ег6 значения функции, группы элементов И, причем регистры производных, и регистр функции соединены последовательно в порядке убьюания порядка производной, выходы каждого регистра производных и регистра функции соединены с первыми- входами соответствующих блоков умножения, второй аход каждого блока умножения соединен с БЬРСОДОМ соответствующего регистра постоянньк коэффициентов, выходы блоков умножевия соединены с входами сумматора, выход которого соединен со входом регистра. ( 11-1)-ой производной, выходы регистров производньрс и регистра функдин соединены с первыми акодами соответствующих блоков вычисления членов ряде) Т-ейлора положительного аргумента, выходы которых соединены соответственно с входами накопителей значений производных и накопителя значений функ- НИИ попояштельного аргумента, выходы когорьк через группы элементов И соединены соответственно со входами регистров производных и регистра функции, выход регистра функции соединен с первым входом блока вычисления членов ряда Тейлора отрицательного аргумента выход которого соединен со входом накопвргепя значений функции отрицательного (аргумента, вход регистра предьщущего значения функции через группу элементов И соединен с выходом накопителя значений функции полоясительного аргумеирга, выход регистра предьщущего значения функции соединен со в.ходом регистра преднрёдыдущего значения функции вкоды схемы сравнения соединены соответственно с выходами накопителя значений функиин отрицательного аргумента 573 и регистра предпредыдущего значения функции, ыход схемы сравнения соединен с управпяпошими входами групп зпемеш-ов И, регистров предпредьщущего значения функции и предыдущего значения функции, с первыми управляющими входами регистра функции и регистров производных и с входом блока управления, вторые в,ходы всех блоков вычисления членов рядов Тейлора положительного аргумента и вычисления членов ряда Тейлора отрицательного аргумента соединены с выходом регистра приращений аргумента, управляющие входы накопителей значений производных положител ного аргумента, значений функции положительного аргумента значений функции отрицательного аргумента, блоков вычисления членов р5здов 1ейлора положительного аргумента и вьгаисления членов ряда Тейлора отрицательного аргумента и вторые управляющие нходы регистра фун ции и регистров производных .соединены с соответствующими выходами блока управления. Кроме того каждый блок вычисления членов ряда Тейлора содержит группу элеме№гов И, регистр, узел деления и два узла умножения, причем второй вход блока соединен с входами группы элемен тов И, с первым входом первого узла ум ножения, выход которого и вькоды групп элементов И соединены с соответствующими входами регистра, ВЬРСОД которого подключен к первому входу узла деления вькод узла деления соединен со вторым входом первого узла умножения и с первым входом второго узла умножения, вы ход которого является вькодом блока, первый вход блока соединен со вторым входом второго узла умножения, управляющий вход блока соединен с управляющими входами группы элементов И, регистра, узла деления, узлов умножения и со вторым входом узла деления. На фиг. 1 представлена схема устройства; на фиг. 2 - схема реализации блока вычисления членов ряда Тейлора. В состав схем, изображенных на фиг. 1 и фиг. 2, входят регистр l(j функ ции и регистры 1...J. .производных, где Л -порядок дифференциального уравнения, блоки умножения 2... 2, регист ры постоянных коэффициентов 3j, сумматор 4, блоки 5 - вычисления членов рядов Тейлора положительного аргумента, блок 6 вычисления членов ряда Тейлора отрицательного аргу7fj значений мента, накопители функций и производных положигельнсяч) аргумента, накопитель 8 значения функции отрицательного аргумента, схема 9 сравнения, регистр Ю, предпредыдущего значения функции регистр 11 предыдущего значения функции, группы .. элементов И, 4 егистр 13 приращений аргумента и блок 14 управления группа 15 элементов И, регистр 16, узел 17 деления, узлы 18,19 умножения, Устройство работает следующим образом. Пусть требуется решить однородное линейное дифференциальное уравнение с постоянными коэффициентами (1) при начальных условияхXotJ CHOPS(o,..., Предположим, что предварительно в точке х( о 11, где шаг принимает значения О, найдены точные значения 1СЦ1 с 1- 1 которые принимаются в качестве новых начальных условий. Эти значения могут быть вычислены в подготовительном режиме. В исходном состоянии коды У(n.),l.V , заносятся в регистры функции и производных. 1р- ln- коды постоянных коэффициентов в регистры постоя ных коэффицие1ггов 3 - 3, в регистр 1О предыдущего значения функции код -j (ч) - в регистр 11 предыдущегс значения функции, код ti - в регистр 13 приращений аргумента. Накопители8 и 7o-7 значений функ-, циИ и производных установлены в нулевой состояние. В нулевом такте, под воздействием управляющего сигнала,; поступающего с выхода блока 14 управления на управляющие входы регистров функции и производных регистров постоянных коэ;ффициеигов, коды УСХ),...,М выходов регистров постоянных коэффициентов поступают соответственно на входы блоков 2д-2 ц- умножения, где они умножаются. Полученные произведения с вькодов этих блоков поступают на аход сумматора 4, на выходе которого образуется код старшей производной. . Параллельно во времени, в том же нулевом такте, под воздействием управляющего сигнала, поступающего с выхода блока 14 управления на управляющий аход регистра 13 приращений аргуметга и управляющие входы блоков 6 и вычисления членов рядов Тейлора с выхода регистра 13 приращений аргумента 773 на вторые входы блоков 6 и 5. вычисления членов рядов Тейлора только в этом такте, поступает код Vi l, а во всех последующих тактах . На первью аходы ЭТИ.Х блоков поступают коды с выходов регистров i о t И-Ч функции и производных. Коды с выходов блоков 6 и 5 -St.. вычисления членов рядов Тейлора только в этом такте, без изменений соответственно поступают на входы накопителей 8 и 7р- 7, где они запоминаются. Код с выхода накопителя 8 значения функции поступает на вход схемы д срав нения, на второй аход которой поступает код с выхода регистра 10 предпр8 дьщущего значения функции. Если коды не равны, то на выходе схемы 9 сравнения формируется сигнал, равный нулю, а при равенстве кодов с заданной точностью на выходе этой схемы формируется сигнал, равный единице. Предположим что на выходе схемы 9 сравнения сформирован сигнал, равный нулю. Тогда, по окончании действия управляющего сигнала, поступающего с выхода блока 14 управления, произойдет сдвиг кодов в регистрах 1 - 1 функции и производных на один регистр вправо и запись кода старшей производной с выхода сумматора 4 в регистр производной-l,.. Таким образом, по окончании нулевого такта, в регистрах 1 -, lj функ ции и производньк будут находиться коды a(Xt),y4X;,),...,:J(x,),a в накопителя.х 8 И 7 - 7 значений функций и производньрс - соответственно коды У () и у (Kn),..,). В первом такте устройство работает так же как и в нулевом за исключением того, что блоками 6 и 5(,- 5 |. вычисления членов рядов Тейлора 6 и будут со- ответственно вычислены коды членов рядов, ейлора (x Hv(X,,CX):J|г (и) fJ I - -Jl .,):jT-B накопителях значений функций и производных 8 и 7р -г7 будут соответственно накоплены коды MCx,V-iVtx,i- uf)U,-) А V(x,iW(vl,.... предположить, что при сравнении схемой 9 сравнения кода, поступающ го с выхода накопителя 8 значения функ ции, с кодом поступающим с вькода регистра 10 прёдпредыдущего значения функц на ее выходе формируется сигнал, рав0ный нулю, то по окончании первого такта в регистрах IQ - l. функции и пройзводньис удут находиться коды а (х) )С),а в накопителях значений функций и производных 8 и JQ- 7, соответственно будут накоплены коды cx,)-.yu,)HiL,;,(,.,44,, (x,).y( ,.,%. k.I . J,.. -. t.1 Во всех последующих 1 тактах работа устройства повторяется до тех пор пока накопленный в накопителе 8 значения функции код ряда )--y() 4...+ представляющий функцию )B точке тем точнее, чем больше членов ряда будет сформировано, не сравняется с заданной точностью с точным значением кода, хранящимся в регистре 10 предпредьщущего значения функции, .С той же точностью в накопителях 7д - 7f значений функции и производньк будут накоплены, соответственно, коды рядов представляющие коды функи производных (,j),d (ХД..., ции,и2) Xj X -v-h it 1У., ) в точке В этом случае, на выходе схемы 9 сравнения, при сравнении кодов, поступающих на ее входы соответственно с выходов накопителя 8 значения функции и регистра 10 прёдпредыдущего значения функции,формируется сигнал, равный единице. Этот сигнал, поступая с выхода схемы 9 сравнения на входы групп i --12 элементов И, управляющие входы регистров IQ - 1 ) функции и производньк управляющие входы регистров предьщущего 11 и предпредьщущего 1О значений функций, нход блока 14 управления осуществляет передачу с накопи fQ - 7j . значений функции и телей 7 производньрс соответственно через группы 12у,,( элементов И на регистры функции и производных кодов функции и производных, которые принимаются в качестве новых начальных, условий}сприем в регистр 11 предьщущего значения функцией с накопителя 7 значения функции черезгруппу 12 элементов И кода ч (Х прием в регистр 10 предыдущего значения функции с регистра 11 предыдущего значения фушсцИи кода -jCx) ; установку посредством блока 14 управления в нулевое состоя97ние накопителей значений функции и про изводнык| настройку блока 14 управления на вьшолнение нулевого и всех посл дутощи-Х тактов. По окончании It-го такта в регистра 1(3 - 1ц- функции и производных будут находиться коды представляющие новые .начальные условия, а в накопителях 8 и 7f) - 7у .значений функции и производных - нули. Затем, аналогично описанному, выполняются нулевой и все последующие такты, в результате чего определяются коды функции и производньк в точке Xj X - ilОписанный процесс можно продолжить вправо сколь угодно далеко для всех пос ледующих точек аргумента с шагом г1 , причем переход от предыдущей точки к посл.едующей производится лишь только п достижении требуемойточности решения. значения (-1)h Присвоив шагу h можно получить и продолжить решение влево сколь угодно далеко и для всех последующих точек аргумента с шагом (-:.)- . , Работа блока вычисления членов ряда Тейлора поясняе1-ся на примере работы блока 5jj . Блок вычисляет коды членов ряда Тейлора, которые в общем виде предста ляются выражением . где i 0,1,2... - порядок производной, совпадающий с номером такта, а 3 1, 2, ., номера точек аргумента. В качестве исходного состояния при работеблока в 1-ом такте принимается состояние, когда в регистре 16 установлен код .; ..М ч; , а в узлах 18 и 19 () умножения соответственно установлены коды (ц..)) и tKl. При выполнении i-г такта под воздействием управляющих си1 налов, поступающих с выхода блока 14 управления по управляющему входу блока 5д вычисления членов ряда Тейлора на управляющие входы узла-17 деления, а также узлов 18, 19 умножения и регист ра 16, происходит деление кода .. на код 1 , которые поступают в узел 17 деления соответственно с выхода ре.гистра 16 и с выхода блока 14 управления. В этом же такте производится умножение поступающих с узла 17 деле ния, на входы узлов 18 и 19 умножения цифр частного CQ,C,C,J,...на установлен010ные в узлах 18, 19 умножения коды 5 (з )и И f а также осуществляется прием получающегося произведения на вход регистра 16 с выхода узла 19 умножения. По окончании выполнения указанных операций в регистре 16 будет установлен код -iVj- , а в узле 18 умножения - ) -jy- , который поступает на накопитель 7 значения функции положительного аргумента. На этом выполнение i -го такта заканчивается. Если учесть, что в очередном такте i увеличивается На единицу, то в регистре 16 для нового i будет фактически установлен код .) ) а в узлах 18 и 19 ixo. умножения соответственно кодыа . Исходное состояние в нулевом такте обеспечивается путём подачи кода h 1 через группы 15 элементов И на вход регистра 16 и кода h 1 на узел 19 умножения с выхода двойной олины регистра 13 приращений аргумента, в каждой половине которого хранятся коды tl 1 и ii 1, по второму входу блока вычисления членов ряда Тейлора 5 , а также кода:з1 )г; (jtj) на узел 18 умножения с выхода регистра 1д функции, по первому ах оду блока 5р вычисления членов р5ща Тейлора Это происходит под воздействием управл5пощего сигнала, поступающего на , управляющие входы группы 15 элементов И, регистра 16, блоков 18, 19 умножения с вьрсода блока 14 управления по управляющему входу блока 5 вычисле- ния членов ряда Тейлора. Поскольку код Vl 1 нужно-установить только в нулевом такте, то сигнал с управляющего входа Группы 15 элементов И снимается на время выполнения всех последующих тактов. При выполнении нулевого, а затем первого тактов на вход узла 17 деления с блока 14 управления подается (сод 1. Исходное состояние во всех последующих тактах обеспечивается путем подачи кода на узел 19 ут лножения с выхода одной из половин регистра 13 .приращений аргумента, кодов (цл) на уэел 18 умножения с выхода регистра 1{ функции под воздействием управляющего сигнала, поступающего на управляющие входы узлов 18, 19 умножения с выхода блока 14 управления и фиксации кода в регистре 16, поступившего в него при выпопнении предыдущего такта. Формула изобретения 1, Устройство для решения дифференци.альных уравнений j содержащее регистр функции, регистры производньк, регистр приращений аргумента, регистры постоянных, коэффициентов, блок управления, выходы которого подсоединены к управляющим входам регистра приращений аргу мента и регистров постоянных, коэффициен тов, отличающееся тем, что, с цепью повышения быстродействия и точ ности при решении однородных линейных дифференциальных уравнений с постоянными коэффициентами, в него введены блоки умножения, сумматор, блоки вычис ления членов рядов Тейлора положительного аргумента и блок вычисления членов ряда Тейлора отрицательного-аргумента накопители значений функции и производных положительного аргумента, накопитель значений.функции отрицательного ар гумента, схема сравнения, регистр предпредьщущего значения функции и регистр предыдущего значения функции, группы элементов И, причем регистры производных и регистр функции соединены последовательно в порядке убывания порядка производной, выходы каждого регистра производных и регистра функции соединены с первыми в.ходами соответствуюЩ1.х. блоков умножения, второй вход каждого блока умножения соединен с выходом соответствующего регистра постоянных коэффициентов, выходы блоков умножения соединены со входами сумматора, выход которого соединен со аходом регистра {|1-1)-ой производной, в.ыкоды регистров производных и регистра функции соединены с первыми в.ходами соответствующих блоков вычисления членов рядов Тей лора положительного аргумента, выходы которых соединены соответственно со входами накопителей значений производных и накопителя значений функции положительного аргумента, выходы которых через группы элементов И соединены соответственно со входами регистров производных, и регистра функции, выход регистра функции соединен с первым аходом блока вьиисления членов ряда Тейлора отрицательного аргумента, выход которого соединен со входом накопите ля зна чений функции отрицательного аргумента, вход регистра предьщущего значения функ ции через группу элементов И соединен с Ьыходом накопителя значений функции положительного аргумента, выход регистра предыдущего значения функции соединен со входом регистра предпредыдущего значения функции, входы схемы сравнения соединены соотв.етственно с вьрсодами накопителя значений функции отрицательного аргумента и регистра предпреДыдущегозначения функции, выход схемы сравненная соединён с управляющими входами групп элементов И регистров предпредыдущего значения функции и предьщущего значения функции, с первыми управляющими входами регистра функции и регистров производных и с входом блока управления, вторые входы блоков вычисления членов рядов Тейлора положительного аргумента и вычисления членов ряда Тейлора отрицательного аргумента соединены с выходом регистра приращений аргумента, управляющие входы накопителей значений производных положительного аргумента, значений функций положительного аргумента, значений функции отрицательного аргумента, блоков вычисления членов рядов Тейлора положительного аргумента и вычисления членов рядов Тейлора отрицательного аргумента и вторые управляюш 1е аходы регистра функции и регистров производных соединены с соответствующими выходами блока управления. 2, Устройство по п. 1, о т л и ч аю щ 8 е с я тем, что Каждый блок вычисления членов ряда Тейлора содержит группу элементов И, регистр, узел деления и два узла умножения, причем второй вход блока соединен с входами группы элементов И, с первым входом первого узла умножения, выход которого и выходы группы элементов И соединены с соответствующими входами регистра, выход которого подключен к первому аходу узла дапения, выход узла.деления соединен со вторым входом первого узла умножения и с первым аходом второго узла умножения, выход которого является выходом блока, первый аход блока сое динен со вторым аходом узла умножения управляющий вход блока соединен с управляющими входами групп элементов И, регистра узла деления, узлов умножения и со вторым входом узла деления. Источники информации, принятые во внимадае при. экспертизе 1, Авторское свидетельство СССР NO 469980, кл. 606 11/02, 1972. 2 Авторское свидетельство СССР NO 526905, кл. Q 06 F 15/32, 1974 (прототип).
rLfibfii.
2nf
n
3 j V
ff П/
название | год | авторы | номер документа |
---|---|---|---|
Устройство для решения дифференциальных уравнений | 1979 |
|
SU1023340A1 |
Устройство для вычисления элементарных функций | 1981 |
|
SU983707A1 |
Вычислительное устройство | 1981 |
|
SU1016779A1 |
Устройство для решения дифференциальных уравлений | 1974 |
|
SU526905A1 |
Цифровой генератор функций | 1976 |
|
SU736079A1 |
Интерполятор | 1983 |
|
SU1129622A1 |
Устройство для вычисления функций двух аргументов | 1983 |
|
SU1191917A1 |
Специализированный процессор | 1977 |
|
SU723581A1 |
Специализированный процессор | 1981 |
|
SU1023339A1 |
Устройство для вычисления корней | 1990 |
|
SU1751777A1 |
jr
&
фаг. 2
/r
Авторы
Даты
1980-05-05—Публикация
1977-06-13—Подача