Giới thiệu ngôn ngữ lập trình Fortran 90 - La Văn Hiển, dành cho sinh viên Khoa học kỹ thuật

Giới thiệu ngôn ngữ lập trình Fortran 90, các tính năng cập nhật và ứng dụng thực tế trong tính toán khoa học. Tài liệu hướng dẫn từ cơ bản đến nâng cao.

Chuyên ngành

Ngôn ngữ lập trình

Người đăng

Ẩn danh

Thể loại

Tài liệu

2019

181
0
0

Phí lưu trữ

45 Point

Tóm tắt

I. Tổng quan về ngôn ngữ lập trình Fortran 90

Fortran 90 là phiên bản quan trọng đánh dấu bước phát triển vượt bậc của ngôn ngữ lập trình Fortran. Ra đời sau FORTRAN 77, Fortran 90引入了许多新特性,显著提升了编程灵活性和效率。Fortran có lịch sử phát triển lâu đời qua nhiều thế hệ máy tính,至今仍是在数值计算领域的优势语言。欧美各国广泛使用Fortran trong các lĩnh vực khoa học kỹ thuật và khoa học tự nhiên. Fortran 90 cho phép viết chương trình theo kiểu định dạng tự do, khác với định dạng cố định theo cột của các phiên bản trước. Ngôn ngữ này hỗ trợ xử lý mảng mạnh mẽ, cấu trúc điều khiển hiện đại, cấp phát động bộ nhớ và chương trình con tiên tiến. Tài liệu học tập về Fortran 90 thường hướng đến sinh viên khối khoa học kỹ thuật, giúp nắm vững phương pháp viết và chạy chương trình tính toán. Từ kiến thức Fortran 90, người học dễ dàng tiếp cận các phiên bản mới hơn như Fortran 95, Fortran 2003, Fortran 2008.

1.1. Lịch sử phát triển của Fortran qua các phiên bản

Fortran là viết tắt của FORmula TRANslation, ngôn ngữ lập trình lâu đời nhất vẫn còn được sử dụng rộng rãi. Ngôn ngữ này trải qua nhiều phiên bản từ FORTRAN I năm 1957, FORTRAN II, FORTRAN IV, FORTRAN 66, FORTRAN 77 đến Fortran 90. Mỗi phiên bản mang đến cải tiến đáng kể về cú pháp và tính năng. FORTRAN 77 sử dụng định dạng cố định theo cột,限制了代码的可读性和灵活性. Fortran 90 đánh dấu bước ngoặt quan trọng khi引入 định dạng tự do, xử lý mảng toàn diện và cấp phát động. Các phiên bản tiếp theo như Fortran 95, 2003, 2008 kế thừa và phát triển nền tảng từ Fortran 90.

1.2. Vai trò của Fortran 90 trong lĩnh vực tính toán khoa học

Fortran 90 giữ vị trí then chốt trong tính toán khoa học và kỹ thuật. Ngôn ngữ này được thiết kế tối ưu cho xử lý số học, tính toán ma trận và mô phỏng vật lý. Các viện nghiên cứu, trường đại học tại Âu-Mỹ sử dụng Fortran 90 rộng rãi trong giảng dạy và nghiên cứu. Thư viện tính toán nổi tiếng như LINPACK, LAPACK đều viết bằng Fortran. Fortran 90 hỗ trợ xử lý mảng đa chiều mạnh mẽ, phù hợp giải bài toán vật lý, kỹ thuật phức tạp. Khả năng tương thích ngược với FORTRAN 77 giúp bảo toàn nguồn tài nguyên lập trình tích lũy qua nhiều thập kỷ.

II. Phân tích các tính năng mới và vấn đề trong Fortran 90

