Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Бакиров Р.О. Применение современных электронных вычислительных машин при расчете и проектировании конструкций инженерных сооружений учебное пособие

.pdf
Скачиваний:
19
Добавлен:
29.10.2023
Размер:
4.93 Mб
Скачать

 

 

 

 

к

то управле­

В частности, если после оператора стоит знак

ние передается к-му оператору.

Перед оператором,

получившим

управление,

стоит знак

i

где

I — номер оператора, передаю-

~],

щего управление. Знак

m

 

 

 

|~ означает безусловную передачу управ-

 

 

m

После логического оператора Р ста­

ления оператору с номером т .

вится знак

[_ в случае передачи управления оператору с номером

К

К

к при выработке машиной сигнала со = 0 и знак | — в противопо­

ложном случае (со=1). Точка с запятой после оператора (напри7_

мер, Р51_;) означает, что непосредственной передачи управления

следующему оператору не происходит.

Назначение операторов Аь Ог, А3, Р4, П5 и П6 ясно из рис. 6, поэтому не требуется дополнительного пояснения. Укажем лишь, что оператор 0 2 обеспечивает очистку ячейки < г > , так как при первом прохождении по участку А3—Р7

Л/+1 = hi + i- Дh

равно начальному значению высоты элемента ho.

Несколько подробнее следует остановиться на назначении опе­ ратора Р7. Этот оператор увеличивает содержимое ячейки < г > на единицу, т. е. производит действие

< г > + < 1 < г >

и реализует анализ условия (8): если рассчитаны все заданные ва­ рианты задачи, то передается управление оператору останова Яв; в противоположном случае управление получает оператор А3 для расчета очередного варианта.

Таким образом, по участку А3—Р7 машина проходит п раз в со­ ответствии с предусмотренным в задании числом вариантов рас­ чета.

Итак, описание данной задачи содержит: постановку задачи; расчетные формулы (1), (4), (5), (7); логические условия (6), (8); физический алгоритм в блок-схемной (рис. 6) и операторной фор­

мах (9).

Реализация этого алгоритма приведена в программе 4. Читатель, очевидно, непреминул заметить, что в столбце «пояс­

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

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

30

Операторы

Ах

о 2

■Аз

л

команд

0001

0002

0003

0004

0005

0006

0007

0010

ООП

0012

0013

0014

0015

0016

0017

0020

0021

0022

0023

0024

0025

Команды

(S) < 1 >

(X ) < / > (X ) < q >

( :) < 8 >

(П) < М >

(S) < 0 >

(П) < i >

(П) < i >

(X ) (ДА) ( + ) < h-i >

(П) < hi >

( S ) < b >

(X ) < ht >

(X )

<

^

>

( : )

<

6

>

(П) < W >

(5) < M > ( : ) < W >

(П) < 3 >

( - ) < [»] >

( p ) (0031)

П р о г р а м м а 4

Пояснения

< M > = M

< i > = 0

<w > = w

<a > = s

Условная передача

%

31

Операторы команд

0026

п5 0027 0030

0031

П6

0032

0033

0034

0035

Pi

0036

0037

R.0040

Команды

Ojt

Л

V

(Г1.о) («)

(-») (0033)

(S) < а > (П10) (®)

(S)

<

i >

 

( + )

<

1

>

(П)

<

i >

 

(оо) <

n — 1 >

/ \— >\

 

5

 

 

1

 

 

 

!

(Стоп)

0000

Продолжение программы 4

Пояснения

Печать 1

Безусловная передача

Печать а

Останов

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

СТАНДАРТНАЯ ПРОГРАММА

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

32

Для большинства машин разработана целая библиотека таких

программ, включающая СП — вычисления элементарных функций

_ з

( У х ,

У х ,

1пх, ех и

др.), тригонометрических функций (sinx,

cosх,

tgx,

ctgx и др.), перевода чисел из одной системы счисления

в другую

(1 0 —>2,2-»

10), аппроксимирования и интерполирования

функций, решения систем линейных и нелинейных алгебраических и дифференциальных уравнений и другие программы (см. прило­ жение 1).

Несмотря на достаточно большое разнообразие, все СП строят­ ся по схеме, представленной на рис. 7.

______________В х о д и Вы ход СПП

Сохранение параметра осноВной програ ммы

____________ (с четчика и^иклоб и т.п.)_________

Н еобходим ы е формирования и Восст ановления

 

Р а б о т а СПП

 

ВозВращение параметров основной

программы

------

( нулёбая ячейка и т п.)

*

----

_____безуслодная передача управления________

Нонетанты и стандартная информация о массибе

Р и с. 7

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

К стандартной программе без изменяемого параметра относятся такие СП, которые служат для вычисления какой-либо функции по заданному аргументу, например СП вычисления элементар­ ных или тригонометрических функций.

При обращении к программе рассматриваемого типа необходи­ мо вызвать в сумматор (мы имеем в виду одноадресную машину)

аргумент

х<2>

и обратиться к СП по

команде вида:

 

 

* + 1) («--*)

