Научная литература
booksshare.net -> Добавить материал -> Математика -> Боглаев Ю.П. -> "Вычислительная математика и программирование " -> 19

Вычислительная математика и программирование - Боглаев Ю.П.

Боглаев Ю.П. Вычислительная математика и программирование — Высшая школа, 1990. — 546 c.
ISBN 5-06-00623-9
Скачать (прямая ссылка): vychmatiprog1990.djvu
Предыдущая << 1 .. 13 14 15 16 17 18 < 19 > 20 21 22 23 24 25 .. 168 >> Следующая

Начиная со второго уровня проекта алгоритма используются все три логические схемы и базовые алгоритмы. Второй уровень представляет собой проекты отсутствующих алгоритмов на первом уровне (рис. 2.10). Непомеченные блоки второго уровня разрабатываются на следующем, третьем, уровне проекта и т. д. до тех пор, пока на п-м уровне проекта все вычислительные блоки не будут состоять из базовых алгоритмов. Алгоритмы вычислительной
Рис. 2.8
о*
ч ^ ПЕРВЫЙ Т-и УРОВЕНЬ
оч^м5-нин*™з—1 я-йс
V____у - — ? -/ УРС
ВТОРОЙ
УРОВЕНЬ
Рис. 2.10
математики, встречающиеся в инженерно-технических задачах, проектируются с помощью базовых алгоритмов с небольшим числом уровней проекта. Конечность этой процедуры (п конечно) следует из условия, что в число базовых алгоритмов естественно включаются арифметические действия над числами (рис. 2.11).
Отличительной чертой нисходящего проектирования алгоритма является возможность контроля его работы с самого начала
проектирования. Это достигается тем, что неразработанные вычислительные блоки заменяются так называемыми «заглушками». Заглушки—это блоки, имитирующие вход и выход неразработанных блоков (рис. 2.12). Заглушка нужна только для того, чтобы проверить алгоритм определенного уровня.
2.2.2. Пример проектирования алгоритма. Пусть требуется спроектировать алгоритм решения следующей технической задачи. По измеренному переходному процессу у(г) системы автоматического регулирования необходимо найти коэффициент к одного из ее элементов, который лежит в некотором диапазоне Переходный процесс может быть с требуемой точностью описан решением системы обыкновенных дифференциальных уравнений
Рис. 2.11
-2- = г + х1х2, х1(0) = д:і,
т
(2.2.1)
—1=Хі-кх2, х2(0) = Х2-
Предположим, что математический метод решения этой задачи состоит в отыскании такого значения к, которое минимизирует норму 5 отклонения теоретического переходного процесса л:(/) от измеренного у{г)\
—О >
математи-этой за- |-------------
ЗАГЛУШКА
Рис. 2.12
49
нулевой
УРОВЕНЬ
Рис. 2.13
S= max max |**(0“Ы*)1-
O^t^T l^z'^2
Значение к, дающее min S, принимается в качестве решения задачи.
Пусть переходный процесс }>(/) может быть измерен в дискретном числе точек tj, tx= 0, tm=T интервала O^t^T. Тогда
численный мето$ решения задачи может быть следующим: заменим минимизацию S по непрерывному интервалу O^t^T минимизацией на дискретном множестве точек:
t
' St= max max |х((^)-^(г;)|.
1 1 ^ ^ 2
В Sx значения x^tj) будем находить численным интегрированием системы дифференциальных уравнений с заданной точностью в. При фиксированном значении к величина Sx есть функция к, т. е. Sl = S1(k). Приближенным значением к# к точному к будем считать такое значение, которое минимизирует S^k):
min Sx (&).
Обозначим алгоритм этой задачи Z0A0. Проект алгоритма на нулевом уровне представлен на рис. 2.13.
Входные данные: к0, к19 л:?, х%, tj y^tj).
Выходные данные: к*.
Обращаясь к библиотеке (см. гл. 12), находим, что среди базовых алгоритмов имеется два, которые можно использовать в проекте алгоритма, а именно: В5А0—минимизация функции Sx{k), В6-А0 — интегрирование системы дифференциальных уравнений (2.2.1). Опишем действия алгоритма Z0A0, необходимые для перевода входных данных задачи в выходные.
1) Вычисление min Sx(k) блоком В5А0 и определение к+. Но для блока В5А0 требуется иметь алгоритм вычисления по значению к значения Sx(k), Таким образом, первый уровень проекта можно представить в форме рис. 2.14. Здесь алгоритм В5А0 имеет в своем составе еще не разработанный блок вычисления значения S1(k). Обозначим этот блок S1K0. Тогда второй уровень проекта алгоритма можно представить в форме рис. 2.15. Для представления блока S1K0 заметим, что в его действие входит:
ЬGD
ПЕРВЫЙ
УРОВЕНЬ
Рис. 2.14
50
V,
HGD
ВТОРОЙ
УРОВЕНЬ
Рис. 2.15
2) Интегрирование системы уравнений (2.2.1) блоком В6А0, определение Xi(tj)9 1 ^ ^ 2, 1 < т.
3) Вычисление Sl при фиксированном к.
Третий уровень проекта, представленный на рис. 2.16, есть блок-схема алгоритма S1K0. Здесь непомеченный блок производит следующие вычисления:
Sl= max max |jc?(/j)—>^«(о)1-
l^j^m l^i^2
Но для блока В6А0 требуется иметь алгоритм вычисления правых частей дифференциальных уравнений и алгоритм определения значений Xi(tj) (см. гл. 12). Обозначим соответствующие алгоритмы через F0A0 и F0A1 соответственно, непомеченный блок рис. 2.16
(К^^)—*JB6A0]—^ S1 ^
ТРЕТИЙ
УРОВЕНЬ
Рис. 2/
обозначим Р0А2. Тогда четвертый уровень проекта можно представить в форме рис. 2.17. Заметим, что алгоритмы четвертого уровня могут быть представлены с помощью базовых логических схем, базовых алгоритмов и элементарных арифметических действий над числами (см. рис. 2.11). Таким образом, проект рассматриваемого алгоритма исчерпывается пятью уровнями проектирования. В качестве примера алгоритма пятого уровня приведем блок-схему Р0А2 (рис. 2.18). Вычисление 5^ и 52 на этой схеме осуществляется блоком А0В5 (см. гл. 12).
Итогом проектирования алгоритма является структурно-логическая схема—объединение схем на рис. 2.13—2.18.
Предыдущая << 1 .. 13 14 15 16 17 18 < 19 > 20 21 22 23 24 25 .. 168 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed