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

Giáo trình tính toán khoa học - Chương 1 potx

21 662 1
Tài liệu đã được kiểm tra trùng lặp

Đ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 21
Dung lượng 332,62 KB

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

Nội dung

Nội dung từng chương mục của cuốn sách cố gắng được giới thiệu ngắn gọn theo cấu trúc: giới thiệu bài toán, cơ sở lý thuyết, ứng dụng thực tiễn, các phương pháp toán học và sử dụng các c

Trang 1

2.1 Làm quen với Matlab

2.2 Những lệnh điều khiển chương trình

62

3.1 Giải tích ma trận

3.2 Một số ma trận đặc biệt trong Matlab

3.3 Các phương pháp giải hệ phương trình tuyến tính

3.4 Ma trận suy biến và ma trận gần suy biến

93

Trang 2

111

5.1 Nội suy bằng đa thức

5.2 Nội suy bằng Spline bậc 3

135

6.1 Tích phân số dựa trên đa hức nội suy

6.2 Công thức ngoại suy Richardson

6.3 Tính tích phân bội

6.4 Tích phân ngẫu nhiên

6.5 Vi phân số dựa trên nội suy

6.6 Một số hàm tính vi phân của Matlab

165

7.1 Giải phương trình

7.2 Giải hệ phương trình phi tuyến

7.3 Bài toán Tối ưu hóa

7.4 Qui hoạch tuyến tính

7.5 Qui hoạch toàn phương

7.6 Bài toán qui hoạch không ràng buộc

205

8.1 Phương trình vi phân thường và các phương pháp giải cơ bản

8.2 Ứng dụng của phương trình vi phân

205

212

Trang 3

8.3 Giải phương trình với điều kiện biên

245

10.1 Biểu diễn phổ dữ liệu

10.2 Tương quan giữa 2 chuỗi thời gian

245

246

Trang 4

LỜI NÓI ĐẦU

Rất nhiều năm kể từ những năm của thập kỷ 70 thế kỷ XX về trước, một kỹ

sư khi tính toán thường sử dụng các bảng số, thước tính hoặc máy tính quay tay

Từ thập kỷ 70 cho đến những năm đầu thập kỷ 80 họ chuyển dần sang sử dụng các máy tính bỏ túi (calculator) và người ta xem đó như một cuộc cách mạng về công nghệ tính toán Tuy nhiên với những công cụ thô sơ như vậy thì con người phải làm việc rất vất vả mà chỉ có thể giải được các bài toán cỡ nhỏ đến trung bình với độ chính xác không cao Trong khoảng thời gian đó máy tính điện tử (MTĐT) đã có nhưng vẫn chỉ là một thứ công cụ “xa xỉ”

Từ đầu thập kỷ 80 của thế kỷ XX đến nay, Công nghệ thông tin phát triển nhanh chóng và đi dần dần từ khoa học kỹ thuật vào đời sống hàng ngày Tư duy

và phương pháp làm việc của người kỹ sư cũng thay đổi một cách cơ bản Sự bùng nổ thông tin khiến họ không thể giải các bài toán khoa học kỹ thuật thực tế hiện đại mà không sử dụng MTĐT Đây là khoảng thời gian mà các công cụ Tính toán khoa học phát triển mạnh mẽ Các phần mềm tin học đã trợ giúp cho các nhà nghiên cứu kinh tế, nghiên cứu xã hội, kỹ sư, kiến trúc sư , bác sỹ… giải quyết nhanh chóng và hiệu quả các công việc của họ

Cũng vì lý do như trên mà nội dung của nhiều môn học truyền thống của các trường đại học cũng phải thay đổi cả về phương pháp giảng dạy, phương pháp học tập, phương pháp nghiên cứu và thực hành

Cuốn sách này sẽ trình bày về Các phương pháp tính toán số Đây chỉ là một khía cạnh nghiên cứu của Tính toán khoa học Mục đích của cuốn sách là dùng làm tài liệu giảng dạy, học tập, nghiên cứu và tham khảo cho sinh viên đại học và học viên cao học ngành CNTT và các ngànhkỹ thuật