( ^ П2* 10).

Если

(6НСП

есть начальный адрес СП перевода из двоичной

системы в десятичную (СП 2 - * 10), то после выполнения этой ко­ манды в сумматоре окажется тот же аргумент, но уже переведен­ ный в десятичную систему , т. е. хро).

3 Зак. 1018

3 3

О п ер атор ы

Ах

о 2

Аз

р*

ком анд

0001

0002

0003

0004

0005

0006

0007

0010

ООП

0012

0013

0014

0015

0016

0017

0020

0021

0022

0023

0024

0025

К ом анды

(S) < 1 >

( X ) <1 >

( X ) < q >

( : ) < 8 >

(П ) < м >

( 5 )

<

0

>

(П )

<

i

>

(П )

<

i

>

( X )

<

Дй >

( + )

<

А, >

(П )

<

ht >

(S)

<

b >

( X )

< h t >

(х)

<

h >

( : )

<

6 >

(П )

<

W >

(S )

< М >

( : )

<

W >

(П ) < а >

( - ) < М >

(Г) 0032

П р о г р а м м а 4'

П ояснени я

< М > = 41

< i > = 0

( с + 0 ) = Ш г

< w > = W

< а > = а

34

Оп ер ато р ы

п6

п6

Р-

ком ан д

0026

0027

0030

0031

0032

0033

0034

0035

0036

0037

0040

0041

0042

Продожисение программы 4'

К ом ан д ы

П оясн ен и я

(S) < 1 >

СП2->10

(■ *"*) ьн

П ечать 1

(П,о) (S) -

( - * ) 0035

(5)

<

з > СП2>10

( * —*■)

ь н

 

(П ю )

(®)

П ечать ®

(5)

<

i >

 

( + )

<

!

>

 

(П )

<

 

/ >

 

(u i) <

п -

1

>

(р)(0010)

(С топ ) (0000)

О стан ов

К стандартным программам с изменяемым параметром относят­ ся такие СП, в которых имеются команды, изменяемые в зависимо­ сти от определенного параметра. Таковы, например, СП решения общематематических задач (решение системы алгебраических или дифференциальных уравнений), в которых имеются изменяемые команды, зависящие от порядка решаемой системы п или ширины ленты h при решении ленточных систем линейных алгебраических уравнений [2].

3*

35

Обращение к СП второго типа, например, к программе решения; систем линейных алгебраических уравнений может иметь вид:

* + О (~ ) 0>£п)

* + 2) (00) (ан)

•/ -f- 3) (00) п,

где Ь^п — начальный адрес СП;

а„ — начальный адрес коэффициентов и свободных членов;

п— порядок системы.

