МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
«ЛЬВІВСЬКА ПОЛІТЕХНІКА»
Кафедра автоматики і телемеханіки
Курсова робота
з курсу: «Чисельні методи аналізу автоматичних систем»
на тему: «Сельсинна слідкуюча система».
Тема 5, варіант 3.
Зміст.
Зміст. 1
1. Завдання. 2
2. Виведення системи диференціальних рівнянь. 3
3. Опис методів Рунге-Кутта-Фельберга та Ейлера. 4
4. Блок-схеми алгоритмів. 5
4.1. Блок-схема алгоритму методу Рунге-Кутта-Фельберга. 5
4.2. Блок-схема алгоритму методу Ейлера. 5
5. Таблиця ідентифікаторів. 6
6. Програма методу Рунге-Кутта-Фельберга з постійним кроком інтегрування. 7
7. Програма методу Ейлера зі змінним кроком інтегрування. 8
8. Результати виконання програми методу Рунге-Кутта-Фельберга. 8
9. Результати виконання програми методу Ейлера 11
10. Графіки одержаних результатів. 12
Список використаної літератури. 13
Завдання.
Задана структурна схема сельсинної слідкуючої системи.
Рівняння ланок:
а) вимірювальна схема
u1=S(((вх - (вих) (1)
b) електронний підсилювач
(u=u1'–u2'=Kеп(u1 (2)
с) обмотка збудження ЕМП (електромашинного підсилювача)
(3)
d) двигун
(4)
e) редуктор
(=i((вих (5)
f) короткозамкнута обмотка ЕМП
(6)
Дослідити реакцію сельсинної слідкуючої системи на одиничний стрибкоподібний сигнал на вході системи методами Ейлера зі змінним кроком інтегрування та Рунге-Кутта-Фельберга з постійним кроком інтегрування, якщо параметри схеми:
Tm (c) = 0,05; Tk (c) = 0,01; T1 (c) = 0,003; C (рад/в(с) = 20; i = 300; KI = 2; KII = 2; Kеп = 10; S (в/рад) = 60.
Виведення системи диференціальних рівнянь.
Підставляємо (1) в (2), а потім одержане (u в (3). Одержуємо:
(7)
Виражаємо uk з (6) і підставляємо в (7):
(8)
Виражаємо up з (4) і, з врахуванням (5), підставляємо в (8):
(9)
Введемо заміни:
(10)
(11)
(12)
A4=1 (13)
(14)
(15)
Враховуючи, що (вх=1, маємо:
(16)
Нехай:
, (17)
, (18)
. (19)
. (20)
(21)
Розв’язуємо систему диференціальних рівнянь (21) за нульових початкових умов методами Рунге-Кутта-Фельберга з постійним кроком інтегрування та Ейлера зі змінним кроком інтегрування.
3. Опис методів Рунге-Кутта-Фельберга та Ейлера.
Алгоритм реалізації методу Рунге-Кутта-Фельберга такий:
(22)
де
Похибка
(23)
Метод Ейлера описується так:
. (24)
Похибку методу Ейлера можна знайти за допомогою "подвійного перерахунку": знаходять значення з кроком h, а потім визначають завдяки подвійному перерахунку з кроком h/2. Різниця між та буде похибкою методу.
При розв'язуванні систем диференціальних рівнянь із змінним кроком інтегрування необхідно ввести автоматичну зміну кроку інтегрування залежно від заданої похибки.
Для вдосконаленого методу Ейлера це здійснюється наступним чином.
Знайшовши похибку відповідного методу на кроці, порівнюють її із заданою.
Якщо задана похибка є меншою, то крок зменшують у два рази і проводять обчислення з цим кроком. Потім знову визначають похибку і перевіряють умову>. Крок ділять доти, доки ця умова не виконається, після чого наступне обчислення проводиться з останнім кроком.
Якщо знайдена перший раз похибка методу є меншою від заданої, то одержане значення виводять на друк, а крок подвоюють. Так роблять доти, доки не виконається умова <; тоді крок знову починають ділити.
4. Блок-схеми алгоритмів.
4.1. Блок-схема алгоритму методу Рунге-Кутта-Фельберга.
4.2. Блок-схема алгоритму методу Ейлера.
5. Таблиця ідентифікаторів.
N - кількість диференціальних рівнянь;
T1, Tk, Tm, C, ii, S, KI, KII, Kp - параметри схеми;
i - лічильник циклу;
y[N] - початкове наближення;
y1[N] - наступне наближення з кроком h;
y2[N] - наступне наближення з кроком h/2;
a,b - початок та кінець проміжку інтегрування; p - прапорець;
x - змінна інтегрування; h - крок інтегрування;
e - похибка методу (обчислена); e1 - задана похибка.
6. Програма методу Рунге-Кутта-Фельберга з постійним кроком інтегрування.
#include<stdio.h>
#include<math.h>
#define N 4
#define h 0.001
double A1,A2,A3,A4,A5,A6;
FILE *fp;
double F(int i,double *y,double x)
{ switch (i)
{ case 0:return *(y+1);
case 1:return *(y+2);
case 2:return *(y+3);
case 3:return ((-A2*(*(y+3))-A3*(*(y+2))-A4*(*(y+1))-A5*(*y)-A6)/A1);
}
}
double runge_felb(int i,double *y,double x,double *y2)
{ double k[6],t[N];
int j;
for(j=0;j<N;t[j]=y[j],j++);
k[0] = h*F(i,y,x);
t[i] = y[i] + 2*k[0]/9.;
k[1] = h*F(i,t,x+2*h/9.);
t[i] = y[i] + (k[0]/12.+k[1]/4.);
k[2] = h* F(i,t,x+h/3.);
t[i] = y[i] + 69*k[0]/128.-143*k[1]/128.+135*k[2]/64.;
k[3]= h*F(i,t,x+3*h/4.);
t[i] = y[i]-17*k[0]/12.+27*k[1]/4.-27*k[2]/5.+16*k[3]/15.;
k[4]= h*F(i,t,x+h);
t[i] = y[i] + 65*k[0]/432.-5*k[1]/16.+13*k[2]/16.+4*k[3]/27.+5*k[4]/144.;
k[5] = h*F(i,t,x+5*h/6.);
y[i]+=(k[0]/9.+9*k[2]/20.+16*k[3]/45.+k[4]/12.);
y2[i]=y[i];
return (k[0]/150.-3*k[2]/100.+16*k[3]/75.+k[4]/20.-6*k[5]/25.); }
void main()
{ double y1[N],y[N],a=0,b=5.,x,e, Tm=.05, Tk=.01, T1=.003, C=20., ii=300.,KI=2.,KII=2.,Kp=5.,S=60.;
int i;
if ((fp=fopen("c:\\temp\\Run_f_p.dat","w"))==NULL) exit(-1);
A1=T1*Tk*Tm; A2=T1*Tk+T1*Tm+Tk*Tm; A3=T1+Tk+Tm; A4=1; A5=KI*KII*Kp*C*S/ii; A6=-KI*KII*Kp*C*S/ii;
for(i=0;i<N;y[i]=0,i++);
for (x=a;x<b+h;x+=h)
{ for(i=0;i<N;y1[i]=y[i],i++);
for(i=0;i<N;i++)
e = runge_felb(i,y,x,y1);
printf("%lf\t%lf\t%lf\n",x,y1[0],e);
fprintf(fp,"%lf\t%lf\t%lf\n",x,y1[0],e);
for(i=0;i<N;y[i]=y1[i],i++); }
fclose(fp); }
7. Програма методу Ейлера зі змінним кроком інтегрування.
#include<stdio.h>
#include<math.h>
#define N 4
double A1,A2,A3,A4,A5,A6;
FILE *fp;
double F(int i,double *y,double x)
{ switch (i)
{ case 0:return *(y+1);
case 1:return *(y+2);
case 2:return *(y+3);
case 3:return ((-A2*(*(y+3))-A3*(*(y+2))-A4*(*(y+1))-A5*(*y)-A6)/A1);
}
}
void eyler(int i,double *y,double x,double h)
{ y[i]+=h*F(i,y,x); }
main()
{ double y1[N],y2[N],y[N],a=0,b=5,x,e=.001,h=.01, Tm=.05, Tk=.01, T1=.003, C=20., ii=300.,KI=2.,KII=2.,Kp=5.,S=60.;;
int i,j,p,c=0;
A1=T1*Tk*Tm; A2=T1*Tk+T1*Tm+Tk*Tm; A3=T1+Tk+Tm; A4=1; A5=KI*KII*Kp*C*S/ii; A6=-KI*KII*Kp*C*S/ii;
y[0]=0;y[1]=0;y[2]=0;y[3]=0;
if ((fp=fopen("c:\\temp\\eyler.dat","w"))==NULL) exit(-1);
for(x=a;x<b+h;x+=h)
{ p=0;
for(i=0;i<N;y1[i]=y[i],y2[i]=y[i],i++);
for(i=0;i<N;i++)
{ eyler(i,y1,x,h);
for(j=0;j<=1;j++)
{ eyler(i,y2,x,h/2.); x+=h/2.; }
x-=h;
if (fabs(y1[i]-y2[i])>e) p=1; }
if (p) h/=2;
else
{ printf("x=%lf y=%lf h=%lf\n",x,y1[0],h);
c++;
if (c == 100) { c=0; fprintf(fp,"%lf\t%lf\n",x,y[0]); }
for(i=0;i<N;y[i]=y1[i],i++); } }
fclose(fp); }
8. Результати виконання програми методу Рунге-Кутта-Фельберга.
Таблиця 1.
t, c
(вих(t), рад
(, рад
0.019900
0.084529
3.103648
0.039900
0.519027
0.741572
0.059900
1.172900
-0.324889
0.079900
1.720097
-1.048129
0.099900
1.889141
-1.210045
0.119900
1.605896
-0.757245
0.139900
1.025886
0.063714
t, c
(вих(t), рад
(, рад
0.159900
0.449503
0.829049
0.179900
0.166686
1.155222
0.199900
0.311326
0.890705
0.219900
0.798364
0.185566
0.239900
1.372885
-0.592707
0.259900
1.743270
-1.050376
0.279900
1.728996
-0.966340
t, c
(вих(t), рад
(, рад
0.299900
1.348290
-0.398440
0.319900
0.803250
0.353656
0.339900
0.372865
0.906195
0.359900
0.270421
0.986858
0.379900
0.538053
0.568604
0.399900
1.030460
-0.123772
0.419900
1.493402
-0.733985
0.439900
1.694764
-0.957327
0.459900
1.540730
-0.692514
0.479900
1.119015
-0.086821
0.499900
0.649517
0.545172
0.519900
0.369867
0.884681
0.539900
0.415339
0.769258
0.559900
0.753715
0.270046
0.579900
1.206311
-0.350724
0.599900
1.542093
-0.777182
0.619900
1.595446
-0.800306
0.639900
1.347629
-0.420040
0.659900
0.931995
0.160678
0.679900
0.562515
0.643868
0.699900
0.423793
0.789181
0.719900
0.579009
0.533194
0.739900
0.941618
0.016246
0.759900
1.323195
-0.494036
0.779900
1.531180
-0.741061
0.799900
1.465896
-0.608081
0.819900
1.168040
-0.172922
0.839900
0.794176
0.336759
0.859900
0.534619
0.662345
0.879900
0.516701
0.645281
0.899900
0.742501
0.303992
0.919900
1.091395
-0.180472
0.939900
1.384281
-0.560210
0.959900
1.475382
-0.647140
0.979900
1.324648
-0.405923
0.999900
1.014874
0.032635
1.019900
0.706509
0.442179
1.039900
0.554686
0.617454
1.059900
0.631312
0.476984
1.079900
0.891266
0.100522
1.099900
1.198474
-0.315716
1.119900
1.396986
-0.561130
1.139900
1.390030
-0.517129
1.159900
1.187004
-0.214164
1.179900
0.895704
0.187873
1.199900
0.665251
0.483827
1.219900
0.609865
0.527815
1.239900
0.752391
0.304935
1.259900
1.015426
-0.064993
1.279900
1.263146
-0.391595
1.299900
1.371335
-0.511764
1.319900
1.289556
-0.370955
1.339900
1.064417
-0.047519
1.359900
0.813325
0.290544
1.379900
0.663380
0.472694
1.399900
0.687133
0.411748
1.419900
0.867643
0.145354
1.439900
1.109574
-0.186536
1.459900
1.289420
-0.415030
t, c
(вих(t), рад
(, рад
1.479900
1.318462
-0.428114
1.499900
1.186415
-0.225389
1.519900
0.964353
0.084935
1.539900
0.766604
0.343608
1.559900
0.691981
0.421946
1.579900
0.774500
0.285705
1.599900
0.968126
0.009605
1.619900
1.172231
-0.263402
1.639900
1.283808
-0.396023
1.659900
1.249364
-0.325551
1.679900
1.090426
-0.093280
1.699900
0.890547
0.179262
1.719900
0.751485
0.353772
1.739900
0.741472
0.345248
1.759900
0.861842
0.163235
1.779900
1.048279
-0.095694
1.799900
1.205068
-0.299035
1.819900
1.254163
-0.346059
1.839900
1.173949
-0.217590
1.859900
1.008505
0.016684
1.879900
0.843530
0.235837
1.899900
0.762031
0.330021
1.919900
0.802621
0.255429
1.939900
0.941369
0.054443
1.959900
1.105639
-0.168169
1.979900
1.212032
-0.299765
1.999900
1.208674
-0.276736
2.019900
1.100404
-0.115111
2.039900
0.944718
0.099800
2.059900
0.821320
0.258319
2.079900
0.791380
0.282297
2.099900
0.867280
0.163531
2.119900
1.007788
-0.034117
2.139900
1.140342
-0.208922
2.159900
1.198469
-0.273575
2.179900
1.155054
-0.198705
2.199900
1.034860
-0.025993
2.219900
0.900575
0.154840
2.239900
0.820177
0.252564
2.259900
0.832578
0.220388
2.279900
0.928871
0.078233
2.299900
1.058193
-0.099208
2.319900
1.154519
-0.221632
2.339900
1.170322
-0.229013
2.359900
1.099963
-0.120939
2.379900
0.981321
0.044891
2.399900
0.875485
0.183369
2.419900
0.835345
0.225598
2.439900
0.879215
0.153090
2.459900
0.982605
0.005626
2.479900
1.091781
-0.140435
2.499900
1.151637
-0.211633
2.519900
1.133468
-0.174291
2.539900
1.048658
-0.050314
2.559900
0.941797
0.095421
2.579900
0.867293
0.188955
2.599900
0.861708
0.184719
2.619900
0.925874
0.087651
2.639900
1.025499
-0.050738
t, c
(вих(t), рад
(, рад
2.659900
1.109432
-0.159621
2.679900
1.135887
-0.185054
2.699900
1.093202
-0.116635
2.719900
1.004842
0.008512
2.739900
0.916582
0.125783
2.759900
0.872833
0.176391
2.779900
0.894333
0.136783
2.799900
0.968388
0.029482
2.819900
1.056225
-0.089575
2.839900
1.113247
-0.160138
2.859900
1.111644
-0.148091
2.879900
1.053906
-0.061868
2.899900
0.970700
0.053012
2.919900
0.904626
0.137918
2.939900
0.888444
0.150983
2.959900
0.928862
0.087697
2.979900
1.003918
-0.017903
2.999900
1.074847
-0.111462
3.019900
1.106076
-0.146245
3.039900
1.083029
-0.106437
3.059900
1.018862
-0.014211
3.079900
0.947046
0.082518
3.099900
0.903939
0.134946
3.119900
0.910409
0.117962
3.139900
0.961777
0.042105
3.159900
1.030904
-0.052762
3.179900
1.082496
-0.118354
3.199900
1.091093
-0.122506
3.219900
1.053604
-0.064892
3.239900
0.990217
0.023723
3.259900
0.933573
0.097856
3.279900
0.911983
0.120618
3.299900
0.935304
0.082029
3.319900
0.990511
0.003271
3.339900
1.048909
-0.074873
3.359900
1.081018
-0.113095
3.379900
1.071436
-0.093309
3.399900
1.026181
-0.027137
3.419900
0.969051
0.050792
3.439900
0.929135
0.100924
3.459900
0.926025
0.098830
3.479900
0.960230
0.047064
3.499900
1.013466
-0.026900
3.519900
1.058397
-0.085203
3.539900
1.072651
-0.098957
3.559900
1.049938
-0.062519
3.579900
1.002747
0.004333
3.599900
0.955528
0.067085
3.619900
0.932045
0.094278
3.639900
0.943431
0.073248
3.659900
0.982957
0.015962
3.679900
1.029925
-0.047711
3.699900
1.060485
-0.085547
3.719900
1.059731
-0.079248
3.739900
1.028941
-0.033251
3.759900
0.984472
0.028158
3.779900
0.949093
0.073634
3.799900
0.940347
0.080751
3.819900
0.961871
0.047029
t, c
(вих(t), рад
(, рад
3.839900
1.001964
-0.009391
3.859900
1.039917
-0.059466
3.879900
1.056694
-0.078178
3.899900
1.044460
-0.057013
3.919900
1.010204
-0.007766
3.939900
0.971797
0.043975
3.959900
0.948685
0.072102
3.979900
0.952058
0.063138
3.999900
0.979460
0.022660
4.019900
1.016411
-0.028059
4.039900
1.044043
-0.063202
4.059900
1.048718
-0.065532
4.079900
1.028744
-0.034818
4.099900
0.994878
0.012535
4.119900
0.964562
0.052221
4.139900
0.952950
0.064489
4.159900
0.965347
0.043953
4.179900
0.994826
0.001889
4.199900
1.026063
-0.039918
4.219900
1.043287
-0.060437
4.239900
1.038234
-0.049954
4.259900
1.014087
-0.014635
4.279900
0.983544
0.027035
4.299900
0.962159
0.053904
4.319900
0.960430
0.052877
4.339900
0.978663
0.025270
4.359900
1.007110
-0.014260
4.379900
1.031162
-0.045480
4.399900
1.038842
-0.052917
4.419900
1.026756
-0.033512
4.439900
1.001553
0.002200
4.459900
0.976292
0.035779
4.479900
0.963686
0.050389
4.499900
0.969716
0.039224
4.519900
0.990812
0.008641
4.539900
1.015926
-0.025412
4.559900
1.032305
-0.045700
4.579900
1.031957
-0.042408
4.599900
1.015538
-0.017870
4.619900
0.991771
0.014956
4.639900
0.972828
0.039313
4.659900
0.968102
0.043188
4.679900
0.979563
0.025219
4.699900
1.000980
-0.004925
4.719900
1.021288
-0.031725
4.739900
1.030301
-0.041791
4.759900
1.023807
-0.030539
4.779900
1.005520
-0.004242
4.799900
0.984980
0.023435
4.819900
0.972588
0.038524
4.839900
0.974346
0.033794
4.859900
0.988963
0.012194
4.879900
1.008715
-0.014922
4.899900
1.023514
-0.033750
4.919900
1.026055
-0.035055
4.939900
1.015413
-0.018682
4.959900
0.997320
0.006622
4.979900
0.981095
0.027867
4.999900
0.974849
0.034479
9. Результати виконання програми методу Ейлера
Таблиця 2.
t, c
(вих(t), рад
0.014576
0.000011
0.027672
0.001636
0.038807
0.008802
0.047963
0.021609
0.060854
0.053266
0.079165
0.129304
0.097476
0.242522
0.118960
0.418092
0.158193
0.821772
0.211626
1.401069
0.248247
1.707164
0.274568
1.841155
0.292878
1.883468
0.311189
1.881825
0.334449
1.817371
0.371071
1.590320
0.410311
1.226584
0.467186
0.647932
0.503807
0.354827
0.540428
0.192371
0.569696
0.176956
0.606317
0.301413
0.642938
0.558856
0.703566
1.130149
0.740695
1.456839
0.777316
1.683995
0.813937
1.774245
0.850558
1.712729
0.887179
1.514279
0.929489
1.169292
0.986715
0.664423
1.023336
0.417890
1.059957
0.288890
1.096578
0.300167
1.133199
0.446843
1.169821
0.697895
1.234625
1.236068
1.271246
1.489751
1.307867
1.643660
1.344489
1.669885
1.381110
1.565795
1.417731
1.354062
1.484586
0.839803
1.521207
0.587895
1.557828
0.420680
1.594449
0.368936
1.631071
0.440474
1.667692
0.619065
1.729850
1.057193
1.773380
1.351780
1.810001
1.522984
1.846622
1.589557
1.883243
1.540607
1.919865
1.387837
1.977147
1.020650
t, c
(вих(t), рад
2.027926
0.690607
2.064547
0.522732
2.101168
0.450565
2.137789
0.486254
2.174410
0.620813
2.224186
0.909762
2.285057
1.284402
2.321678
1.443038
2.358300
1.512777
2.394921
1.481811
2.431542
1.358073
2.484108
1.072719
2.544972
0.724926
2.581593
0.580530
2.618214
0.520191
2.654835
0.553988
2.691456
0.673565
2.757196
1.017346
2.807911
1.278945
2.844532
1.404389
2.881154
1.449061
2.917775
1.405857
2.954396
1.284833
3.028676
0.913528
3.074139
0.707446
3.110760
0.605824
3.147382
0.582537
3.184003
0.640593
3.221735
0.771856
3.307018
1.174309
3.343949
1.311092
3.380570
1.383653
3.417191
1.380476
3.453812
1.303630
3.506742
1.098030
3.581056
0.775694
3.617677
0.672092
3.654298
0.634021
3.690919
0.667600
3.727540
0.764949
3.813715
1.115738
3.859091
1.269236
3.895712
1.334015
3.932333
1.332825
3.968954
1.267161
4.033590
1.042372
4.105272
0.779722
4.141893
0.701063
4.178514
0.681842
4.215135
0.724643
4.267772
0.873491
4.356764
1.187764
4.393385
1.269994
4.430006
1.298326
4.466627
1.268305
t, c
(вих(t), рад
4.517887
1.143415
4.608092
0.843042
4.650875
0.748534
4.687496
0.721313
4.724117
0.748618
4.780717
0.880345
4.872123
1.162242
4.915228
1.242922
4.951849
1.259522
4.988470
1.225514
5.064408
1.035884
5.150912
0.805180
5.187667
0.761239
5.224288
0.764640
5.280067
0.854164
5.374154
1.108890
5.433527
1.214202
5.470148
1.225888
5.524359
1.164205
5.619940
0.927613
5.693182
0.798502
5.730414
0.789681
5.803544
0.888426
5.900721
1.116918
5.973964
1.198106
6.047206
1.131567
6.146097
0.915416
6.219340
0.818293
6.292582
0.857528
6.393319
1.057739
6.466561
1.163866
6.539803
1.146321
6.642059
0.963979
6.715804
0.853355
6.789047
0.854944
6.884930
1.005287
6.967201
1.131405
7.040443
1.140414
7.123861
1.028888
7.220897
0.881084
7.294139
0.866283
7.375419
0.962503
7.477098
1.109500
7.550341
1.125818
7.632147
1.036955
7.735995
0.896951
7.809237
0.882856
7.894471
0.971584
7.997806
1.099118
8.071049
1.107689
8.172928
0.998959
8.262782
0.903067
8.336024
0.902940
8.449515
1.024123
8.531229
1.095369
t, c
(вих(t), рад
8.604471
1.084523
8.730199
0.952994
8.803441
0.907142
8.876683
0.930830
9.006586
1.059895
9.079828
1.087424
9.162118
1.041997
9.287513
0.929590
9.360756
0.923216
9.485746
1.022263
9.573510
1.075119
9.646752
1.058816
9.791947
0.944338
9.865189
0.930130
9.991249
1.010899
t, c
(вих(t), рад
10.090087
1.065673
10.171732
1.046440
10.322528
0.945191
10.395770
0.942297
10.552885
1.038943
10.637279
1.057283
10.788695
0.975995
10.890756
0.945978
11.052235
1.025517
11.198719
1.037571
11.370135
0.954630
11.543368
1.009482
11.689852
1.040245
11.864960
0.964957
12.014393
0.986517
t, c
(вих(t), рад
12.188632
1.037833
12.368046
0.972882
12.514530
0.981951
12.696317
1.033669
12.880741
0.977198
13.027225
0.983149
13.214432
1.029303
13.404657
0.978303
13.559862
0.990204
13.744677
1.024526
13.941815
0.977808
14.137596
1.008622
14.289335
1.017674
14.494706
0.978848
14.704882
1.016897
14.905116
0.994367
10. Графіки одержаних результатів.
рис.1. Графік результатів методу Рунге-Кутта-Фельберга.
Список використаної літератури.
рис.2. Графік результатів методу Ейлера.
Лященко М. Я., Головань М. С. Чисельні методи. - К.: Либідь, 1996.
2. Микрокалькуляторы в курсе высшей математики: Практикум / Барановская Г.Г., Любченко И.Н.- К. : Вища шк. Головное изд-во, 1987 - 288 с.
3. Прикладные программы и лабораторный практикум для персонального компьютера: Учебное пособие / Гаврилюк М.А., Галамай Т.Г., Коссак О.М.и др. - Киев: УМК ВО, 1988. - 205 c.
4. Дьяконов В.П. Справочник по алгоритмам и программам на языке бейсик для персональных ЭВМ: Справочник. - М.: Наука. Гл.ред.физ.-мат. лит., 1987.- 240 с.