Nội dung từng chương mục của cuốn sách cố gắng được giới thiệu ngắn gọn theo cấu trúc: giới thiệu bài toán, cơ sở lý thuyết, ứng dụng thực tiễn, các phương pháp toán học và sử dụng các công cụ đã có trong Matlab để giải bài toán đặt ra Các bài tập trong các chương cũng được chia làm 2 loại: một loại yêu cầu học viên sử dụng các hàm đã cài đặt sẵn của Matlab để giải các bài toán cụ thể, một loại khác lại yêu cầu học viên cài đặt chương trình để giải các bài toán tổng quát theo các phương pháp toán học đã được giới thiệu

Trang 5

Do hạn chế về không gian và thời gian nên chúng tôi đi sâu về việc trình bày các công thức và phương pháp cài đặt chương trình tính toán và ít trình bày các chứng minh của định lý và công thức Nếu muốn tìm hiểu kỹ hơn về điều này, bạn đọc cần đọc thêm những giáo trình về giải tích số

Đây là lần xuất bản đầu tiên nên trong cuốn sách không thể tránh được một

số thiếu sót về nội dung và chế bản Rất mong nhận được những góp ý chân tình

và thẳng thắn của bạn đọc

Để hoàn thành giáo trình này tôi xin chân thành cảm ơn sự giúp đỡ của PGS-TS Nguyễn Đức Nghĩa và những gợi ý bổ ích của PGS-TS Tô Văn Ban; Đồng thời tôi cũng xin cảm ơn sự giúp đỡ, khích lệ, đọc bản thảo và đóng góp ý kiến của các Giáo sư, Tiến sỹ và giảng viên Bộ môn Toán, Khoa CNTT Học viện Kỹ thuật Quân sự

Tác giả

Trang 6

Chương 1

MỞ ĐẦU VỀ TÍNH TOÁN KHOA HỌC

1.1 MỞ ĐẦU

1.1.1 Khái niệm về Tính toán khoa học

Tính toán khoa học (TTKH) đã trở thành lĩnh vực nghiên cứu phổ biến và phát triển mạnh trong suốt hàng chục năm qua Có rất nhiều định nghĩa và khái niệm về TTKH theo các khuynh hướng phát triển khác nhau của nó, tuỳ thuộc vào từng lĩnh vực nghiên cứu và sự phát triển của công cụ ứng dụng Đây là một lĩnh vực đang phát triển rất nhanh, cho nên một định nghĩa lúc này được coi là hợp lý thì chẳng bao lâu nó trở nên lạc hậu do các thuật toán, lĩnh vực ứng dụng

và cấu trúc máy tính liên tục được cải tiến

Có thể nêu một định nghĩa khá tổng quát về TTKH và cũng dễ được chấp nhận như sau: Tính toán khoa học là một môn khoa học sử dụng máy tính điện tử

và các thuật toán số theo một phương pháp hiệu quả để giải các bài toán khoa học, kỹ thuật và kinh tế có kích thước lớn

Người ta nói rằng TTKH là sự giao thoa của Toán học, Công nghệ thông tin

và các ngành khoa học ứng dụng

1.1.2 Phương pháp nghiên cứu TTKH

Trước hết cần phải phân tích kỹ lưỡng những ứng dụng của các công cụ tính toán số và công cụ tính toán ký hiệu Trong các nghiên cứu ứng dụng, cần xem xét chỗ nào thì các công cụ tính toán cổ điển như phương pháp giải tích phù hợp hơn và chỗ nào thì cần phải sử dụng phương pháp tính số

Nội dung giáo trình sẽ giới thiệu ngắn gọn cơ sở lý thuyết của các phương pháp số, các thuật toán dùng để tính toán chúng, các hàm nội trú của Matlab phục

vụ cho việc tính toán và kỹ thuật cài đặt hàm Matlab theo các thuật toán đã nghiên cứu Giáo trình không sử dụng các công cụ toán học nào quá phức tạp ngoài các phương pháp tính toán giải tích và đại số tuyến tính quen thuộc Tuy nhiên người đọc cũng cần nắm được các kiến thức cơ bản về lý thuyết phương trình vi phân thường

Trang 7

Phương pháp nghiên cứu của bất kỳ một lĩnh vực tính toán khoa học nào cũng được mô tả khái quát như trong Hình 1.1

