Доставка цветов в Севастополе: SevCvety.ru
Главная -> Справочник по алгоритмам

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 [74] 75 76 77 78

16 PRIHT*РЕШЕНИЕ ПЕРЕОПРЕДЕЛЕННОЙ СИСТЕМЫ ЛИНЕЙНЫХ УРАВНЕНИЙ

15 PRIHT МЕТОДОМ КВАДРАТНЫХ КОРНЕЙsPRINT

20 INPUTBBEAHTE ЧИСЛО НЕИЗВЕСТНЫХ Н=Н5В1М С<Н)

30 INPUTBBEAHTE ЧИСЛО УРАВНЕНИЙ M=KsBIM A<M,N),B<M)

40 for 1=1 ТО M:F0R J=1 TO N

50 PRINT! 2.0!ВВЕДИТЕ AI,J: IHPUT ft<bJ)

60 IF J=N THEH PRINTBBEAHTE BlUHPUT Ва>

70 NEXT JsNEXT I

80 FOR J=l TO NSFOR K=J TO HsLETS=8sF0R 1=1 TO M

90 LETS=S+Aa,J>»A<bK)sNEXT lsLETC<K)=SsHEXT К

100 LETC=0SFOR 1=1 TO M!LETC=C+A<b J>«B<:i>sNEXT I

118 FOR I=-J TO NtLETA<b-J>=C<I>sNEXT lsLETC(J)=CsHEXT J

120 LETACbi)=SQR:A<l»l))sFOR J=2 TO H

130 LETAi:b-J)=A:dlVA<lj.l>sNEXT .JsFOR 1=2 TO N

140 LETS=03FOR K=l TO I-lsLETS-S+ftCK,1)жА(К,I)sNEXT К

150 LETft<l»n=SQR(Aa,I>-S)!FOR J=I + 1 TO H

160 LETS=0!FOR K=l TO I-lsLETS=S+A<Kf ПжАСК, J)!HEXT К

178 LETA<bJ)=<A<J»I)-S>/A<bn!NEXT JsNEXT 1

180 LEfC<l>=Ca>jft<l,l)sFOR 1=2 TO H

190 LETS=0:FOR K=1 TO I-l!LETS=S+A<Kj>i>*C:K>!NEXT К

208 LETC<I>=:C<I>-S>/A<I,1)!NEXT I

210 LETC<N)=C<N)>:H,H)sFOR I=N-1 to 1 STEP -1

220 LETS=8sF0R K=l+1 TO NsLETS=S+A<bK)!(iC<K>sHEXT К

230 LETC<I>=<C<I>-S>-A<bnsNEXT I

248 PRINTРЕШЕНИЕ СИСТЕМЫsFOR 1=1 TO H

250 PRIHT!2.8!X!=!F1.9!C<I)5NEXT IsEHIi

§ П5.7. Приближенное вычисление нормального решения а=о,5 VM.

системы линейных уравнений с вырожденной матрицей

Для решения вычисляется параметр

За неизвестные принимаются компоненты вектора Х„, получаемого решением системы следую-шего вида

Система уравнений Сл = 0, где С - вырож- [(ЛЛ+«£)]• =

денная матрица, приближенно решается, если

предположить, что С,/ и d, заданы с некоторым методом квадратных корней (см. описание к про-/-приближениен. Тогда эту систему можно свести грамме П5.6). к решению системы /1А = В, так что

1С,-,-0</<0,ОП. Программа П5.7.

10 PRINTПРИБЛИЖЕННОЕ ВЫЧИСЛЕНИЕ НОРМАЛЬНОГО РЕШЕНИЯ СИСТЕМЫ 15 PRТНТЛИНЕЙНЫХ УРАВНЕНИЙ С ВЫРОЖДЕННОЙ МАТРИЦЕЙ МЕТОДОМ 20 PRINT КВАДРАТНЫХ КОРНЕЙsPRINT

25 INPUTЗАДАЙТЕ ПАРАМЕТР ПРИБЛИ!«ЕНИЯ Т=Т 30 1НРиТЗАДАйТЕ ЧИСЛО УРАВНЕНИЙ N=N!DIM A<N,H>/B<H>/C<N> 40 FOR 1=1 ТО HsFOR J=l ТОН 50 PR I NT! 2.0-ВВЕДИТЕ A1, Js INPUT A<bJ> 68 IF J=N THEN PRINTBBEAHTE BIs INPUT B<I> 70 NEXT JSHEXT I

