1. Trang chủ
  2. » Giáo Dục - Đào Tạo

bài tiểu luận môn tin học ứng dụng

17 746 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 55,52 KB

Nội dung

Trước hết ta thực hiện chuỗi lệnh vẽ đồ thị hàm số vế trái của phương trình, cho x biến thiên trong khoảng 0,5 đến 2... Giải: Để xác định tích của các phần tử của mảng MATLAB ta sử dụng

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ

MINH KHOA CÔNG NGHỆ ĐIỆN BÀI TIỂU LUẬN MÔN TIN HỌC ỨNG DỤNG

GVHD: PHAN CÔNG THỊNH

Bài 6.1: Tìm nghiệm của phương trình bậc bốn:

1,5x4+3x3 -12x2+4,5=0

Giải:

Ta thực hiện chuỗi lệnh:

p=[1.5 3 -12 0 4.5];

x=roots(p)

Kết quả là: x1=-3,9681; x2=1,8502; x3=0,7009; x4=-0,5803

Bài 6.2: giải phương trình 5xsinx3 =0 bằng phương pháp đồ thị trên đoạn [0,5 , 2]

Trang 2

Trước hết ta thực hiện chuỗi lệnh vẽ đồ thị hàm số vế trái của phương trình, cho x biến thiên trong khoảng 0,5 đến 2

x=0:.01:3;

f=5*x.*sin(x.^3);

plot(x,[f;zeros(size(f))]);

sau khi nhận được đồ thị ta gõ tiếp lệnh:

ginput

Khi xuất hiện dấu thập, ta đưa dấu này đến các điểm cắt giữa

đồ thị và trục hoành ấn chuột trái trái tại điểm đó, sau đó thực hiện lệnh:

nx=length(x);w=1:nx-1;

x(find(f(w).*f(w+1)<0|f(w)==0))

Kết quả ta nhận được 2 nghiệm: x1=1,46; x2=1,84

Bài 6.3: giải phương trình 3xsinx2 =0 bằng lệnh fzeros

Giải:

Ta thực hiện cú pháp:

x1=fzeros(‘3*x.*sin(x.^2)’,1.0)

x2=fzeros(‘3*x.*sin(x.^2)’,2.0)

x3=fzeros(‘3*x.*sin(x.^2)’,3.0)

kết quả nhận được là: x1=1,7725; x2=1,7725; x3=3,07

Trang 3

Bài 6.4: tìm nghiệm của hệ 4 phương trình sau:

2,3x1+3,4x3+5,2x4=8

2x1+1,2x2+6x4=6

x2-2,6x3+4x4=5

x1+3x2+4x3-4x4=12

Giải:

Trước hết cần thiết lập ma trận các hệ số A của phương trình

và ma trận các số hạng tự do b của vế phải, sau đó thực hiện phép chia ma trận x=A\b

Ta thực hiện chuỗi lệnh sau:

A=[2.3 0 3.4 5.2;2 1.2 0 6;0 1 -2.6 4;1 3 4 -4];

b=[8;6;5;12];

x=A\b

kết quả là: x1=-6,614; x2=4,7239; x3=3,3709; x4=2,2601

Bài 6.5: giải hệ phương trình phi tuyến sau:

2x1+sinx2=e-x1

-cosx1+2x2=e-x2

Giải:

Trước hết ta thiết lập một m.file bằng việc nhập chuỗi lệnh sau:

function F= bai65(x)

Trang 4

-cos(x(1))+2*(x(2))-exp(-x(2))];

Sau khi cất bài vào dữ liệu với tên là bai65.m ta tiến hành giải bài toán với lệnh sau:

x0=[1;1];

options=optimset('display','off');

x=fsolve('bai65',x0,options)

kết quả là: x1=0,1115; x2=0,7363

Bài 6.6: tìm nghiệm của phương trình:

F(x)=x6+x4-x2+1,5e2x-5,4

Trước hết ta thảo một script có tên là bai66 như sau:

function F=bai66(x)

f=x^6+x^4-x^2+1.5*exp(2*x)-5.4

Đem cất hàm này vào thư mục với tên của chính hàm bai66.m

Để giải tiếp bài toán, ta thực hiện chuỗi lệnh sau:

Options=optimset(‘fzero’);

x0=-1; % giá trị xuất phát

x=fzero(‘bai66’,x0,options)

kết quả là: x=-1,2738

Bài 6.7: giải hệ phương trình phi tuyến sau:

Trang 5