Теперь, обозначив через (б£П2--10) начальную ячейку СП2-> 10, предыдущую программу 4 можно записать в уточненном виде (про­ грамма 4').

Эта программа вполне пригодна для решения задачи на маши­ не, но требует перевода в действительные адреса и ввода, в опера­ тивную память (ЗУ).

§ 3. ПРИМЕНЕНИЕ ЭЦВМ ПРИ РАСЧЕТЕ И ПРОЕКТИРОВАНИИ КОНСТРУКЦИЙ ИНЖЕНЕРНЫХ СООРУЖЕНИЙ

При расчете и проектировании конструкций инженерных соору­ жений приходится решать различные математические и логические задачи. Решение этих задач значительно облегчается при использо­ вании современных вычислительных машин. Применение машин

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

Первые два метода использования машин наиболее просты и

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

Методы программирования задач для конкретных ЭЦВМ из­ лагаются в специальной литературе и здесь не рассматриваются.

Готовые программы подразделяются на стандартные и типовые, поэтому их использование рассматривается раздельно.

ПРИМЕНЕНИЕ СТАНДАРТНЫХ ПРОГРАММ

Стандартными называются программы, предназначенные для решения математической или логической задачи, часто встречаю­ щейся при расчете, проектировании и обработке результатов экс­ периментального исследования различных конструкций. Таковы программы вычисления элементарных, тригонометрических и спе­ циальных функций, решения общематематических задач, задач об­ работки результатов наблюдений и т. п.

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

37

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

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

В приложении 1 приведен перечень опубликованных или подго­ товленных к печати стандартных программ для ЭЦВМ «Урал-2».

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

Стандартная программа решения системы линейных алгебраических уравнений

При расчете статически неопределимых конструкций встреча­ ются системы линейных алгебраических уравнений с симметричной полностью заполненной матрицей коэффициентов

АХ = В,

(10>

где

А = [аи]п.„, X = [лгД.! и В = [6,]я>1,

причем

a i j = a ji"

Могут встретиться и ленточные системы, матрица коэффициен­ тов в которых схематически может быть представлена в виде:

~ h

А =

т

( 11>

п

где п — порядок системы;

т— число членов в каждом уравнении, за исключением опре­ деленного числа первых и последних уравнений;

h — ширина ленты, т. е. число кодиагоналей справа или сле­ ва от главной диагонали, включая последнюю.

38

Для решения всех типов симметричных ленточных систем, в том числе при h = n (система с полностью заполненной матрицей), це­ лесообразно применить программу [2], в которой реализован метод Гаусса. Программа использует лишь оперативное запоминающее устройство и позволяет решать системы, порядок которых зависит от ширины ленты. Например, при h = 2 или 3 по данной программе можно решать системы соответственно 440 или 310 порядка.

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

еесодержание должно быть следующим. Даны системы уравнений:

 

 

Л<0 *0 ) =

ДО);

 

 

 

 

 

 

Л<2)*(2) =

Я<2).

 

 

 

(12)

 

 

Л<*>ЛГ<*> =

Д<*>,

 

 

 

 

 

 

 

 

< •

. а < * >

1

 

 

 

 

 

 

 

 

l n i

 

 

 

1 п *

 

 

 

 

 

 

 

 

 

Л

< 1 > =

 

 

 

 

 

 

 

 

 

П | П !

 

 

а < * > .

. а <

«

 

 

 

 

 

" л 1

п к п к

_

 

& < »

 

 

 

 

 

 

 

 

 

«

 

 

 

 

 

 

 

 

5

II

 

 

 

 

 

6

< 1 >

 

 

А < * >

'

 

 

 

 

" 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

" *

J

 

 

Требуется найти корни уравнений:

 

 

 

 

 

 

 

у</)

 

 

 

 

 

 

 

*0> =

Л1

 

 

 

 

 

 

 

. j

=

Ь 2..........к

 

 

 

 

 

х<1>

 

 

 

 

 

 

 

 

V

 

 

 

 

 

 

и определители deMO>

с выдачей их на печать.

 

программу

Для

решения задачи

использовать

«Стандартную

решения т — членных симметричных систем линейных алгебраи­ ческих уравнений», напечатанную в работе [2]. Если заказчику без­ различно, по какой программе будет решаться его задача, то по­ следнее замечание не делается.

В заявке указывается желательное количество экземпляров вы­ ходных данных и срок выполнения задания.

39

Соседние файлы в папке книги из ГПНТБ