Fortran 90引入了许多突破性新特性,显著区别于前代版本. Định dạng tự do cho phép程序员自由安排代码布局, không bị giới hạn theo cột như FORTRAN 77. Xử lý mảng được nâng cấp toàn diện với phép toán mảng nguyên khối, hàm mảng tích hợp và mảng có thể thay đổi kích thước. Cấp phát động bộ nhớ giúp quản lý tài nguyên linh hoạt hơn. Cấu trúc dữ liệu kiểu derived type tạo khả năng tổ chức dữ liệu phức tạp. Module là đơn vị tổ chức chương trình mới, hỗ trợ đóng gói và tái sử dụng code. Tuy nhiên, việc chuyển đổi từ FORTRAN 77 sang Fortran 90 đòi hỏi học tập cú pháp mới. Một số trình biên dịch cũ không hỗ trợ đầy đủ tính năng Fortran 90. Quản lý bộ nhớ động cần cẩn thận tránh lỗi tràn bộ nhớ hoặc rò rỉ tài nguyên. Việc调试 các chương trình Fortran 90 phức tạp cũng đòi hỏi công cụ chuyên dụng.

2.1. Định dạng tự do và các cải tiến cú pháp

Định dạng tự do là thay đổi quan trọng nhất của Fortran 90 so với FORTRAN 77. Trong định dạng cố định, cột 1 dành cho ký hiệu, cột 2-5 cho nhãn, cột 6 đánh dấu dòng tiếp, cột 7-72 cho code. Fortran 90 loại bỏ hoàn toàn限制 này,允许程序员自由安排代码. Dấu ! dùng để注释, dòng tiếp nối用 & ở cuối và đầu dòng tiếp. Tên biến có thể dài đến 31 ký tự, cho phép đặt tên có ý nghĩa. Khai báo biến có thể đặt bất kỳ đâu trước khi sử dụng. Các cải tiến cú pháp này大幅提升代码的可读性和可维护性.

2.2. Xử lý mảng và cấp phát động trong Fortran 90

Fortran 90引入强大的数组处理能力, vượt xa các phiên bản trước. Phép toán mảng nguyên khối cho phép cộng, trừ, nhân, chia toàn bộ mảng mà không cần vòng lặp. Hàm mảng tích hợp như SUM, PRODUCT, MAXVAL, MINVAL简化了许多常见操作. Mảng có thể có hình dạng và kích thước thay đổi thời gian chạy. Cấp phát động使用ALLOCATE和DEALLOCATE语句管理内存. Kiểm tra mảng được分配 với hàm ALLOCATED. Đặc tính này rất hữu ích khi处理数据规模事先不确定的科学计算问题. Xử lý mảng toàn diện giúp代码简洁,减少错误,提高计算效率.

III. Phương pháp học tập và thực hành lập trình Fortran 90

Học tập Fortran 90 đòi hỏi phương pháp có hệ thống, kết hợp lý thuyết và thực hành. Bắt đầu với安装 trình biên dịch miễn phí như GFortran thuộc GNU Compiler Collection hoặc G95. Môi trường phát triển tích hợp Force 2.0提供轻量级IDE để viết, biên dịch và chạy thử chương trình. Học cú pháp cơ bản包括 khai báo biến, cấu trúc điều khiển, vòng lặp và hàm. Thực hành với các bài toán tính toán đơn giản trước, tăng dần độ phức tạp. Sử dụng hàm selected_real_kind để kiểm soát độ chính xác số thực. Kết hợp phần mềm GNUPLOT绘制计算结果图表, trực quan hóa dữ liệu. Đọc hiểu chương trình mẫu từ tài liệu và sách tham khảo. Tham gia cộng đồng lập trình Fortran trực tuyến để trao đổi kinh nghiệm. Thực hành thường xuyên là chìa khóa掌握任何编程语言的根本方法.

3.1. Thiết lập môi trường phát triển Fortran 90

Thiết lập môi trường phát triển là bước đầu tiên quan trọng. GFortran là trình biên dịch Fortran miễn phí phổ biến nhất,属于GNU Compiler Collection. Cài đặt GFortran trên Windows thông qua MinGW hoặc trên Linux thông qua package manager. Force 2.0 là IDE轻量级, cung cấp giao diện图形 để viết code, biên dịch và调试. G95 là trình biên dịch Fortran 90/95 miễn phí khác, tương thích tốt với chuẩn Fortran 90. Silverfrost FTN95 Personal Edition提供另一选择 cho người dùng Windows. Cấu hình biến môi trường PATH để sử dụng trình biên dịch từ命令行. Thiết lập project trong IDE,编写简单的Hello World程序 để验证环境 hoạt động正确.