f(x)={ x14+2,2 x22−cos x2

e 1,5x12,7 x2−2,2 sin x1=0

Giải: trước hết ta soạn một script trong đó khai báo hàm f với tên là ‘bai67’ và cất vào m.file với tên của chính hàm:

Function f=bai67(x)

F=[(x(1)^4)+2.4*(x(2)^2)-cos(x(2)),exp(-1.5* (x(1))) +2.7*x(2)-2.2*sin(x(1))];

Sau khi đã cất hàm ta gõ chuỗi lệnh:

x0=[1 1];

options=optimset(‘fsolve’);

options=optimset(options,’display’,’iter’);

[x,y,h]=fsolve(‘bai67’,x0,options)

Kết quả hiển thị trên màn hình:

Norm of First-order Trust-region

Iteration Func-count f(x) step optimality radius

0 3 9.32683 19 1

1 6 0.341164 0.453983 1.88 1

2 9 0.00579042 0.135602 0.246 1.13

3 12 2.48475e-06 0.0218041 0.00481 1.13

Trang 6

4 15 5.70716e-13 0.000477107 2.33e-06 1.13

5 18 3.54637e-26 2.27883e-07 5.67e-13 1.13

x =

0.7859 0.4625

y =

1.0e-12 *

0.1865 0.0260

h = 1

Bài 6.8: tim cực trị của hàm 2 biến:

F(x)=e x1

(4 x12+2 x22+4 x1x2+2 x2+1);

Với các điều kiện ràng buộc sau:

x1x2 - x1 - x2 -1,5;

x1x2-10

Giải:

Ta viết hàm m.file cho hàm f(x) lưu dưới tên ‘bai68.m’

function F= bai68(x)

F=exp(x(1))*[(4*(x(1)^2))

+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1];

Ta viết m.file cho điều kiện ràng buộc lưu với tên

‘rangbuoc’.m

Trang 7

function [c, ceq]=rangbuoc(x)

c=[1.5-x(1)-x(2)+x(1)*x*(2);

x(1)*x(2)+10 ];

Ceq=[];

Thực hiện chuỗi lệnh sau:

x0=[-0.2];

options=optimset('LargeScale','off');

[x,fval,exitflag]=fmincon(‘bai68',x0,[],[],[],[],[],

[],‘rangbuoc',options)

Bài 7.1: hãy xác định tổng của vecto b=1:10 và vecto tổng các

số hạng đầu tiên của nó

Giải:

Nếu ta sử dụng hàm sum(a) thì phép tính sẽ là: n=1+2+3+4+5+6+7+8+9+10=55;

m=(1,1+2,1+2+3,1+2+3+4,1+2+3+4+5,1+2+3+4+5+6,1+2+3 +4+5+6+7,1+2+3+4+5+6+7+8,1+2+3+4+5+6+7+8+9,1+2+3 +4+5+6+7+8+9+10)

Thực hiện lệnh MATLAB:

>>a=1:10;

n=sum(b)

m=cumsum(b)

Trang 8

Kết quả là:

n =55

m =1 3 6 10 15 21 28 36 45 55

Bài 7.2: Vẽ đồ thị hàm tổng của vecto b trong dải 1: 10

Giải:

Ta thực hiện lệnh vẽ đồ thị của biến a và b:

b=1:10;

a=cumsum(b);

plot(b,b,b,a)

grid

kết quả là:

Bài 7.3: Xác đinh tích của vecto b=1:5 và vecto của tích các

phần tử đâu tiên của nó

Giải:

Để xác định tích của các phần tử của mảng MATLAB ta sử dụng hàm prod(b) và hàm cumprod(b)

Trang 9

Cú pháp lệnh:

b=1:5;

e= prod(b)

f=cumprod(b)

Kết quả là:

e =120

f = 1 2 6 24 120

Bài 7.4: xác định giá trị và vẽ đồ thị của tích:

y = ∏

k =2

20

k2)

Giải: để xác định tích của chuỗi, sau khi khai báo ta áp dụng lệnh cumprod

n=20;

k=2:n;

a=1-2./k.^2;

cp=cumprod(a);

cp(end)

plot(cp/.5),grid;

xlable(‘k’);ylable(‘cp’);

title(‘\pi_{i=2}^n{(1}{-2}/{k^2)}’);

kết quả là: 0,2392

Trang 10

Bài 7.5: tìm giá trị giai thừa của số m!, với m=4.

Giải:

4!=1.2.3.4=24

Để xác định giai thừa của một số m, ta có thể dùng lệnh:prod(1:m)

Ta thực hiện lệnh sau:

m=4;

prod(1:m)

Kết quả là: 4!= 24

Bài 7.6: xác định tích phân sau:

I = ∫

0

3

0,2 x

1+e x dx

Theo phương pháp: hình chữ nhật, hình thang,Simpson

Giải:

n=100;

Trang 11

x=h/2:h:3;

f=0.2*x./(1+exp(x));

hinhchunhat=sum(h*f)

hinhthang=trapz(x,f)

Simpson=quad('0.2*x./(1+exp(x))',eps,4)

Kết quả là: I=0,1255; I=0,1251; I=0,1463

Bài 7.7: xác định tích phân hai lớp trong khoảng -5x5; -5y

5

I= ∬

−5

5

cos (x2+y2).exy

dxdy Giải:

Trước hết ta vẽ đồ thị hàm tích phân với các lệnh sau:

h=0.1;

x=-5:h:5;

[x,y]=meshgrid(x);

f=cos(x.^2+y.^2).*exp(-x*y);

surfl(x,y,f);

colormap autumn

shading interp

Để tính tích phân ta thực hiên chuỗi lệnh:

h=0.05;

x=h/5:h:5;

[x,y]=meshgrid(x);

Trang 12

format short

4*h^2*sum(f(:))

Kết quả là: I=0

Bài 7.9: cho hai đa thức f(x) và g(x) với: f(x)=6x2-3x+1 và g(x)=x2-5

Hãy thực hiện các phép:

a) nhân đa thức; b) chia đa thức; c) cộng đa thức