Có thể diễn giải sơ đồ trong Hình 1.1 như sau Đầu tiên ta nghiên cứu bài toán thực tế cần phải giải quyết Trong hầu hết các trường hợp, bài toán được đặt

ra ban đầu phụ thuộc vào rất nhiều tham số và các yếu tố ngẫu nhiên, cho nên không thể có một phương pháp giải được bài toán trong trường hợp hoàn toàn tổng quát Để xây dựng được mô hình bài toán, cần phải bổ sung các giả thiết hợp lý và hiệu quả cho mốt số tham số thích hợp nhất; đồng thời cũng cần phải xấp xỉ một số yếu tố trong xây dựng cấu trúc của bài toán

Hình 1.1 Mô hình tính toán khoa học

Kết quả là xây dựng được mô hình của bài toán gốc với những đặc trưng quan trọng nhất Sau công việc đơn giản hoá này, hãy cố gắng tìm phương pháp hiệu quả để giải bài toán mô hình với sự trợ giúp của MTĐT

Giáo trình sẽ trình bày một số phương pháp tính toán cơ bản Trong đó, có nhiều phương pháp khá hiệu quả cho những bài toán có cấu trúc đặc biệt Nói chung, có hai kỹ thuật tính toán được sử dụng chủ yếu là:

- Phương pháp tính toán kí hiệu (Symbolic computations): Cần thiết cho việc mô tả các đặc trưng liên tục của bài toán mô hình

- Phương pháp tính toán số (Numeric computations): Biểu diễn hàm liên tục bởi tập hợp dữ liệu rời rạc để xử lý trên MTĐT

Kiểm tra

Trang 8

Sau khi đã chọn thuật toán và phương pháp giải thích hợp cho bài toán của

mô hình, thực hiện các thuật toán ta sẽ nhận được các kết quả Đây là kết quả giải được của bài toán mô hình Vì thế các kết quả này phải được kiểm tra để bảo đảm rằng chúng hoàn toàn đúng đắn và phù hợp với bài toán gốc được đặt ra từ thực

tế Nếu chúng chưa phù hợp thì cần phải tìm hiểu xem nguyên nhân là do mô hình được xây dựng chưa hợp lý hay do thuật toán được chọn sai Việc đánh giá sai số của kết quả đã tính được và những phương pháp “tính toán ngược” rất cần thiết trong trường hợp này

Sau khi đã bảo đảm rằng các kết quả là hoàn toàn đúng đắn và phù hợp với bài toán, ta có thể thông báo hay trình bày kết quả dưới dạng: báo cáo kĩ thuật, đồ họa, quảng cáo hay bài báo khoa học

Trong các chương mục của giáo trình, chúng tôi tập trung trình bày :

- Cơ sở toán học của các phương pháp tính toán số sử dụng cho các bài toán được nghiên cứu;

- Khai thác sử dụng các thuật toán từ các gói phần mềm tính toán số và tính toán kí hiệu;

- Quản lí dữ liệu và biểu diễn kết quả

1.1.3 Quan hệ giữa các phương pháp tính rời rạc và liên tục

Nhiều khái niệm trong toán học cổ điển được định nghĩa bởi những

quá trình giới hạn Chẳng hạn, đạo hàm của một hàm số f(x) được định nghĩa bởi

Tuy nhiên, MTĐT lại không thể đánh giá được các giới hạn, ngay cả giới

hạn khi x tiến dần đến 0 của các biểu thức đơn giản như:

x

x x

Trang 9

Vì vậy người ta thường xấp xỉ hoá các giới hạn từ chính các biểu thức lấy

giới hạn, chẳng hạn với cách chọn h đủ nhỏ để xấp xỉ hoá giá trị thực của đạo

hàm hoặc tích phân xác định Công việc đó chỉ thực sự có ý nghĩa khi ta biết được giới hạn đó hội tụ và có thể đánh giá được sai số của nó

