Bai Tap SciLab

12
BÀI TẬP Tính toán với các biểu thức đơn giản Thực hiện các phép toán “+, -, *, /”, tính sinh, cos đối với số thực, sử dụng các hằng số như Pi. Bài 1: Sử dụng SciLab để tính giá trị của biểu thức log(s 2 -2s cos( π/5) + 1 ) ở đó s = .5 Bài giải: -->s s = 0.5 -->log(s^2 - 2*s*cos(%pi/5)+1) ans = - 0.8187489 Bài 2: Sử dụng SciLab để tính giá trị của biểu thức log(s 2 -2scos(π/5) + 1) ở đó s = .95. Bài giải: -->s = .95 s = 0.95 -->log(s^2 - 2*s*cos(%pi/5)+1)

Transcript of Bai Tap SciLab

Page 1: Bai Tap SciLab

BÀI TẬP

Tính toán với các biểu thức đơn giản

Thực hiện các phép toán “+, -, *, /”, tính sinh, cos đối với số thực, sử dụng các hằng số như Pi.

Bài 1: Sử dụng SciLab để tính giá trị của biểu thức log(s2 -2s cos( π/5) + 1 ) ở đó s = .5

Bài giải:

-->s

s =

0.5

-->log(s^2 - 2*s*cos(%pi/5)+1)

ans =

- 0.8187489

Bài 2: Sử dụng SciLab để tính giá trị của biểu thức log(s2 -2scos(π/5) + 1) ở đó s = .95.

Bài giải:

-->s = .95

s =

0.95

-->log(s^2 - 2*s*cos(%pi/5)+1)

ans =

- 1.006851

Page 2: Bai Tap SciLab

Bài 3: Tính giá trị của biểu thức log(s2 -2sin(π/5) + 1) ở đó s = 1

Bài giải:

-->s = 1.0

s =

1.

-->bt = s^2 -2*sin(%pi/5)+1

bt =

0.8244295

-->log(bt)

ans =

- 0.1930637

Thực hiện phép toán với số phức

Bài 4: Tạo các biến x = 1 + i và y = 1-i. Sau đó minh chứng (1 + i)(1 - i) = 2

Bài giải:

-->x = 1+%i x = 1. + i -->y = 1 - %i y = 1. - i -->x*y ans = 2.

2

Page 3: Bai Tap SciLab

Bài5: Tạo biểu thức trong SciLab để chứng tỏ eπi + 1 = 0 và i = eπi/2

Bài giải:

-->exp(%pi*%i)+1

ans =

1.225D-16i => số cực bé xấp xỉ 0

-->%i - exp((%pi*%i)/2)

ans =

- 6.123D-17 => xấp xỉ 0

Sử dụng lệnh Help

Bài 6:

(a) Tính giá trị của biểu thức sin-1(.5) trong SciLab

(b) Nếu x = .5 , kiểm tra xem sin(sin-1(x)) – x có chính xác bằng 0 trong SciLab ?

(c) Nếu x = π/3 thì sin-1(sin(x)) – x có chính xác bằng 0 trong SciLab? Tương tự cho x = 5 π /11

Bài giải:

(a) -->help asin -->asin(.5) ans = 0.5235988

(b)-->x = .5 x = 0.5 -->sin(asin(x)) - x

3

Page 4: Bai Tap SciLab

ans = 0.

(c)-->x = %pi/3 x = 1.0471976 -->asin(sin(x)) - x ans = 0.

-->x = 5*%pi/11 x = 1.4279967 -->asin(sin(x)) - x ans = - 4.441D-16

Bài 7: Hãy tìm hàm trong SciLab để biến đổi một số từ hệ 10 sang hệ 16 (Hexa). Chuyển số 61453 sang hệ 16

Bài giải :

-->help hexadecimal => tìm các hàm có thông tin chứa xâu hexadecimal. Ta sẽ tìm thấy hàm :dec2hex — hexadecimal representation of integers

-->dec2hex(61543)

ans =

F067

Bài 8: Hãy tìm tất cả các thông tin về các đối tượng có chứa “logarithms” trong SciLab. Có 8 kết quả được tìm thấy, trong đó có cả lệnh logm

Bài giải :

-->apropos logarithm

4

Page 5: Bai Tap SciLab

Tính toán với ma trận và véc tơ

Bài 9: Cho một ma trận A ban đầu, làm thế nào hiển thị được góc dưới bên trái kích thước 2 * 3

Bài giải :

-->A = [1 2 -1 ; -2 -6 4 ; -1 -3 3]

A =

1. 2. - 1.

- 2. - 6. 4.

