1. Trang chủ
  2. » Cao đẳng - Đại học

Bài tiểu luận môn phương pháp tính nhóm 16

29 833 2

Đ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 29
Dung lượng 0,93 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nhiều vấn đề của khoa học kỹ thuật, kinh tế, môi trường quy về giải hệ phương trình tuyến tính n phương trình n ẩn:Đặt A aij n nx là ma trận hệ số, b   là vectơ cột hệ số tự do cho tr

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM TP.HỒ CHÍ MINH

12-2014

Trang 2

Mục lục

I.Đặt vấn đề Trang 1 II.Giải quyết vấn đề Trang 2

A Kiến thức chuẩn bị Trang 2

2 Phương pháp Seidel Trang 16 2.1Nội dung phương pháp Trang 16 2.2 Định lý hội tụ Trang 16 2.3 Ví dụ áp dụng Trang 18 2.4 Đoạn chương trình Trang 22

III Tài liệu tham khảo Trang 27

I Đặt vấn đề

Trang 3

Nhiều vấn đề của khoa học kỹ thuật, kinh tế, môi trường quy về giải hệ phương trình tuyến tính n phương trình n ẩn:

Đặt A( )aij n nx là ma trận hệ số, b   là vectơ cột hệ số tự do cho trước, n a   là vectơ n

cột cần phải tìm thì hệ số trên có thể viết dưới dạng: Axb (2)

Nếu detA 0 thì nghiệm của hệ (2) có thể tính theo công thức x A b  1 Ta có thể tìm nghiệm của hệ phương trình bằng định lý Cramer như sau:

Định lý Cramer: Gọi A j là ma trận nhận được từ ma trận A bằng cách thay cột thứ j bằng

cột b, khi đó hệ (2) có nghiệm duy nhất và x j được tính bởi công thức:

det Adet A

j j

x 

Tuy nhiên trong thực hành người ta không dùng công thức này để tính nghiệm vì số phép tính quá lớn mà người ta dùng các phương pháp hữu hiệu khác Trong số các phương pháp đó có thể chia ra làm hai nhóm phương pháp lớn là phương pháp trực tiếp và nhóm phương pháp gián tiếp

Đặc điểm chung của nhóm phương pháp trực tiếp là sau một số hữu hạn phép tính sẽ có kết quả, vì vậy nhóm phương pháp này thường được áp dụng với lớp các bài toán có kích thước nhỏ

và các số liệu ban đầu là đúng Nếu như mọi tính toán của ta là chính xác thì các phương pháp trên cho kết quả hoàn toàn chính xác

Các phương pháp giải trực tiếp nói chung cần cn phép tính, trong đó c là hằng số, và người ta 3

ước lượng 2

3

c  Chẳng hạn như phương pháp Gauss mà ta xét ở trên là phương pháp giải đúng,

nghĩa là những phép tính sơ cấp được thực hiện đúng hoàn toàn thì cuối cùng ta được nghiệm đúng của hệ Tuy nhiên trên thực tế ta phải luôn luôn làm tròn khi thực hiện các phép tính Vì những lí do trên người ta đã tìm ra phải thường xuyên làm tròn các số, nghĩa là ta thường chỉ tính toán trên các số gần đúng mà thôi, và như vậy sai số tổng hợp đôi khi có thể sẽ khá lớn Liệu cáchlàm tròn trong tính toán có làm ảnh hưởng nhiều đến kết quả cuối cùng không? Ví dụ sau đây cho

Trang 4

thấy rằng có những hệ phương trình đại số tuyến tính rất “ nhạy cảm” với sai số, nghĩa là sai số nhỏ khi tính toán có thể ảnh hưởng nghiêm trọng đến kết quả cuối cùng Nói một cách hình tượngthì ta gặp tình huống “sai một li đi một dặm” Những hệ thống phương trình kiểu này được gọi là

hệ phương trình không ổn định Ví dụ ta xét hệ phương trình sau:

Hệ này lại có nghiệm x15 ; x2 8, khác xa so với hệ trên đây

Người ta tìm kiếm những phương pháp gần đúng để giải các bài toán, tức là ngay từ đầu người ta chấp nhận kết quả xấp xỉ, hay sự xấp xỉ đã nằm ngay trong mô hình Khi thực hiện tính toán cụ thể chúng ta lại gặp sai số một lần nữa Như vậy trong các phương pháp gần đúng thì sai

số sẽ là tổng hợp của sai số mô hình và sai số tính toán

Trong tài liệu này, chúng em xin nhắc lại một số phương pháp tính đúng nghiệm của hệ phương trình tuyến tính và giới thiệu một vài phương pháp để tính gần đúng