3.2. Kỹ thuật调试 và tối ưu chương trình Fortran 90

Debugging là kỹ năng cần thiết khi lập trình Fortran 90. Sử dụng biên dịch với tùy chọn cảnh báo如 -Wall -Wextra để phát hiện lỗi tiềm ẩn. Khai báo IMPLICIT NONE强制显式声明所有变量,避免拼写错误导致的bug. Kiểm tra lỗi运行时 với tùy chọn -fcheck=all của GFortran. Sử dụng print statement để追踪程序执行流程 và giá trị biến. Tối ưu hóa hiệu suất bằng tùy chọn biên dịch如 -O2 hoặc -O3. Profile chương trình với gprof để xác định điểm nghẽn hiệu suất. Sử dụng hàm tiny() và huge() để了解数据类型的数值范围. Kiểm tra biên mảng cẩn thận để tránh truy cập ngoài vùng nhớ allocated.

IV. Kết luận và ứng dụng thực tiễn của Fortran 90

Fortran 90 đại diện cho bước tiến quan trọng trong lịch sử phát triển ngôn ngữ lập trình khoa học. Các tính năng mới như định dạng tự do, xử lý mảng toàn diện, cấp phát động đã tạo nền tảng cho các phiên bản hiện đại. Ngôn ngữ này vẫn giữ vị trí不可替代 trong tính toán số高性能. Các lĩnh vực ứng dụng包括 dự báo thời tiết, mô phỏng vật lý, phân tích kết cấu, tính toán tài chính. Thư viện tính toán khoa học hàng đầu vẫn viết bằng Fortran, đảm bảo tương thích và hiệu suất. Sinh viên掌握 Fortran 90 có lợi thế khi tiếp cận tài liệu nghiên cứu quốc tế. Từ Fortran 90, việc nâng cấp lên Fortran 95, 2003, 2008 trở nên dễ dàng. Kết hợp Fortran 90 với GNUPLOT tạo công cụ mạnh mẽ cho phân tích dữ liệu khoa học. Kiến thức Fortran 90 là đầu tư有价值 cho sự nghiệp trong lĩnh vực khoa học kỹ thuật.

4.1. Các ứng dụng thực tiễn của Fortran 90 trong khoa học

Fortran 90 được ứng dụng rộng rãi trong nhiều lĩnh vực khoa học kỹ thuật. Dự báo thời tiết số sử dụng Fortran tính toán mô hình大气动力学 với hàng triệu biến. Ngành hàng không vũ trụ dùng Fortran模拟流体力学 và phân tích khí động học. Vật lý tính toán依赖 Fortran giải phương trình vi phân phức tạp trong量子力学. Kỹ thuật dầu khí sử dụng Fortran处理地震数据 và mô phỏng储层. Tài chính định量应用 Fortran cho tính toán rủi ro và pricing phái sinh. Thư viện BLAS, LAPACK viết bằng Fortran là基石 của几乎所有科学计算软件. Fortran 90 đặc biệt优势 trong处理大规模数组 và phép toán ma trận密集型.

4.2. Hướng phát triển và tương lai của Fortran

Fortran tiếp tục phát triển qua các phiên bản mới như Fortran 2003, 2008, 2018 và 2023. Fortran 2003引入面向对象编程, interoperability với C và exception handling. Fortran 2008 thêm hỗ trợ lập trình song song với coarrays. Fortran 2018强化了并行计算能力和与其他语言的互操作性. Cộng đồng Fortran vẫn活跃 với nhiều dự án mã nguồn mở. Fortran tích hợp tốt với Python, C, C++ thông qua接口. Các siêu计算机 hàng đầu thế giới sử dụng Fortran cho workload tính toán chính. Tương lai Fortran nằm trong计算科学高性能,人工智能辅助编程 và hybrid programming. Học Fortran 90 là nền tảng vững chắc để适应这些发展趋势.