Lĩnh vực nghiên cứu của giải tích số bao gồm cả việc xây dựng, lẫn việc đánh giá hiệu quả của các thuật toán để xấp xỉ các giới hạn liên tục theo một cách tốt nhất có thể được Việc khẳng định được tính chắc chắn và ổn định của các quá trình giới hạn đóng vai trò to lớn trong việc này Để dễ dàng nghiên cứu giáo trình này bạn đọc nên đọc thêm các giáo trình về giải tích số

Như vậy, các phương pháp toán học rời rạc (phương pháp số) và các phương pháp toán học liên tục (phương pháp giải tích) là hai lĩnh vực nghiên cứu khác nhau nhưng hỗ trợ cho nhau trong việc giải quyết các bài toán thực tế Sau đây chúng tôi sẽ trình bày một thí dụ minh họa về phương pháp nghiên cứu TTKH: mô tả mối quan hệ giữa phát biểu về mặt toán học của các bài toán, bao gồm cả những giả thiết hợp lý được sử dụng trong các mô hình thực tế, những công cụ giải tích cho một số trường hợp, các giả thiết nhằm đơn giản hoá bài toán và các phương pháp số dùng để giải bài trong trường hợp tổng quát Cuối cùng chúng ta sẽ quan sát kết quả tính toán được dưới một trong hai dạng tĩnh hoặc động

Phương pháp tiếp cận của TTKH nói chung là đa nguyên tắc Chúng bao gồm nhiều kĩ thuật tính toán và phương pháp toán học, từ giải tích tiệm cận đến các sơ đồ tính toán số, từ phương pháp tính toán song song đến sự vận dụng tính toán kí hiệu

Đầu tiên chúng tôi trình bày các công cụ và kỹ thuật cơ bản trong TTKH bằng cách minh hoạ bằng các bài toán cỡ nhỏ (Small-Scale) Điều đó có vẻ như mâu thuẫn với ý nghĩa cơ bản của định nghĩa về TTKH được nêu ở trên Tuy nhiên ở đây chúng tôi muốn minh hoạ các kĩ thuật tính toán cho một số công việc

cụ thể còn hơn để bạn đọc bị choáng ngợp vì kích thước lớn của bài toán Cũng cần phải nói thêm rằng, có nhiều bài toán cỡ lớn đòi hỏi những công cụ và các phương pháp giải đặc biệt phù hợp với kích cỡ của chúng (chẳng hạn, các thuật toán lặp cho ma trận cỡ lớn) Những vấn đề như vậy vượt quá phạm vi nghiên cứu của giáo trình này Vì vậy, ta nên áp dụng phương pháp tiếp cận đa nguyên tắc và khai thác các kỹ năng giải bài toán bằng cách bắt đầu từ các bài toán đáng quan tâm với kích thước vừa và nhỏ

Trang 10

Bây giờ ta nghiên cứu dáng điệu của các đường cong traction được cho bởi phương trình vi phân :

trong đó a là một số thực cụ thể Đây là một bài toán khá khó Nếu sử dụng công

cụ tính toán kí hiệu trong Maple để lấy tích phân biểu thức này ta sẽ được kết quả dưới dạng biểu thức giải tích:

Trang 11

1.2 PHÂN TÍCH SAI SỐ

1.2.1 Khái niệm về sai số

Trong tính toán chúng ta thường làm việc với giá trị xấp xỉ của các đại lượng Do đó việc nghiên cứu sai số của các đại lượng là cần thiết và được đặt ra đầu tiên

 Số xấp xỉ

Giả sử một đại lượng có giá trị đúng là A Tuy nhiên, nhiều khi ta không thể biết được chính xác giá trị thực của A Cho nên khi tính toán và biểu diễn số A ta thường thay A bởi giá trị gần đúng của nó là a Khi đó ta gọi a là số xấp xỉ của A

và viết:

Người ta sử dụng số xấp xỉ trong các tính toán do các nguyên nhân:

- Không thể biết giá trị chính xác của A;

- Số chữ số của A quá lớn, tốn rất nhiều công tính toán mà hiệu quả kinh tế

không cao hơn bao nhiêu

Tuy nhiên, cần phải đánh giá được ảnh hưởng của các số xấp xỉ trong tính toán nhằm tránh các “tổn thất” không đáng có trong các bài toán ứng dụng trong thực tế

 Sai số tuyệt đối