II Giải quyết vấn đề

A Kiến thức chuẩn bị:

1 Một số loại ma trận:

Một ma trậnA( )aij M n( ) được gọi là ma trận đường chéo trội nếu một trong hai điều kiện sau đây được thỏa mãn:

Trang 6

B Phương pháp giải gần đúng

1 Phương pháp lặp đơn

1.1 Cơ sở lí luận

1.1.1 Nội dung phương pháp

Trong không gian n

 , người ta xét 3 chuẩn quen thuộc sau:

1

1 1 1 2 2 2

1

max i

i n n i i n i i

1 1 2 2 2

,

maxmax

n ij

i n j n ij

  bằng phương pháp lặp đơn,ta biến

đổi về hệ tương đương dạng x Bx g  với:

b b b

b b b B

n

c c g c

Trang 7

Sau đó với một x   (thường chọn   0 n x là   0 g) gọi là vectơ xấp xỉ đầu, ta thiết lập dãy

Nếu dãy những vectơ lặp   0   1   2  

, , , , k ,

x x xx  có giới hạn là xlimk x k thì giới hạn ấy

là nghiệm đúng của hệ phương trình Thật vậy:

x hội tụ đến nghiệm đúng *x của hệ

 1 Sau đây ta xét một số điều kiện của ma trận B để dãy   k

*1

*1

Trang 8

Vì *x là nghiệm của hệ  2 nên x*Bx*g

Lấy (3) trừ đẳng thức này vế với vế ta được:     1 

xx khi k   Vậy phương pháp lặp (3) hội tụ.

Bây giờ xét các đánh giá sai số.Ta có:  1   1      

Trang 9

Trừ hai đẳng thức này vế với vế ta được:

Nhận xét: Từ đánh giá sai số (ii), sự hội tụ của phương pháp lặp đơn càng nhanh nếu B p càng

bé, nó còn cho ta biết sau khi biết   1

- Output: x* *: x nghiệm gần đúng của hệ phương trình có biểu diễn thập phân có m chữ

số sau dấu phẩy, có sai số không quá p.10m

- Giải thuật:

1

1 1

max n ij

i n j

Trang 10

0,02 0,05 0,1 0,170,11 0,03 0,05 0,190,11 0,12 0,04 0, 27

j j

j j

j j

b b b

Trang 11

k k k

x x x

0,9811,0041,563

k k k

x x x

Trang 12

Ta phải đưa nó về dạng x Bx g  sao cho điều kiện hội tụ trong định lý 1 được thỏa mãn

Trang 14

Procedure Ra(x: mang1c);

var i,dem: byte;t,tt:real;

Trang 17

x0:=x1;

x1:=Cong(Nhan(B,x0,N),g,N);

x1:=LamTron(x1,3,N);

z:=(cB/(1-cB))*ChuanX_Y(x0,x1,N);End;

Trang 19

    nghĩa là x( )k  dãy xây dựng theo phương pháp seidel

hội tụ đến nghiệm duy nhất x*

2) Phương pháp Seidel tiết kiệm bộ nhớ hơn phương pháp lặp đơn vì:

+ Phương pháp lặp đơn sử dụng 2n ô nhớ cho x k1 và x k

+ Phương pháp Saidel chỉ cần n ô nhớ của X kX k1 vì sau khi tính 1 1

k

x

thì không cần sử dụng x1k

Trang 20

0 0 0

n n

Trang 21

Vậy ta có x B xg với

0 0,06 0,02 20,03 0 0,05 ,g = 30,01 0,02 0 5

Vậy quá trình lặp Seidel hội tụ

Phân tích B thành tổng hai ma trận B B 1B2 với

Trang 24

fo='SeiDel.out';

type Mang1C= array[1 Nmax] of real;

Mang2C= array[1 Nmax,1 Nmax] of real;Var A :Mang2C;

Trang 25

Procedure DocFile(Tenfile: string);

Var i,j: byte; f: text;

Trang 26

g[i]:=b1[i]/A[i,i];

End;

End;

Function ChuanB_vc(B: Mang2C; N: byte): real;

var t,max: real;

Trang 27

Function ChuanX_Y(x,y: Mang1C; N: byte): real;

var i: byte; t: real;

Trang 28

x1:=NhanB_x(B,x0,g,N);End;

Trang 29

III. Tài liệu tham khảo:

1 Bài giảng của thầy Trịnh Công Diệu

2 Tài liệu khóa K34, 35, 36.

3 Giải Tích số, Phạm Kỳ Anh, ĐHQG 1996.

4 Tài liệu Internet

Ngày đăng: 02/05/2015, 14:50

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w