eo FOR J=l TO NSFOR K=J TO HsLETS=05FOR 1=1 TO N

90 LETS=S+A<I»J)!iiA<bK>sNEXT lsLETC<K)=S!NEXT K.

100 letc=0SFOR 1=1 TO NsLETC=C+A<I, J>i«B<l):NEXT I

110 FOR I=J TO NtLETA<bJ)«Ca>sNEXT l!LETC<J)=C!NEXT J

120 LETP=SGR<T!(eNV2!F0R 1=1 TO N

130 LETA<l*I>=A<bl)+P!NEXT lsLETA<bl>=SQR<ftai. 1))

140 FOR J=2 TO NELETA<bJ)=ft<J,l>-A<bl)sNEXT J

150 FOR 1=2 TO N!LETS=0!FOR K=l TO I-l

160 LETS=S+A<K,I)!«A<KfI>ENEXT К

170 LETA<bn=SQR<A<bI)-S)s.FOR J=l + 1 TO N

180 LETS=0eFOR K=1 to I~l!LETS=S+A<K/DskAIK* J)sHEXT К

190 LETA<bJ)=<A<J,I>-S>-ACbI>sNEXT JshEXT I

200 LETC(l)=C<l)/A<bl)!FOR 1=2 TO N

210 LETS=08FOR K=l TO !-lsLETS=S+A<K,1>жС<К)5НЕХТ К

220 LETC<l>=<C<I)-S)-A<bl5tNEXT I

230 LETt;<N)=C<N)>A<Ni.N)!FOR I=N-1 TO 1 STEP -1

240 LETS=0!FOR K=I+1 TO N!LETS=S+A<I,K>«C:K)sNEXT К

250 LETC(I)=<C<r:i-S>/ft<bI>!NEXT I

260 PRINTPEWEHHE СИСТЕМЫsFOR 1=1 TO N

270 PRINT!2.0!Xr=!F1.9!C<I>sNEXT IsEND



Пример. При n = N=3 и 1 = Т=\-\Ъ~ решения системы

2x1- Х2+ м2хз = 5 + 7 12, 3x1+ 2x2- 3x3=-24.

Зх,+ дХ2--X3=-12-3V2

получаем в виде Х=0,9790!3. хг=-4,226840 и хз = 6,160861. При г=0 по этой программе можно решать обычные системы линейных уравнений.

§ П5.8. Решение системы нелинейных уравнений методом простых итераций

Описание метода даио в § 4.4. Подпрограмма вычисления f, (х,) записывается в виде фрагмента основной программы в строках от -50 до 200 без оператора RETURN.

Программа П5.8.

лов разбиения периода N и число гармоник спектра.

