Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
35
НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ
«КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ»
Кафедра Акустики та акустоелектроніки
ЗВІТ
до компютерних практикумів
з кредитного модуля
«Обчислювальна математика»
Варіант № 9
Виконав: Перевірив: |
Студент ІІ курсу гр. ДГ-11 Митяй Ю.О. К.т.н., доцент каф. Ата АЕ Богданова Н.В. |
№ роботи |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
∑ |
Оцінка захисту |
2012 р.
Обчислення значень функції. Обчислення поліномів та дії над ними. Обчислення функцій за допомогою числових та степеневих рядів.
Завдання: перевірити приклади завдань з посібника «ОБЧИСЛЮВАЛЬНІ МЕТОДИ В ЗАДАЧАХ АКУСТИКИ теорія і практика з використанням середовища MatLab» в даному середовищі.
Лістинг програм:
Приклад 2.5: Розділити багаточлен на .
p1=[1,3,4,-5,-47]
p1 =
1 3 4 -5 -47
>> p2=[1,3]
p2 =
1 3
>> deconv(p1,p2)
ans =
1 0 4 -17
>> [q,r]=deconv(p1,p2)
q =
1 0 4 -17
r =
0 0 0 0 4
Приклад 2.4: При яких значеннях параметрів А і В багаточлен ділиться на .
p1=[3 -4 0 0 1]
p1 =
3 -4 0 0 1
>> p2=[1 -2 1]
p2 =
1 -2 1
>> deconv (p1,p2)
ans =
3 2 1
>> [q,r]=deconv(p1,p2)
q =
3 2 1
r =
0 0 0 0 0
Приклад 2.3: Розкласти багаточлен за степенем , якщо .
>> a=[8 -44 50 55 -55 -56 -12]
a =
8 -44 50 55 -55 -56 -12
>> b=[1 -2]
b =
1 -2
>> [q,p]=deconv(a,b)
q =
8 -28 -6 43 31 6
p =
0 0 0 0 0 0 0
>> a=[8 -28 -6 43 31 6]
a =
8 -28 -6 43 31 6
>> [q,p]=deconv(a,b)
q =
8 -12 -30 -17 -3
p =
0 0 0 0 0 0
>> a=[8 -12 -30 -17 -3]
a =
8 -12 -30 -17 -3
>> [q,p]=deconv(a,b)
q =
8 4 -22 -61
p =
0 0 0 0 -125
>> a=[8 4 -22 -61]
a =
8 4 -22 -61
>> [q,p]=deconv(a,b)
q =
8 20 18
p =
0 0 0 -25
>> a=[8 20 18]
a =
8 20 18
>> [q,p]=deconv(a,b)
q =
8 36
p =
0 0 90
>> a=[8 36]
a =
8 36
>> [q,p]=deconv(a,b)
q =
8
p =
0 52
>> a=[8]
a =
8
>> [q,p]=deconv(a,b)
q =
0
p =
8
Приклад 2.24: Обчислити наближено суму ряду з точністю .
>> syms n
>> symsum (cos(n*pi)/(((n^3)+1)^2), n, 1, inf)
ans =
sum(cos(pi*n)/(n^3 + 1)^2, n = 1..Inf)
>> vpa (ans, 3)
ans =
-0.239
приклад 2.25: Обчислити наближено суму ряду , обмежившись трьома його членами .
syms n
s=0
for n=1:1:3
sn=sin((pi/2)+n*pi)/((3^n)*(factorial(n)))
s=s+sn
end
s =
-0.2840
приклад 2.26: Для ряду визначимо, яку найменшу кількість членів треба взяти, щоб абсолютна похибка від заміни суми -ною частинною сумою не перевищувала .
syms n
syms b
s=0
%b=symsum ((1/(l^2)), l, 1, inf)
n=1
while abs(s-(pi^2/6))>=0.001;
sn=1/(n^2);
s=s+sn;
n=n+1;
end
disp(s)
disp(n)
s =
1.6439
n =
1001
Приклад 2.27 Для ряду визначимо, яку найменшу кількість членів треба взяти, щоб обчислити наближено його суму з точністю .
syms n
s=0;
n=1;
while 1/n^2>0.001
sn=1/n^2;
s=s+sn;
n=n+1;
end
disp(n)
n =
32
32
приклад 2.40: Розкласти в ряд Тейлора функцію .
>> taylor (sin(x))
ans =
x^5/120 - x^3/6 + x
приклад 2.45: Обчислити наближено обмежившись двома членами ряду.
cos(2*pi*1160/360)
ans =
0.1736
приклад 2.46: Обчислити з точністю .
>> log(1.04)
ans =
0.0392
>> vpa(ans, 5)
ans =
0.039221
приклад 2.47: Обчислити з точністю .
>> log10(5)
ans =
0.6990
>> vpa (ans, 4)
ans =
0.699
приклад 2.48: Обчислити та оцінити похибку наближення, яке включає два члени ряду.
>> (627)^(1/4)
ans =
5.0040
Приклад 2.49: Доведемо тотожність . Користуючись цією тотожністю і розвиненням у ряд Маклорена , обчислимо число з точністю .
>> 4*atan(1/5)-atan(1/239)
ans =
0.7854
>> pi/4
ans =
0.7854
>> taylor (atan(x),x)
ans =
x^5/5 - x^3/3 + x
>> 4*(4*atan(1/5)-atan(1/239))
ans =
3.1416
>> vpa (ans, 10)
ans =
3.141592654
Розвязання нелінійних рівнянь та систем нелінійних рівнянь у системі MatLab
Завдання:
Лістинг :
1.
>> y=fsolve('2.*x^4-6.*x^2+12.*x-8',-3, optimset('fsolve'))
Equation solved.
fsolve completed because the vector of function values is near zero
as measured by the selected value of the function tolerance, and
the problem appears regular as measured by the gradient.
<stopping criteria details>
y =
-2.4675
>> y=fsolve('2.*x^4-6.*x^2+12.*x-8',1, optimset('fsolve'))
Equation solved at initial point.
fsolve completed because the vector of function values at the initial point
is near zero as measured by the selected value of the function tolerance, and
the problem appears regular as measured by the gradient.
<stopping criteria details>
y =
1
2.
function y=funsc(x);
y=[x(1)+cos(x(2)-1)-0.8;x(2)-cos(x(1))-2];
>> [x,f]=fsolve(@funsc,[-0.3;1],optimset('Display','off'))
x =
0.8722
2.6431
f =
1.0e-011 *
0.0219
0.2207
>> [x,f]=fsolve(@funsc,[-0.1;1.1],optimset('Display','off'))
x =
0.8722
2.6431
f =
1.0e-007 *
0.0417
0.6505
>> [x,f]=fsolve(@funsc,[-0.15;1.05],optimset('Display','off'))
x =
0.8722
2.6431
f =
1.0e-012 *
0.0207
0.2132
3.
function y=funsc(x);
y=[x(1)+cos(x(2)-1)-0.8;x(2)-cos(x(1))-2];
>> [x,f,e_flag,inform]=...
fsolve(@funsc,[-0.2;1],optimset('display','off'))
x =
0.8722
2.6431
f =
1.0e-010 *
0.0349
0.3444
e_flag =
1
inform =
iterations: 6
funcCount: 21
algorithm: 'trust-region dogleg'
firstorderopt: 3.0956e-011
message: [1x695 char]
Розвязання лінійних рівнянь та систем лінійних рівнянь у системі MatLab
Завдання:
Розвязати СЛАР
Лістинг :
[x1, x2, x3, x4]=solve('2*x1+x2-5*x3+x4=-4', 'x1-3*x2-6*x4=-7', '2*x2-x3+x4', 'x1+4*x2-7*x3+6*x4')
x1 =
-11/41
x2 =
-6/41
x3 =
37/41
x4 =
49/41
>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 1;1 4 -7 6];
>> b=[-4; -7; 2; -2];
>> x=A\b
x =
2.2195
1.7561
2.1707
0.6585
Нормальний розвя зок
>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 1;1 4 -7 6];
>> b=[-4; -7; 2; -2];
>> pA=pinv(A)
pA =
1.3902 -0.7561 0.2195 -1.0244
0.1220 -0.0488 0.7561 -0.1951
0.4146 -0.3659 0.1707 -0.4634
0.1707 -0.2683 -0.3415 -0.0732
>> x=pA*b
x =
2.2195
1.7561
2.1707
0.6585
>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 1;1 4 -7 6];
>> b=[-4; -7; 2; -2];
>> rank(A)
ans =
4
>> A1=A;A2=A;A3=A;A4=A;
>> A1(:,1)=b;
>> A2(:,2)=b;
>> A3(:,3)=b;
>> A4(:,4)=b;
>> x1=det(A1)/det(A)
x1 =
2.2195
>> x2=det(A2)/det(A)
x2 =
1.7561
>> x3=det(A3)/det(A)
x3 =
2.1707
>> x4=det(A4)/det(A)
x4 =
0.6585
>> x=[x1;x2;x3;x4]
x =
2.2195
1.7561
2.1707
0.6585
>> A*x-b
ans =
1.0e-014 *
-0.5329
-0.1776
-0.0444
-0.4441
>> A=[2 1 -5 1;1 -3 0 -6;0 2 -1 1;1 4 -7 6];
>> b=[-4; -7; 2; -2];
>> [L, U]=lu(A);x=U\(L\b)
x =
2.2195
1.7561
2.1707
0.6585
Дослідження функцій. Апроксимація та інтерполяція даних
Завдання:
Лістинг :
1.
>> syms x y;
>> solve (2*x-4)
ans =
2
>> y=(2*(-x).^2+4*(-x)*(-x).^(1/2)+2)/(2*(-x)+4)
y =
-(4*(-x)^(3/2) + 2*x^2 + 2)/(2*x - 4)
>> dy=diff((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4))
dy =
(4*x + 6*x^(1/2))/(2*x + 4) - (2*(2*x^2 + 4*x^(3/2) + 2))/(2*x + 4)^2
>> solve(dy)
ans =
0.022752683823665201902470012724284
>> [xmin]=fminbnd ('(2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)',1.5, 3.5)
xmin =
1.5000
>> ddy=diff((4*x + 6*x^(1/2))/(2*x + 4) - (2*(2*x^2 + 4*x^(3/2) + 2))/(2*x + 4)^2)
ddy =
(3/x^(1/2) + 4)/(2*x + 4) - (8*x + 12*x^(1/2))/(2*x + 4)^2 - (2*(4*x + 6*x^(1/2)))/(2*x + 4)^2 + (4*(4*x^2 + 8*x^(3/2) + 4))/(2*x + 4)^3
>> [x]=solve(ddy)
x =
3.1321181965501925211359173057454
>> x=3.132; y=(2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)
y =
4.2664
>> syms x
>> limit(((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)), inf)
ans =
Inf
>> limit((((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4))/x), inf)
ans =
1
>> limit((((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4))-x), inf)
ans =
Inf
>> limit(((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)), -2)
ans =
NaN
>> [xmin]=fminbnd ('(2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)',-3.5, -1.5)
xmin =
-2.0000
>> syms x y
>> ezplot ((2*x.^2+4*x*(x.^(1/2))+2)/(2*x+4)); grid on; hold on
>> line([0 0], [0 10])
2.
>> syms x y;
>> solve (x^2-9)
ans =
-3
3
>> y=cos(-x)/(x^2-9)
y =
cos(x)/(x^2 - 9)
>> dy=diff(cos(x)/(x^2 - 9))
dy =
- sin(x)/(x^2 - 9) - (2*x*cos(x))/(x^2 - 9)^2
>> solve (dy)
ans =
0
>> [xmin]=fminbnd('cos(x)/(x^2 - 9)',-3,3)
xmin =
0
>> ddy=diff(- sin(x)/(x^2 - 9) - (2*x*cos(x))/(x^2 - 9)^2)
ddy =
(4*x*sin(x))/(x^2 - 9)^2 - (2*cos(x))/(x^2 - 9)^2 - cos(x)/(x^2 - 9) + (8*x^2*cos(x))/(x^2 - 9)^3
>> [x]=solve (ddy)
x =
-227.74790083201186033699870954078
>> x=-227.7479; y=cos(x)/(x^2 - 9)
y =
3.3873e-007
>> syms x;
>> limit (((cos(x)/(x^2 - 9))/x), inf)
ans =
0
>> limit (cos(x)/(x^2 - 9), inf)
ans =
0
>> syms x y; ezplot (cos(x)/(x^2 - 9))
>> ezplot (cos(x)/(x^2 - 9)); grid on
3.
>> syms x y;
>> yp=diff('x-2*sin(x)+3')
Warning: The method char/diff will be removed in a
future release. Use sym/diff instead. For example
diff(sym('x^2')). After removal diff('x^2') will
return diff(double('x^2')).
> In char.diff at 10
yp =
1 - 2*cos(x)
>> [x]=solve('1 - 2*cos(x)')
x =
-pi/3
pi/3
>> x=[pi 3*pi/2]
x =
3.1416 4.7124
>> y=x-2*sin(x)+3
y =
6.1416 9.7124
>> max(y)
ans =
9.7124
>> min(y)
ans =
6.1416
4.
x=[3 4 -3 -2 -1 0 7 8 11 6 5];
>> y=[20 8 5 12 10 6 -2 -3 -1 -2 -5];
>> P=polyfit(x,y,2)
P =
-0.0557 -0.6376 8.2577
>> yy=polyval(P,x);
>> plot (x, y, 'or', x, yy, '-b');grid on;hold on
>> P=polyfit(x,y,3)
P =
0.0518 -0.7083 0.2342 12.8972
>> yy=polyval(P,x);
>> plot(x,yy,'-m');hold on
>> P=polyfit(x,y,4)
P =
Columns 1 through 4
0.0053 -0.0306 -0.4853 0.9214
Column 5
11.8646
>> yy=polyval(P,x);
>> plot(x,yy,'-y');hold on
5.
>> x=[3 4 -3 -2 -1 0 7 8 11 6 5];
y=[20 8 5 12 10 6 -2 -3 -1 -2 -5];
>> xx=-4:0.05:12;
>> yy1=interp1(x,y,xx,'nearest');
>> yy2=interp1(x,y,xx,'linear');
>> yy3=interp1(x,y,xx,'spline');
>> yy4=interp1(x,y,xx,'cubic');
>> plot(x,y,'or');grid on;hold on;
>> plot(xx,yy1,'g-',xx,yy2,'m--',xx,yy3,'k-',xx,yy4,'b-.')
6.
>> x=-5:5;y=sin(x+4);
>> x1=-5:0.5:5; y1=interpft(y, 21);
>> x2=-5:0.05:5;
>> y2=sin(x2+4);
>> plot (x, y, 'r'); hold on; plot (x1, y1, 'g', x2, y2, 'b')
Копютерні процедури диференціювання та інтегрування функцій
Завдання:
,
Лістинг програм:
1.
>> fplot ('(1/6)*(x-6)^2', [-10 10]); grid on; hold on; fplot ('(36-x^2)^(1/2)', [-10 10], 'r')
Warning: Imaginary parts of complex X and/or Y arguments ignored
> In fplot at 153
>> xlabel ('x')
>> ylabel ('y')
>> title ('Графік функцій')
>> legend ('(1/6)*(x-6)^2','(36-x^2)^(1/2)')
>> S=int('(36-x^2)^(1/2)-(1/6)*(x-6)^2', 0,6)
Warning: The method char/int will be removed in a future relase. Use sym/int instead. For example
int(sym('x^2')).
> In char.int at 10
S =
9*pi 12
2.
>> [z,f] = fminsearch(@(x)6*x(1)^2+3*x(1)^2+15*x(2)^2-30*x(1)*x(2)-10*x(2)+4,[-10,10])
Exiting: Maximum number of function evaluations has been exceeded
- increase MaxFunEvals option.
Current function value: -1335131100158842300000000000000000000000000000000000000000000000000000000000000000000000.000000
z =
1.0e+043 *
-1.5702 -1.2601
f =
-1.3351e+087
>> [x y]=meshgrid(-3:0.1:3, -3:0.1:3);
>> z=6*x.^3+3*x.^2+15*y.^2-30*x*y-10*y+4;
>> surf(x,y,z);
3.
>> taylor (sin(3*x), -pi/3)
ans =
(9*(pi/3 + x)^3)/2 - 3*x - pi - (81*(pi/3 + x)^5)/40
>> taylor (sin(3*x),8, -pi/3)
ans =
(9*(pi/3 + x)^3)/2 - 3*x - pi - (81*(pi/3 + x)^5)/40 + (243*(pi/3 + x)^7)/560
Диференціальні рівняння. Основні поняття та визначення. Розвязування диференціальних рівнянь першого порядку
Завдання:
допомогою команд з підпакету Simbolic Math системи MATLAB та
побудувати графік розязку з урахуванням, що довільна стала дорівнює
одиниці
порядку y '+P(x) y = Q(x) виконати наступні дії: розвязати задачу Коші та побудувати сімейство інтегральних кривих при різних функціях Q(x); отримати розвязок одного з вариантів рівняння за допомогою
вирішувачів ЗДР ode23, ode23s , ode23t , ode23tb
Лістинг програм:
1.
r= dsolve ('Dy-y/sin(x)=(cos(x))^2*tan(x/2)', 'x')
r =
tan(x/2)*(x/2 + sin(2*x)/4) + C2*tan(x/2)
>> syms x
>> z=tan(x/2)*(x/2 + sin(2*x)/4) + tan(x/2)
z =
tan(x/2) + tan(x/2)*(x/2 + sin(2*x)/4)
>> ezplot(z)
2.
function f =odu3(t,y)
f=3*t*cos(5*t)-y*exp(5*t);
>> ode45 ('odu4', [0, 1], 1)
>> ode45 ('odu4', [0, 1], 2)
>> ode45 ('odu4', [0, 1], 3)
>> ode45 ('odu4', [0, 1], 4)
>> ode45 ('odu4', [0, 1], 5)
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=(log(5))^2*exp(5*t)-y*exp(5*t);
>> ode45 ('odu4', [0, 1], 1)
>> grid on
>> hold on
>> ode45 ('odu4', [0, 1], 2)
>> ode45 ('odu4', [0, 1], 3)
>> ode45 ('odu4', [0, 1], 4)
>> ode45 ('odu4', [0, 1], 5)
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=t^2+25-y*exp(5*t);
>> ode45 ('odu4', [0, 1], 1)
>> grid on
>> hold on
>> ode45 ('odu4', [0, 1], 2)
>> ode45 ('odu4', [0, 1], 3)
>> ode45 ('odu4', [0, 1], 4)
>> ode45 ('odu4', [0, 1], 5)
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=t*sin(3*t)-t;
>> ode45 ('odu4', [0, 1], 1)
>> hold on
>> grid on
>> ode45 ('odu4', [0, 1], 2)
>> ode45 ('odu4', [0, 1], 3)
>> ode45 ('odu4', [0, 1], 4)
>> ode45 ('odu4', [0, 1], 5)
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=t^(-3)*exp(t^3)-t;
>> ode45 ('odu4', [0, 1], 1)
Warning: Failure at
t=2.960856e-103. Unable to
meet integration tolerances
without reducing the step size
below the smallest value
allowed (7.931068e-118) at time
t.
> In ode45 at 371
>> hold on
>> grid on
>> ode45 ('odu4', [0, 1], 2)
Warning: Failure at
t=2.960856e-103. Unable to
meet integration tolerances
without reducing the step
size below the smallest value
allowed (7.931068e-118) at
time t.
> In ode45 at 371
>> ode45 ('odu4', [0, 1], 3)
Warning: Failure at
t=2.960856e-103. Unable to
meet integration tolerances
without reducing the step
size below the smallest value
allowed (7.931068e-118) at
time t.
> In ode45 at 371
>> ode45 ('odu4', [0, 1], 4)
Warning: Failure at
t=2.960856e-103. Unable to
meet integration tolerances
without reducing the step
size below the smallest value
allowed (7.931068e-118) at
time t.
> In ode45 at 371
>> ode45 ('odu4', [0, 1], 5)
Warning: Failure at
t=2.960856e-103. Unable to
meet integration tolerances
without reducing the step
size below the smallest value
allowed (7.931068e-118) at
time t.
> In ode45 at 371
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=(3*t)/(t.^4+1)-t;
>> ode45 ('odu4', [0, 1], 1)
>> hold on
>> grid on
>> ode45 ('odu4', [0, 1], 2)
>> ode45 ('odu4', [0, 1], 3)
>> ode45 ('odu4', [0, 1], 4)
>> ode45 ('odu4', [0, 1], 5)
>> title('Сімейство інтегральних кривих')
function f =odu3(t,y)
f=(3*t)/(t.^4+1)-t;
>> grid on
>> ode23('odu4',[-2, 2], 1)
>> ode23s('odu4',[-2, 2], 1)
>> ode23tb('odu4',[-2, 2], 1)
>> ode23t('odu4',[-2, 2], 1)
>> title('Розвязок за допомогою вирішувачів')
Розвязання звичайних диференціальних рівнянь вищих порядків
Завдання:
. Розвязати задачу Коші та побудувати інтегральну криву.
Лістинг програм:
1.
>> dsolve('D2y-18*Dy+81*y=6*exp(9*t)','y(0)=0','Dy(0)=0','t')
ans =
3*t^2*exp(9*t)
>> fplot ('3*t^2*exp(9*t)', [-10, 10])
>> grid on
>> title ('Інтегральна крива')
2.
>> dsolve('10*D2y+0.5*Dy+y=0', 'y(0)=1', 'Dy(0)=0', 'x')
ans =
cos((159^(1/2)*x)/40)/exp(x/40) + (159^(1/2)*sin((159^(1/2)*x)/40))/(159*exp(x/40))
3.
>> dsolve('7*D2y+Dy+4*y=abs(600*cos(1.5*t))', 'y(0)=0', 'Dy(0)=0', 't')
ans =
(160*sin((111^(1/2)*t)/14)*(333*cos((3*t)/2 - (111^(1/2)*t)/14) - 333*cos((3*t)/2 + (111^(1/2)*t)/14) + (5217*sin((3*t)/2 - (111^(1/2)*t)/14))/2 - (5217*sin((3*t)/2 + (111^(1/2)*t)/14))/2 + (79*111^(1/2)*cos((3*t)/2 - (111^(1/2)*t)/14))/2 + (79*111^(1/2)*cos((3*t)/2 + (111^(1/2)*t)/14))/2 + (993*111^(1/2)*sin((3*t)/2 - (111^(1/2)*t)/14))/2 + (993*111^(1/2)*sin((3*t)/2 + (111^(1/2)*t)/14))/2))/(16613*sign(cos((3*t)/2))) - (12640*111^(1/2)*sin((111^(1/2)*t)/14))/(16613*exp(t/14)) - (5527200*cos((111^(1/2)*t)/14))/(exp(t/14)*(42*111^(1/2) - 553)*(42*111^(1/2) + 553)) - (200*111^(1/2)*cos((111^(1/2)*t)/14)*((sin(t*(111^(1/2)/14 - 3/2))/14 - cos(t*(111^(1/2)/14 - 3/2))*(111^(1/2)/14 - 3/2))/((111^(1/2)/14 - 3/2)^2 + 1/196) + (sin(t*(111^(1/2)/14 + 3/2))/14 - cos(t*(111^(1/2)/14 + 3/2))*(111^(1/2)/14 + 3/2))/((111^(1/2)/14 + 3/2)^2 + 1/196)))/(37*sign(cos((3*t)/2)))
>> fplot ('(160*sin((111^(1/2)*t)/14)*(333*cos((3*t)/2 - (111^(1/2)*t)/14) - 333*cos((3*t)/2 + (111^(1/2)*t)/14) + (5217*sin((3*t)/2 - (111^(1/2)*t)/14))/2 - (5217*sin((3*t)/2 + (111^(1/2)*t)/14))/2 + (79*111^(1/2)*cos((3*t)/2 - (111^(1/2)*t)/14))/2 + (79*111^(1/2)*cos((3*t)/2 + (111^(1/2)*t)/14))/2 + (993*111^(1/2)*sin((3*t)/2 - (111^(1/2)*t)/14))/2 + (993*111^(1/2)*sin((3*t)/2 + (111^(1/2)*t)/14))/2))/(16613*sign(cos((3*t)/2))) - (12640*111^(1/2)*sin((111^(1/2)*t)/14))/(16613*exp(t/14)) - (5527200*cos((111^(1/2)*t)/14))/(exp(t/14)*(42*111^(1/2) - 553)*(42*111^(1/2) + 553)) - (200*111^(1/2)*cos((111^(1/2)*t)/14)*((sin(t*(111^(1/2)/14 - 3/2))/14 - cos(t*(111^(1/2)/14 - 3/2))*(111^(1/2)/14 - 3/2))/((111^(1/2)/14 - 3/2)^2 + 1/196) + (sin(t*(111^(1/2)/14 + 3/2))/14 - cos(t*(111^(1/2)/14 + 3/2))*(111^(1/2)/14 + 3/2))/((111^(1/2)/14 + 3/2)^2 + 1/196)))/(37*sign(cos((3*t)/2)))', [-10, 10])
>> grid on
>> title ('Закон вертикальних коливань механічної системи')
>> fplot ('600*cos(1.5*t)', [-10,10])
>> grid on
>> title ('Закон дії збурюючої сили')
Розвязання систем звичайних диференціальних рівнянь
Завдання:
при початкових умовах ,
при початкових умовах , .
Лістинг програм:
1.
>> s=dsolve('Dx=-5*x-3*y+exp(-2*t)', 'Dy=4*x+3*y','x(0)=0', 'y(0)=0', 't')
s =
y: [1x1 sym]
x: [1x1 sym]
>> s.x
ans =
5/(3*exp(2*t)) - 3/(2*exp(3*t)) - exp(t)/6
>> s.y
ans =
1/exp(3*t) - 4/(3*exp(2*t)) + exp(t)/3
2.
>> s=dsolve('Dy=1/700*(x-y/2000)','Dx=abs(12*cos(2*pi*50*t))-x*110-y', 'x(0)=0', 'y(0)=0', 't')
s =
x: [1x1 sym]
y: [1x1 sym]
>> s.x
ans =….
>> simplify(ans)
ans =
(6*int(exp((154000001*x)/2800000 + (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/(exp(23715988492000001^(1/2)*t)^(1/2800000)*exp(t)^(154000001/2800000)) + (6*exp(23715988492000001^(1/2)*t)^(1/2800000)*int(exp((154000001*x)/2800000 - (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/exp(t)^(154000001/2800000) + (923999994*23715988492000001^(1/2)*int(exp((154000001*x)/2800000 + (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/(23715988492000001*exp(23715988492000001^(1/2)*t)^(1/2800000)*exp(t)^(154000001/2800000)) - (923999994*23715988492000001^(1/2)*exp(23715988492000001^(1/2)*t)^(1/2800000)*int(exp((154000001*x)/2800000 - (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/(23715988492000001*exp(t)^(154000001/2800000))
> s.y
ans =….
>> simplify (ans)
ans =
(24000*23715988492000001^(1/2)*exp(23715988492000001^(1/2)*t)^(1/2800000)*int(exp((154000001*x)/2800000 - (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/(23715988492000001*exp(t)^(154000001/2800000)) - (24000*23715988492000001^(1/2)*int(exp((154000001*x)/2800000 + (23715988492000001^(1/2)*x)/2800000)*abs(cos(100*pi*x)), x = 0..t))/(23715988492000001*exp(23715988492000001^(1/2)*t)^(1/2800000)*exp(t)^(154000001/2800000))
Розвязання математичних моделей, створених на основі звичайних диференціальних рівнянь
Завдання:
Розвязати крайову задачу для звичайного диференціального рівняння
Лістинг програм:
>> y=dsolve('D2y=-2*Dy-2*y-exp(-t)+sin2t', 'y(0)=0.6', 'y(4)=-0.1', 't')
y =
(sin(t)*((sin2t*exp(t)*cos(t))/2 - sin(t) + (sin2t*exp(t)*sin(t))/2))/exp(t) - (cos(t)*(sin2t/2 - 8/5))/exp(t) - (cos(t)*(cos(t) - (sin2t*exp(t)*cos(t))/2 + (sin2t*exp(t)*sin(t))/2))/exp(t) - (exp(4)*sin(t)*((16*cos(4))/exp(4) - (10*cos(4)^2)/exp(4) + 5*sin2t*cos(4)^2 - (10*sin(4)^2)/exp(4) + 5*sin2t*sin(4)^2 - (5*sin2t*cos(4))/exp(4) + 1))/(10*exp(t)*sin(4))
>> ezplot (y, [-10 10])
>> grid on