Phương trỡnh vi phõn thường

Một phần của tài liệu BÀI GIẢNG TIN ỨNG DỤNG NGÀNH KỸ THUẬT ĐIỆN (Trang 88)

DSOLVE Symbolic tỡm nghiệm của phương trỡnh vi phõn DSOLVE('eqn1','eqn2', ...) chỉ chấp nhận cỏc biểu thức vi phõn dạng symbolic ('eq1'....) và điều kiện đầụ Một số phương trỡnh hoặc cỏc điều kiện đầu cú thể được nhúm lại với nhau và cỏch nhau bằng dấu phẩy (comma), đối với một thụng số đầu vào, mặc định là biến 't' biến độc lập này cú thể được thay đổi từ 't' đến cỏc biến symbolic khỏc bằng cỏch thờm biến đú như là thụng số đầu vào cuối cựng

Vớ dụ:

Giả sử ta cần giải phương trỡnh vi phõn dy/dx= x*y biến lấy tớch phõn(phải là) x cho nờn ta coi x là thụng số đầu vào cuối cựng ta viết như sau

syms x

y=dsolve('Dy=x*ý,'Dy(0)=1','x');

ký hiệu 'D' định nghĩa phương trỡnh vi phõn tương ứng với biến độc lập vớ dụ thụng thường sử dụng dy/dt . ''D'' được theo sau bởi một số ,thỡ số đú định nghĩa bậc vi phõn vớ dụ D2y nghĩa là d2y/dt2 vớ dụ sau:

y = dsolve('D2y+y=1','y(0) = 0') kết quả: y = 1+C1*sin(t)-cos(t) Cũn D3y tức là d3y/dt3

chỳ ý rằng biến symbolic khụng được chứa trong D vớ dụ như khụng thể ghi như sau: syms y; dsolve('Dý) (sai)

Điều kiện đầu xỏc định bởi biểu thức 'y(a)=b' hoặc 'Dy(a)=b'

ở đú y là một trong những biếnphụ thuộc và a và b là số khụng đổi nếu số điều kiện đầu nhỏ hơn số biến phụ thuộc thỡ kết quả sẽ được cho trong mảng C1,C2

Cú ba kiểu đầu rạ Đối với một phương trỡnh vi phõn thỡ cú một đầu ra, đối với hệ cú nhiều phương trỡnh vi phõn thỡ cú số đầu ra tương ứng (đầu ra cú thể là một structer) Examples:

dsolve('Dx = -a*x') returns ans = exp(-a*t)*C1

x = dsolve('Dx = -a*x','x(0) = 1','s') returns x = exp(-a*s)

y = dsolve('(Dy)^2 + y^2 = 1','y(0) = 0') returns y =

[ sin(t)] [ -sin(t)]

S = dsolve('Df = f + g','Dg = -f + g','f(0) = 1','g(0) = 2') returns a structure S with fields

S.f = exp(t)*cos(t)+2*exp(t)*sin(t) S.g = -exp(t)*sin(t)+2*exp(t)*cos(t) Y = dsolve('Dy = y^2*(1-y)')

Warning: Explicit solution could not be found; implicit solution returned. Y =

t+1/y-log(y)+log(-1+y)+C1=0 dsolve('Df = f + sin(t)', 'f(pi/2) = 0')

dsolve('D2y = -õ2*ý, 'y(0) = 1, Dy(pi/a) = 0') S = dsolve('Dx = ý, 'Dy = -x', 'x(0)=0', 'y(0)=1')

S = dsolve('Du=v, Dv=w, Dw=-ỳ,'u(0)=0, v(0)=0, w(0)=1') w = dsolve('D3w = -w','w(0)=1, Dw(0)=0, D2w(0)=0') y = dsolve('D2y = sin(y)'); pretty(y)

Sử dụng ode23 và ode45 dựng để giải phương trỡnh vi phõn thường

Cấu trỳc: [T,Y] = ODE23(ODEFUN,TSPAN,Y0)

TSPAN = [T0 TFINAL] tổ hợp hệ phương trỡnh vi phõn ý = f(t,y) từ thời gian T0 đến TFINAL với giỏ trị ban đầu Y0.

Hàm ODEFUN(T,Y) chắc chắn trả về một vộc tor cột tương ứng với f(t,y). Mỗi hàng trong mảng kết quả Y tương ứng thời điểm(t) trả về trong column vector T

Để lấy kết quả tại cỏc thời điểm T0,T1,...,TFINAL(tất cả là tăng đều hoặc giảm đều) sử dụng TSPAN = [T0 T1 ... TFINAL].

Vớ dụ:

[t,y] = ode23(@vdp1,[0 20],[2 0]); plot(t,y(:,1));

% giai phuong trinh vi phan bac hai sau

% L*d2q/dt2 + R * dq/dt + q/c = Eo* cos(w*t) % nguyen tac giai

L=100; R=100; C=0.25; Eo=10; omega=1; %t0=0; %ta=3; %x0=[1 1]' tol=1e-3; [t,x]=ode23(@Mach1,[0 3],[1 1],tol); kq=[t x(:,1) x(:,2)] plot(t,x(:,1)); %--- Ham Mach1--- function f= Mach1(t,x) global R L C omega Eo f=[(Eo/L)*cos(omega*t)-x(1)/(C*L)-R*x(2)/L x(2)]'; (adsbygoogle = window.adsbygoogle || []).push({});

%---ket qua thuc hien trong command window--- kq = 0 1.0000 1.0000 0.0800 0.9216 1.0833 0.3585 0.5926 1.4308 0.5589 0.2895 1.7484 0.7093 0.0171 2.0319 0.8596 -0.3011 2.3615 1.0069 -0.6642 2.7362 1.1900 -1.1987 3.2858 1.4006 -1.9498 4.0557 1.6323 -2.9833 5.1132 1.8804 -4.3902 6.5518 2.1408 -6.2933 8.4990 2.4104 -8.8576 11.1269 2.6868 -12.3044 14.6669 2.9682 -16.9303 19.4292 3.0000 -17.5398 20.0576

Nguyờn tắc giải bài toỏn : Đưa phương trỡnh vi phõn cấp n về n phương trỡnh vi phõn cấp một trong vớ dụ trờn ta đặt x = q ,x =diff(x ) như vậy ta cú hai phương trỡnh

vi phõn (giống như phương phỏp đặt biến trạng thỏi trong lý thuyết điều khiển tự động)

NỘI DUNG PHẦN THẢO LUẬN 1. Nội dung phần thảo luận 1.

Hóy lập chương trỡnh cho bài toỏn nội suy Lagrange 1 chiều trong khoảng [1:4]. Hóy tỡm kết quả bất kỳ trong khoảng đú.

Số liệu: x 1 2 3 4 f 0.67 0.620 0.567 0.512 2. Nội dung phần thảo luận 2.

Tỡm nghiệm phương trỡnh phi tuyến (bằng phương phỏp chia đụi khoảng) sau: y = 3x3 – 2x2 – x +3 x ∈ [0,3]

TểM TẮT NỘI DUNG CỐT LếI

Sinh viờn nắm được những kiến thức cơ bản về nội dung, cấu trỳc cõu lệnh của cỏc phương phỏp tớnh ỏp dụng cho cỏc bài toỏn ứng dụng, bài toỏn kỹ thuật…

BÀI TẬP ỨNG DỤNG, LIấN HỆ THỰC TẾ 1. Bài tập ứng dụng, liờn hệ thực tế 1.

Tỡm nghiệm gần đỳng hàm (phương phỏp Newton) y = x3 – 5x2 +6x+1

2. Bài tập ứng dụng, liờn hệ thực tế 2.

Lập chương trỡnh tớnh tớch phõn (phương phỏp hỡnh thang) sau:

=∫1 0 2cos(x)dx 4x I HƯỚNG DẪN TỰ Ở NHÀ

Tớnh tớch phõn hàm y = (1+ x2 – 3x3+ + 4x5)dx với cận a=-1, b =1 theo phương phỏp Simson.

CHƯƠNG 6:Mễ HèNH HểA,Mễ PHỔNG HỆ THỐNG

Cung cấp cho sinh viờn những kiến thức cơ bản về mụ hỡnh hỳa, mụ phỏng hệ thống động sử dụng Simulink

- Về thỏi độ: Hiểu được kiến thức cơ bản về mụ hỡnh hỳa, mụ phỏng hệ thống động sử dụng Simulink vận dụng vào cỏc bài toỏn kỹ thuật.

NỘI DUNG BÀI GIẢNG Lí THUYẾT

Một phần của tài liệu BÀI GIẢNG TIN ỨNG DỤNG NGÀNH KỸ THUẬT ĐIỆN (Trang 88)