Người ta gọi aA là sai số tuyệt đối của a Trong đa số các trường hợp số

A chưa biết nên aA cũng không tính được Vì vậy người ta thường đánh giá

sai số tuyệt đối bởi một số dương a thoả mãn:

aA  a (1.1)

a được gọi là sai số tuyệt đối giới hạn của a Như vậy, nếu a là một sai số

tuyệt đối giới hạn củ a thì một số  a cũng là một sai số tuyệt đối giới hạn Vì

thế cần ước lượng a sao cho nó càng nhỏ càng tốt Từ (1.1) ta có:

a  a Aa  a

hoặc có thể viết là:

Aa   (1.2) a

Trang 12

Do thực tế ta chỉ xét ta sai số tuyệt đối giới hạn, nên khi nói về sai số tuyệt đối giới hạn ta chỉ cần nói gọn là sai số tuyệt đối

Sai số tuyệt đối của số a không cùng thứ nguyên với a Điều đó hạn chế

việc so sánh chất lượng sai số của các đại lượng khác nhau

 Sai số tương đối

Khi tính toán với một số thập phân có quá nhiều chữ số, người ta thường bỏ

bớt đi một số chữ số ở cuối cho gọn Việc đó được gọi là qui tròn số a thành số

a’ Sai số tuyệt đối do qui tròn được gọi là sai số tuyệt đối qui tròn và được kí

Thí dụ 1 Qui tròn số 15,67528 với 4 chữ số lẻ thập phân thành 15,6753; Qui tròn số =3,141592… với 2 chữ số lẻ thập phân thành 3,14

Do đó có thể viết : =3,140,16

 Sai số của số đã qui tròn

Từ các khái niệm về sai số qui tròn ta có:

aA  a và a'  'aa

Do đó

a A

a a a A

Trang 13

Vì vậy ta có thể viết: a'a'a

Bất đẳng thức trên cho thấy rằng  a' a Như vậy việc qui tròn một số làm cho sai số của nó lớn lên Trong một giây MTĐT có thể thực hiện hàng tỷ phép tính số học, kết quả của hầu hết các phép tính đó đều được qui tròn với một

độ chính xác nhất định Do đó sai số của kết quả cuối cùng là sự tích lũy sai số của các phép toán trung gian Chúng ta hãy khảo sát ảnh hưởng của sai số qui tròn đến kết quả cần tính toán qua thí dụ minh họa sau đây:

Thí dụ 2 Để tính giá trị của biểu thức  2 1  10 ta có 2 cách tính:

- Chọn xấp xỉ của 2rồi tính trực tiếp theo công thức:

Trang 14

1.2.2 Chữ số có nghĩa

Một số thập phân được viết ra bởi nhiều chữ số Các chữ số kể từ chữ số

khác 0 đầu tiên tính từ trái qua phải là chữ số có nghĩa

có nghĩa, tương tương với 7 chữ số có nghĩa trong hệ thập phân

Với chuẩn IEEE độ chính xác kép (=2, n=53) thì =2-53=1,1102×10-16 Nghĩa là khi tính toán với số thực dấu phảy động, kết quả có 53 số chữ nhị phân

có nghĩa, tương tương với 16 chữ số có nghĩa trong hệ thập phân

1.2.5 Hiện tượng tràn số

 Hiện tượng tràn số lớn (overflow): xảy ra khi số thu được là quá lớn đối

với giới hạn lưu trữ của hệ số thực dấu phảy động đang sử dụng Khi xảy ra hiện tượng này thông thường các máy tính đều thông báo lỗi (Matlab không thông báo

lỗi mà gán cho số giá trị inf và tiếp tục thực hiện tính toán)

Ngày đăng: 11/07/2014, 09:20

HÌNH ẢNH LIÊN QUAN

Hình 1.1.  Mô hình tính toán khoa học - Giáo trình tính toán khoa học - Chương 1 potx
Hình 1.1. Mô hình tính toán khoa học (Trang 7)
Hình 1.2   Đồ thị hàm số - Giáo trình tính toán khoa học - Chương 1 potx
Hình 1.2 Đồ thị hàm số (Trang 10)

TỪ KHÓA LIÊN QUAN

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