21/04/2026

Trích đoạn nội dung tài liệu

LA VĂN HIỂN GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH Fortran 90 Tài liệu lập trình căn bản dành cho sinh viên :  Khối khoa học kỹ thuật .  Khối khoa học tự nhiên . Tà i liệ u được trình bà y dưới hình thức tự họ c . Bao gò m cá c nọ i dung cơ bả n nhá t củ a Fortran 90 . Thực hà nh lạ p trình ở cuó i mõ i chương . Kết hợp phần mềm GNUPLOT để vễ đò thị . 12/2019 LỜI NÓI ĐẦU Tài liệu “ Giới thiệu NGÔN NGỮ LẬP TRÌNH Fortran 90 “ được biên soạn nhằm giúp các bạn sinh viên các khối, ngành khoa học kỹ thuật, khoa học tự nhiên quan tâm đến ngôn ngữ Fortran nắm được phương pháp căn bản để viết văn bản chương trình và chạy các chương trình tính toán bằng Fortran 90, phục vụ yêu cầu học tập , thực hiện các bài tập lớn ,luận văn tốt nghiệp. Fortran có lịch sử phát triển lâu đời qua nhiều thế hệ máy tính với các phiên bản khác nhau , đến nay vẫn là ngôn ngữ có nhiều ưu thế trong lĩnh vực tính toán số . Fortran được xem là ngôn ngữ lập trình rất phố biến đối với các sinh viên, kỹ sư, khoa học gia thuộc các lĩnh vực khoa học , kỹ thuật tại các nước Âu – Mỹ. Việc học tập Fortran còn giúp các bạn sinh viên có điều kiện học tập ở nước ngoài , đọc hiểu các chương trình viết bằng ngôn ngữ Fortran được trình bày trong các sách , tài liệu , bài báo nước ngoài . Hai phiên bản Fortran được sử dụng phổ biến nhất hiện nay là FORTRAN 77 và Fortran 90 , trong đó phiên bản Fortran 90 được xem là một phiên bản quan trọng trong lịch sử phát triển Fortran . Fortran 90 có rất nhiều điểm mới so với các phiên bản trước như văn bản chương trình được phép viết theo kiểu “ định dạng tự do “ ( free format ) khác với kiểu “ định dạng cố định theo cột “ ( fixed format ) , các cấu trúc điều khiển , xử lý mảng , xử lý vào / ra , chương trình con , cấp phát động …tạo nhiều thuận lợi hơn cho người lập trình .Từ kiến thức Fortran 90 , các bạn có thể dễ dàng tiếp cận các phiên bản tiếp theo như Fortran 95 , Fortran 2003, Fortran 2008 . Tài liệu này sử dụng các trình biên dịch miễn phí như G77/GFortran của GNU Compiler Collection (GCC) và G95 thông qua phần mềm Force 2.0 là một môi trường phát triển tích hợp ( IDE ) gọn nhẹ dùng để viết văn bản chương trình , tiến hành biên dịch , liên kết và chạy thử chương trình . Tài liệu cũng giới thiệu thêm trình biên dịch Fortran g95 và Silverfrost FTN95 Personal Edition để bạn đọc tham khảo , chạy kiểm chứng chương trình . Phần phụ lục giới thiệu tổng quát phần mềm GNUPLOT dùng để vẽ các đồ thị 2D, 3D lấy dữ liệu từ kết quả tính toán của Fortran và một chương trình mẫu trong bộ LINPACK dùng để giải hệ phương trình tuyến tính là các ví dụ về các tiện ích miễn phí từ các tổ chức phát triển Fortran cung cấp cho người sử dụng . Các bạn sinh viên cần tham khảo , sử dụng các chương trình tiện ích rất phong phú đã được lập trình sẵn từ các thư viện Fortran trên Internet , phục vụ cho việc học tập, nghiên cứu . Mặc dù đã cố gắng rà soát kỹ các nội dung trong tài liệu cũng như chạy kiểm tra các chương trình ví dụ nhưng khó tránh khỏi có những sai sót hoặc những điểm trình bày chưa phù hợp . Tác giả rất mong và xin cám ơn sự đóng góp của các bạn đọc , các bạn sinh viên gần xa để tài liệu ngày càng hoàn thiện hơn . Tháng 12 năm 2019 La Văn Hiển Email : hienbk58@yahoo.com 1 CHƯƠNG 1 : GIỚI THIỆU CHUNG VỀ NGÔN NGỮ LẬP TRÌNH FORTRAN 1.1 Sơ lược về lịch sử ngôn ngữ lập trình Fortran . Fortran ( hay FORTRAN ) được viết tắt từ cụm từ Mathematical FORmula TRANslating System ( hệ thống dịch công thức toán học ) , là ngôn ngữ lập trình cấp cao đầu tiên , kiểu biên dịch ( compiler ) , do John Backus ( 1924 – 2007 ) cùng một nhóm kỹ sư điện toán thuộc tập đoàn công nghiệp máy tính IBM ( International Business Machines ) thiết kế và phát triển từ giữa những năm 50 của thế kỷ XX . Ban đầu tên ngôn ngữ được viết là FORTRAN , nhưng xu hướng hiện nay được viết chuẩn hóa thành Fortran ( chỉ viết hoa kí tự đầu ) .2 Phạm vi ứng dụng . Ngôn ngữ lập trình Fortran hiện nay có đầy đủ tính năng của một ngôn ngữ lập trình cấp cao hiện đại, hỗ trợ nhiều kiểu lập trình , có khả năng ứng dụng trên nhiều lĩnh vực khác nhau , tuy nhiên Fortran thích hợp hơn cho các ứng dụng tính toán số trong lĩnh vực khoa học kỹ thuật , khoa học tự nhiên và được xem là ngôn ngữ lập trình rất phổ biến đối với các sinh viên, kỹ sư, khoa học gia thuộc các lĩnh vực nêu trên tại các nước Âu Mỹ .3 Các phiên bản của ngôn ngữ Fortran . FORTRAN (1957) , FORTRAN II ( 1958) , FORTRAN III (1958) , FORTRAN IV (1961) , FORTRAN 66 (1966) được xem là các phiên bản cũ , lỗi thời . Các phiên bản được sử dụng phổ biến hiện nay là FORTRAN 77 , Fortran 90 và Fortran 95 . Phiên bản Fortran 90 , được xem là cột mốc quan trọng trong lịch sử phát triển ngôn ngữ Fortran , có rất nhiều điểm mới so với FORTRAN 77 như văn bản chương trình hay tập tin nguồn ( source code ) được phép viết theo kiểu “ định dạng tự do “ ( free format ) , khác với kiểu “ định dạng cố định theo cột “ ( fixed format ) của các phiên bản trước ; các cấu trúc điều khiển , xử lý mảng , xử lý vào/ra , cấp phát động , chương trình con , đơn vị chương trình module tạo nhiều thuận lợi hơn cho người lập trình . Phiên bản Fortran 95 bổ sung một số ít các nội dung mới vào Fortran 90 và bỏ đi một vài điểm lỗi thời vẫn còn giữ trong Fortran 90 . Hai phiên bản sau cùng là Fortran 2003 ( hỗ trợ lập trình hướng đối tượng ) và Fortran 2008. Một số công ty, tổ chức phát triển ngôn ngữ Fortran đã cho ra đời nhiều biến thể khác nhau từ Fortran chuẩn ( Standard Fortran ) bằng cách thêm vào một số chức năng mở rộng . Các phiên bản Fortran chuẩn được ANSI ( American National Standards Institute - Viện tiêu chuẩn quốc gia Hoa Kỳ ) và ISO ( International Organization for Standardization - Tổ chức quốc tế về tiêu chuẩn hóa ) xem xét và công bố . Chương trình viết bằng Fortran chuẩn đảm bảo tính khả chuyển ( portable ) , chạy ổn định trên các hệ máy tính khác nhau có cài đặt trình biên dịch Fortran . Phần trình bày trong tài liệu này sẽ tập trung vào phiên bản Fortran 90 và sử dụng các trình biên dịch Fortran trên nền hệ điều hành Windows . Phần thực hành minh họa các chương trình Fortran 90 , chúng ta sử dụng phần mềm miễn phí Force 2.9p , được download tại trang web : http://force.html Tên tập tin download : Force209G95Setup.exe , kích thước 3,55 MB . Phần mềm Force là một môi trường phát triển tích hợp IDE ( Integrated Development Environment ) gọn nhẹ , có chức năng biên dịch và chạy các chương trình viết bằng FORTRAN 77 hoặc Fortran 90 . Force sử dụng trình biên dịch miễn phí G77/GFortran của GNU Compiler Collection (GCC) và G95. Khi cài đặt xong , chúng ta mở file Force2.exe , sẽ thấy hiển thị cửa sổ môi trường phát triển tích hợp IDE của Force 2. Trong môi trường này , chúng ta sẽ soạn tập tin nguồn ( văn bản chương trình dạng text ) , tiến hành biên dịch , liên kết ( lệnh compile ) và nếu không có lỗi sẽ tiến hành chạy thử ( lệnh run ) chương trình . 2 Ngoài ra , chúng ta có thể chọn các trình biên dịch Fortran khác như sau để chạy kiểm tra cùng một chương trình nguồn :  Sử dụng môi trường IDE của SilverFrost qua chương trình FTN90 Personal Edition ( chương trình miễn phí phục vụ học tập , chạy test ) với file có tên ftn95_personal.exe ( kích thước 70, 996 MB ) , được download tại trang web : https://www.com/32/ftn95/ftn95_personal_edition.aspx Khi download về máy tính xong , chúng ta chạy file ftn95_personal.exe để cài đặt chương trình vào một thư mục tùy chọn , ví dụ D :\FTN95 . Sau đó chúng ta chạy file plato.exe để mở môi trường IDE Plato . Từ đây , có thể soạn thảo , biên dịch , liên kết và chạy các chương trình Fortran .  Để có thể biên dịch trực tiếp tại cửa sổ Command Prompt của Windows , chúng ta có thể vào trang web The Fortran Company có địa chỉ như sau để download về trình biên dịch g95 qua một file cài đặt có tên g95-Mingw_201210.exe ( 5381 KB ) : http://www.com/the-fortran-company-homepage/whats-new/g95-windows- download/ Phần hướng dẫn sơ lược sử dụng các trình biên dịch này sẽ được trình bày ở cuối chương.2 Bộ kí tự của Fortran . Văn bản chương trình Fortran ( source code , source file ) .1 Bộ kí tự của Fortran . Bộ kí tự của Fortran bao gồm : a) Chữ viết thường : từ a đến z ; ( 26 chữ cái tiếng Anh ) b) Chữ viết hoa : từ A đến Z ; c) Chữ số : 0 đến 9 ; ( 10 chữ số ) d) Kí tự nối chân : _ ; ( underscore ) e) Các kí tự khác : = + - * /( ) < > ,. Các đơn vị văn bản chương trình như từ khóa ( keyword ) , tên biến , tên hằng , tên chương trình con , xâu kí tự , biểu tượng …sử dụng các kí tự trong bộ kí tự Fortran . Kí hiệu các phép toán số học cộng, trừ, nhân, chia được viết : + - * / ; riêng phép lũy thừa sử dụng hai dấu * liên tiếp ( ví dụ : 2**3 = 23 = 8 ) .2 Soạn thảo văn bản chương trình ( tập tin nguồn dạng *.f90 ) Để soạn một văn bản chương trình Fortran 90 , có thể dùng trình soạn thảo Notepad hoặc soạn thảo ngay trong môi trường Force . Tập tin nguồn phải được lưu ( save as ) dưới dạng có phần đuôi là *.f90 , để trình biên dịch có thể nhận dạng được loại tập tin và phiên bản Fortran phù hợp ( Tập tin văn bản soạn theo định dạng cố định có phần đuôi là *.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