2. Разделив период х Щ Т на N частей &t = T/N (берем 7"=]), находим ti=hti и x, = xo-bx„cos (2jii) при j=0. 1. 2, .... N.

3. Обращаясь к подпрограмме . вычисления передаточной характеристики у (х), находим значения у1=у (х,).

4. Считая изменения у, (t) иа каждом малом отрезке времени ht линейными, вычисляем постоянную составляющую реакции Ао -

(y:-+yi) И коэффициенты At =

sin Z V"

=--2 sin (Z (21-1)),гдег=

= nk/N и fe= 1, 2.....M.

5. Находим коэффициент

2 + Al+ ... +A

гармоник Kv =

m/Ai

le PRINTРЕШЕНИЕ СИСТЕМЫ НЕЛИНЕЙНЫХ УРАВНЕНИЙ

15 PRINT МЕТОДОМ ПРОСТЫХ ИТЕРАЦИЙ

ге INPUTЗАДАЙТЕ число УРАВНЕНИЙ N=NsriIM X(;H)/F<N>

£5 ХНРиТЗнДнйТЕ ПОГРЕШНОСТЬ РЕШЕНИЯ Е=Е

30 PRINTВВЕДИТЕ НАЧАЛЬНЫЕ ПРИЕЛИМЕНИЯ

.35 FOR 1 = 1 ТО N:PRrNT!2.ei! Х1 =

40 INPUT Xa>sNEXT I

45 REMПОДПРОГРАММА ВЫЧИСЛЕНИЯ FC D=X<; Г >+FCI >

58 LETPa >=X<; 1 >+Xa >"2+Xi 2J"2-X(: 1 >-. 171875

68 LETF(:2=X<;г+X(;l>*Xk2>-Xfг>-.09375

200 LETS=0:FOR 1=1 TO H

218 IF ABS<Fa)-Xa>>>t THEH LETS=1

220 LETXaj=Fa>:HEXT I

230 IF S=l THEH 45

240 FOR 1=1 TO H:PRIHT!2.e!XI=!1.9!F<I> 250 NEXT Iг END

Пример. В тексте программы (строки 50 и 60) задано решение системы уравнений .

fi=xf-bx-x,+ 0,171875=0, i2=x,X2 -Х2-Ю,09375 = 0.

Задав Л/ = 2, E = £=!•lO- х,а = 0,!7!875 и л;2о= 0,09375, получим X, =0,2491442164 и Х2 = = 0,124686572 (верны 3 знака после запятой). Время счета контрольного примера око.по 5 с.

§ П5.9. Вычисление спектра реакции нелинейной системы с аналитически заданной передаточной характеристикой на гармоническое воздействие

Пусть реакция системы иа воздействие х (t) описывается иелииейной передаточной характеристикой у (х). Если X (t) - гармоническое воз-, действие вида

X (t) =xo-f х„ cos at,

то спектр реакции у (t) будет содержать только косннусоидальные члены вследствие четности функций X (О и у (t). Спектр у (t) вычисляется по следующему алгоритму (см. § 5.1).

1. Задаем постоянную составляющую хо и амплитуду х„ воздействия, число интерва-

Выражения для Аа и At получаются в результате аналитического интегрирования (5.5) при кусочно-линейной аппроксимации у (t).

Программа П5.9.

Пример. Вычисление y = f (х) задается подпрограммой, записываемой со строки 240 и завершаемой операторами RETURN и END. В тексте программы П5.7 задана квадратичная зависимость у=х. При Л/ = 20, M = 5, хо= -1 и х„ = 1 получим: Ао=1,5; Л, = -1,98360468, /12 = = 0,4837056046; /1з=-2,3725-Ю""; /!,=

= -2,171Ы0-

= -2,99625-10-" и Кг-

= 0,2438820645. Знак «минус» у At указывает на поворот фазы гармоники на угол я рад (или 180°).

§ П5.10. Регрессия для 16 видов парных зависимостей у{х)

Если вид эмпирической зависимости у (х), приближающей парную зависимость, заданную совокупностью значений х, и у,, не известен заранее, желательно с помощью одной программы провести регрессию для ряда у (х). Приведенная ниже программа обеспечивает запоминание до 255 пар х, и у, и выполняет регрессию для одной или нескольких видов зависимостей у (х). Предусмотрена возможность выбора любых у (х) из 16 зависимостей, отмеченных в табл. 5.1.

Порядок работы с программой следующий.



18 РКХЫТАНАШЗ СПЕКТРА РЕАКЦИИ ИЕПИИЕйНОй СИСТЕМЫ С ЗАЙАННОЙ 20 PRINTАНАПИТИЧЕСКИ ПЕРЕДАТОЧНОЙ ХАРАКТЕРИСТИКОЙ V<X) ПРИ 38 PRINT ГАРМОНИЧЕСКОМ ВОЗДЕЙСТВИИ Х<:т>=хе+ХМжСО5О.0жТ) 48 INPUTЗАДАЙТЕ ЧИСПО ИНТЕРВАЛОВ РАЗБИЕНИЯ ПЕРИОДА N=N8 58 INPUTУКАЖИТЕ ТРЕБУЕМОЕ ЧИСШ ГАРМОНИК М=Мг111М A<M>.-F<M)

68 INPUTЗАДАЙТЕ постояниуй состАЕШяввдук хе=хе

?е ШРиТЗАДАйТЕ АМПЛИТУДУ ВОЗДЕЙСТВИЯ ХМ=Х1

80 FOR К=6 ТО M!LETA<K)=8!HEXT К

эе LETX=X0+X1!&OSUB 2402LETV0=VsFOR i=i TO n8

100 1,ЕТХ=Х0+х1жсо8;2ж#Р1ж1Н8>!бО£;ив 24esLETVl=V

lie FOR K=i TO MsUETZ=#PIi«K/-N8!LETri=Z*<2*I-l)

128 LETC=;Yl--V0>*SIH<Z>/-i;2:*2;/He>!LETA<K)=AK>-C#.SIK<B>sHEXT К

138 LETAao=A<6) + ;V8+Vl>/-2.H9:LETV8=Vl!HEXT I

148 PRIHTCntKTP У<Т>=Ме+СУММЙ MK«COS<k>:iJl>