Giải:

Nhân hai đa thức:f(x).g(x)= x2(6x2-3x+1)-5(6x2-3x+1)

= 6x4-3x3-29x2+15x-5

Thực hiện lệnh matlab:

f=[6 -3 1];

g=[1 0 -5];

c=conv(f,g)

kết quả là:

c = 6 -3 -29 15 -5

Chia hai đa thức:g (x) f (x )=6 x 2−3 x +1

x 2−5

= 6 -3 x +31 x2

−5

Thực hiện lệnh matlab:

f=[6 -3 1];

g=[1 0 -5];

[p,r]=deconv(f,g)

Kết quả là:

Trang 13

p = 6

r = 0 -3 31

Cộng hai a thức: đa thức: f(x)+g(x)= 6x2-3x+1+x2-5

=7x2-3x-4

Thực hiện lệnh matlab:

f=[6 -3 1];

g=[1 0 -5];

addpoly(f,g)

Kết quả là:

Bài 7.10: hãy lấy tích phân của hàm f=sinx.e x Giải:

Đặt I=f

Dùng pp tích phân từng phần:

Đặt u=sinxdu=cosxdx

dv=e xdx v=e x

suy ra I = sinx.e x-∫e x cosxdx

đặt I1=∫e x cosxdx

tiếp tục dùng tích phân từng phần

suy ra I1=e x cosx+∫e x sinxdx

= e x cosx+I

Thay vào I ta được:

Trang 14

I=sinx.e x-e x cosx-I

= e x.cosx−sinx2

Bài 7.11: lấy đạo hàm của hàm: f=sinx.e x

Giải:

F’(x)=(e x)’.sinx+e x.(sinx)’

= e x.sinx+e x.cosx

=e x(sinx+cosx)

Bài 7.12: hãy lấy giới hạn:

lim

x→ 4

x−2

x2−5 x+4

Giải:

lim

x→ 4

x−2

x2−5 x+4 = (x−1)(x−4)x−2

=( x−1)(√√x−2)( x−2x +2)

= (x−1)(1√x+2) = 121

Bài 7.13: hãy đặt thành thừa số chung của đa thức:

P=6x4-3x3+5x2+2x

Giải: đặt x làm thừa số chung, ta được:

P=x(6x3-3x2+5x+2)

Bài 7.14: hãy khai trển đa thức:

B=(x+1)(x2-x+1)

Trang 15

B=x3-x2+x+x2-x+1

=x3+1

Bài 7.15: hãy đơn giản hóa biểu thức: y=2cos2x+sin2x

Giải:

Ta có: cos2x+sin2x=1

Suy ra: y= cos2x+ cos2x +sin2x

= cos2x+1

Bài 7.16: giải phương trình vi phân xy’-y=x2cosx, với điều kiện đầu: y(0)=0

Giải:

Ta thực hiện lệnh:

syms y

dsolve(‘(dy)*(x)-y=x^2*cos(x)’, ‘y(0)=0’)

kết quả là: x2.e

t

x cosx−x2 cosx

Bài 7.17: giải phương trình vi phân cấp hai: y’’=sinxcos2x−sin3 x Giải:

Ta thực hiện lệnh sau:

syms x y

y=dsolve(‘(d2y)=(sin(x)*(cos(x)^2))-sin(3*(x))’)

kết quả là: y=3 sin x3

Trang 16

Bài 7.18: giải các phương trình vi phân hai biến:

x’=7x-3y

y’=3x+7y

với các điều kiện ban đầu: x(0)=0 và y(0)=1

Giải:

Ta thực hiện lệnh sau:

S=dsolve('Dx=7*x-3*y','Dy=3*x+7*y','x(0)=0,y(0)=1')

x=S.x % lưu ý không phải dấu (*) , mà là dau(.)

y=S.y

kết quả là:

x=-sin3t.e 7 t

y=cos3t.e 7 t

Bài 7.19: hãy thực hiện phép chuyển đổi Laplace hàm số sau:

f = 5e−3 t +7 t e −t;

Giải:

Áp dụng công thức bảng đối chiếu gốc ảnh:

1

(s+a)2¿te

at

; s +a1 =eat

Suy ra: F=s +35 + 7

(s +1)2

Trang 17

Bài 7.20: hãy thực hiện phép chuyển đổi ngược kết quả của

bài 7.19 trên:

Giải:

Ta có: F=s +35 + 7

(s +1)2

Dùng công thức chuyển đổi bài 7.19, ta được kết quả:

f=5 e−3 t +7 t e −t

Ngày đăng: 22/11/2017, 21:21

TỪ KHÓA LIÊN QUAN

w