- 1. - 3. 3.

-->A(2:3,1:3)

ans =

- 2. - 6. 4.

- 1. - 3. 3.

Bài 10: Thiết lập ma trận sau:

A = [ 1 1 0 0

0 2 1 0

0 0 3 1

0 0 0 4]

Đưa ra các thuộc tính của ma trận như định thức, ma trận nghịch đảo, A’, spec, …

Bài giải :

-->A = [1 1 0 0 ; 0 2 1 0; 0 0 3 1; 0 0 0 4]

A =

1. 1. 0. 0.

5

Page 6: Bai Tap SciLab

0. 2. 1. 0.

0. 0. 3. 1.

0. 0. 0. 4.

-->A'

ans =

1. 0. 0. 0.

1. 2. 0. 0.

0. 1. 3. 0.

0. 0. 1. 4.

-->det(A)

ans =

24.

-->spec(A)

ans =

1.

2.

3.

4.

Bài 11: Đưa ra hàng thứ 2, cột thứ 3 của ma trận. Đưa ra ma trận trái dưới 2x3 của A; tính định thức ma trận trái trên 3x3 của A

Bài giải:

-->A = [1 1 0 0 ; 0 2 1 0; 0 0 3 1; 0 0 0 4]

6

Page 7: Bai Tap SciLab

A =

1. 1. 0. 0.

0. 2. 1. 0.

0. 0. 3. 1.

0. 0. 0. 4.

-->A(2,:)

ans =

0. 2. 1. 0.

-->A(:,3)

ans =

0.

1.

3.

0.

-->A(2:3,:)

ans =

0. 2. 1. 0.

0. 0. 3. 1.

-->det(A(1:3,1:3))

ans = 6.

7

Page 8: Bai Tap SciLab

Bài 4. (Tính toán ma trận và vector)

a. A=[1 1 0 0; 0 2 1 0; 0 0 3 1; 0 0 0 4]inv(A) * AA*inv(A)Kết quả đều là1 0 0 0; 0 1 0 0; 0 0 1 0; 0 0 0 1

b. A=rand(4,4)B=rand(4,4);inv(A*B)inv(B)*inv(A)inv(A*B)-inv(B)*inv(A)

c. A^(-1)inv(A)A^(-1)-inv(A)

Giải hệ phương trình

Bài 1.

A=[-1 2 1; 2 -1 3; 0 1 -1]

b=[2; 4; 0]

x=A\b

x=[1; 1; 1]

b-A*x=[0; 0; 0]

Bài 2

x = inv(A)*b

Bài 3

A = rand(5,5)

b = rand(5,1);

x = A\b;

Bài 4.

A=rand(700,700,’normal’)

b=rand(700,1,’normal’)

timer();x=A\b;timer()

timer();y=inv(A)*b;timer()

timer();z=A^(-1)*b;timer()

8

Page 9: Bai Tap SciLab

Xây dựng đa thức và tính toán với đa thức

Bài 1.

v=[4 -3 1];

f=poly(v,’x’,’coeff’);

roots(f);

Bài 2.

v=[1 -8 28 -56 70 -56 28 -8 1];

f=poly(v,’x’,’coeff’);

x=[0.975:0.0001:1.025]’;

horner(f,x)

x=poly(0,’x’);

g=((((((((x-8)*x+28)-56)*x)+70)*x-56)*x+28)*x-8)*x+1;

x=[0.975:0.0001:1.025]’;

horner(g,x)

x=poly(0,’x’);

h=(x-1)^8;

x=[0.975:0.0001:1.025]’;

horner(h,x)

Đồ thị

Bài 1.

x=[-1:0.1:1]’;

y=cos(x);

y1=((1+cos(x).^2)).^(-1); hoac y1=(1.0)./((1+cos(x).^2));

y2=(3+cos((1+x.^2).^(-1))).^(-1);

plot2d(x,[y y1 y2])

Bài 2.

x=[-4:0.1:4]’;

9

Page 10: Bai Tap SciLab

a1=0.5;a2=1;a3=2;

y1=(1+%e^(a1*x)).^(-1); hoac y1=(1.0)./(1+%e^(a1*x))

y2=(1+%e^(a2*x)).^(-1);

y3=(1+%e^(a3*x)).^(-1);

plot2d(x, [y1 y2 y3])

Bài 3.

a.

[x,y]=meshgrid(-2:1:2,-2:1:2)

surf(x,y,x.^2-y.^2)

b.

[x,y]=meshgrid(1:1:5,1:1:5)

surf(x,y,x.*y.*(x*2-y*2)./(x.^2.+y.^2))

10