Giải phương trình

Một phần của tài liệu lập trình tính toán trong matlap (Trang 69 - 72)

II. Lệnh và hàm trong Symbolic MatLab 1 Lệnh sym, syms

5.Giải phương trình

* compose: Hợp của hàm

Cú pháp: compose(f,g) compose(f, g, z)

compose(f, g, x, z) compose(f, g, x, y, z) Giải thích:

- compose(f,g): f(g(y)) với f=f(x), g=g(y), ở đây x là biến symbolic của f và y là biến symbolic của g, dùng findsymđểtìm các biến này

- compose(f, g, z): f(g(z) với f = f(x), g = g(y), ở đây x là biến symbolic của f và y là biến symbolic của y.dùng findsymđểtìm các biến này

- compose(f, g, x, z): f(g(z)), x là biếnđộc lậpđối với f. Nếu f = cos(x/t) thì compose(f, g, x, z) →cos(g(z)/t) và compose(f, g, t, z) →cos(x/g(z)).

- compose(f, g, x, y, z): x là biếnđộc lập của f và y là biếnđộc lập của g.

- Nếu: f = cos(x/t) và g = sin (y/u) thì - compose(f, g, x, y, z) →cos(sin(x/u)/t),

- mặt khác compose (f, g, x, u, z) →cos (sin(y/z)/t) Ví dụ: syms x y z t u

f = 1/(1+x^2); g = sin(y); h = x^t; p = exp(-y/u); Thì: compose(f, g) →1/(1+sin(x)^2

compose(f, g, t) →1/(1+sin(t)^2 compose(h, g, x, z) →sin(z)^t

* dsolve: giải hệphương trình vi phân thường

Cú pháp: r = dsolve(‘eq1, eq2,…,’,’cond1, cond2, …,’v’) Giải thích: Giải hệphương trình vi phân thường xácđịnh bởi

eq1, eq2, .., biếnđộc lập v và cácđiều kiện biến hay điều kiện ban đầu xácđịnh bởi cond1, cond2,…Biếnđộc lập mặc nhiên là t. Nếu nhưkhông giảiđược bằng giải tích nhưtrên ta dùng phương pháp sốnhưphương pháp Runge – Kutta chẳng hạn. Ví dụ: dsolve(‘Dy=a*y’) →exp(a*t)*C1

* finverse: Tìm hàm ngược

Cú pháp: g = finverse (f) g = finverse(f,u)

Giải thích:

- g = finverse (f): hàm ngược của hàm f, f là hàm symbolic với biến x, kết quảtính f-1 g(f(x)) = x

- g = finverse(f,u): hàm ngược của hàm f, f là hàm symbolic với biến u, kết quảtính f-1 g(f(u)) = u. Dạng này hàm f có thểchứa nhiều biến symbolic Ví dụ: sym x finverse(1/tan(x)) →atan(1/x) sym u v finverse(exp(u-2)*v,u) →2*v +log(u) * solve: Giải hệphương trình

Cú pháp: g = solve(eq) g = solve(eq1, eq2, …,eqn)

g = solve(eq, var) g = solve(eq1, eq2, …,eqn, var1, var2, …, varn)

Giải thích: solve(eq): giải phương trình eq=0 với nghiệm lấy ra là biến mặc nhiên.

solve(eq, var): giải phương trình eq=0 với nghiệm lấy ra có tên tươngứng với biến var

solve(eq1, eq2,…): giải phương trình eq1=0, eq2=0,… với nghiệm lấy ra là biến mặc nhiên. (dùng lệnh findsymđểtìm các biến này)

solve(eq1,eq2,… ,var1, var2,…): giải phương trình eq1=0, eq2=0,… với nghiệm lấy ra có tên tươngứng với biến var1, var2,…

Ví dụ: solve(‘2*x+y) →-1/2 *y solve(‘a*x^2+b*x+c’,’b’) →-(a*x^2+c)/x L=solve(‘x+y = 1’, ‘x-11*y = 5’) →L.y = -1/3, L.x= 4/3

6. Biếnđổi tích phân* fourier: Biếnđổi Fourier

Một phần của tài liệu lập trình tính toán trong matlap (Trang 69 - 72)