158 PRIHTПОСТОЯННАЯ СОСТАВЛЯКЩАЯ РЕАКЦИИ М0=Акв>

166 PRINTАМПЛИТУДЫ ГАРМОНИК РЕАКЦИИ

170 LETS=0!FOR К=1 ТО MsLETS=S+A(K>*ft<K>

188 PRINT!3.0! ftKIFl.5!=Й<К)

198 NEXT кг IF ft<l>=0 THEN £18

200 PRINTКОЭФФИЦИЕНТ ГАРМОНИК КГ=89К<8~А<г>"£>нВ5<на)> 210 бОТО 70

228 REMСО СТРОКИ 248 ЗАПИСЫВАЕТСЯ ПОДПРОГРАММА ВЫЧИСЛЕНИЯ Ч(х> 248 LETV=X*XsRETURN5ENB

1. Вводятся значения х,, у. и С, Постоянная С дится на основе линеаризующих преобразований, задается равной i, если ввод л:,- и yi будет сводящих нелинейную зависимость у (х) к линей-продолжен. При вводе последней пары х, и у, ной y=W-\-Vx с последующим преобразованием надо задать С = 0, что обеспечит автоматический VC к V в А к В.

переход к исполнению последующей части про- 3. После проведения регрессии задается зиа-

граммы. чение х и код (С=1, если будут вычисляться

2. Регрессия с заданной зависимостью у (х) значения у (х) по заданным х, и С=0, если проводится после указания кода к в виде в этом нет нужды). В последнем случае вычис-номера соответствующей зависимости. При зада- леиия повторяются с п. 2.

НИИ fe = 0 на индикацию выводится перечень кодов Для выбора нужных преобразований и зави-

и формул для соответствующЕК у {х). Резуль- симостей у [к) применяется оператор ON (а),

татами регрессии являются ее параметры А л В обеспечивающий безусловный переход на строку

{А - Ьв, В=Ь\, где Оо и Ь-,-обозначения этих с номером а, где а - арифметическое выра-

параметров в табл. 5.1), а также коэффи- жеиие, зйачеиие которого задается кодом k

циент парной корреляции R. Регрессия прово- Праграмта П5.10.

10 PRINTРЕГРЕССИЯ ДЛЯ РА-ЗЛИННЫХ ПАРНЫХ ЗАВИСИМОСТЕЙ V=F<X> 20 LETM=255!DIM X<M)»V<M>

30 PRIHTBBEaHTE X,V»C (C=l ПРИ ВВОДЕ, C=8 ПО ОКОНЧАНИИ ВВОДА)

40 LETjt=j+iaNPUT x<:j)ifV<j.>»csiF сое then зе

50 PRINTЗАДАЙТЕ КОД К НУКНОГС ВИДА РЕГРЕССИИ, К=0ЕСЛИ НУ!«НО

60 INPUT ВЫЗВАТЬ ТАБЛИЦУ КОДОВ И V=F<X> К=К

65 LETXi=0sLETX2=e!l.ETVl=0sLETV2=8sLETP==8!lF К=0 THEN 908

70 IF К==16 THEN INPUTBBEAHTE h-N

75 FOR 1=1 TO J!LETX=X<I)3LETY=Va>3ON<:200+10!iiK>

80 LETA=W!LETB=UsON<500+10*K>

90 PRINT.Fl.S!ПАРАМЕТРЫ A=A B=B

95 PRINTКОЭФФИЦИЕНТ КОРРЕЛЯЦИИ R=R

100 INPUTBBEUHTE XfC<C=l ИЛИ 0 ПРИ ОКОНЧАНИИ) X,C

110 IF C=0 THEN 50

120 ОЫ<700+10жК>

130 PRINTiFi.9!ЗНАЧЕНИЕ Y(X>=Ve60T0 100

200 REMfiHV«APH3HpyKilliHE ПРЕОБРАЗОВАНИЯ

210 60T0 480

220 LETV=1-V!60T0 460

238 LETX=l/X!eOTO 400

240 LETV=X-V!GOTO 400

258 LETV=L6T<V>!60T0 406

260 LETV=L06«:V)s60TO 400

270 LETV=L6T<V)iG0T0 400

280 LETX=EKP<-K>5LETV=1.V!G0T0 408

290 LETX=L6T<X)SLETV=I.GT<:V)!60T0 488

300 LETX=L6T<K)!60T0 400

310 LETX=L06<X)!60T0 488

320 LETyslz-ysBOTO 488



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 [74] 75 76 77 78



0.0503
Яндекс.Метрика