TÊn môn họC: TÍnh toán khoa họC (Name of Subject: Scientific Computing)



tải về 68.92 Kb.
Chuyển đổi dữ liệu19.05.2018
Kích68.92 Kb.
#38560

Đề cương MH: PĐTSĐH, Mẫu 2012-ĐC

Khoa: Khoa học Ứng dụng

Bộ môn: PTN Vật lý tính toán Đề cương môn học Sau đại học


TÊN MÔN HỌC: TÍNH TOÁN KHOA HỌC

(Name of Subject: Scientific Computing)
Mã số MH:

- Số tín chỉ :

Tc (LT.BT&TH.Tự Học): 3

TCHP:

3

- Số tiết - Tổng:

60

LT:

30

BT:




TH:

15

ĐA:




BTL/TL:

15

- Đánh giá :

Tham dự

Bài tập


Báo cáo dự án theo nhóm

Tiểu luận



50%

Bài tập về nhà và kiểm tra nhanh tại lớp
Làm tiểu luận theo nhóm

Thang điểm 10/10

Thi cuối kỳ:

50%




- Môn tiên quyết :

-

MS:

- Môn học trước :

-

MS:

- Môn song hành :

- Trực quan hoá dữ liệu

MS:

- CTĐT ngành

Mã ngành :



Khoa học tính toán

60460136


- Ghi chú khác :




  1. Mục tiêu của môn học: Sau khi học xong môn học, Học viên cần đạt được những mục tiêu sau

  • Cung cấp những hiểu biết cơ bản về hệ điều hành UNIX/LINUX.

  • Cung cấp các câu lệnh của hệ điều hành.

  • Cung cấp các công cụ lập trình và soạn thảo trên môi trường UNIX/LINUX.

  • Phát triển khả năng lập trình trên môi trường UNIX/LINUX cho sinh viên.

  • Cung cấp cách thức sử dụng các thư viện toán học vào việc lập trình.

  • Cung cấp công cụ và kinh nghiệm làm việc trên các hệ máy chủ từ xa thông qua kết nối Internet.


Aims:

  • Introduce to the principles of the Unix/Linux operating system.

  • Teach the basic command lines of the Unix/Linux operating system.

  • Provide programming tools and editors and shell scripting of UNIX/LINUX.

  • Develop the programming skills in the UNIX/LINUX environment for students.

  • Instruct students with scientific programming using compiled languages and compiled libraries.

  • Provide tools and working experiences on massively parallel supercomputers.

  1. Nội dung tóm tắt môn học:

Môn học cung cấp cho học viên các nguyên lý cơ bản của hệ điều hành LINUX, các thao tác cơ bản và cách thực hiện các tính toán trên hệ điều hành LINUX. Cách thực thi chương trình viết bằng C++, và FORTRAN trên môi trường LINUX. Cách thực hiện tính toán từ xa qua mạng internet, cách sử dụng PUTTY, WINSCP. Cách tạo ra các thư viện số và cách sử dụng các thư viện sẵn có cho tính toán khoa học như BLAS, LAPACK, và GNU Scientific Library (GSL),...
Course outline:

This course introduces students to the tools and principles of scientific computing, including the LINUX operating system, basic command lines, shell scripting, and programming using the compiled languages. This course also instructs students of how to execute programs written in C++, FORTRAN in the LINUX environment. The methods of connection to distance supercomputers by using PUTTY, TERATERM, WINSCP are provided as well. This course teaches the methods and tools to create numerical libraries, and the methods of how to use the built libraries such as BLAS, LAPACK, GNU Scientific Library (GSL), ect., in scientific computations.



  1. Tài liệu tham khảo (tối thiểu 5 giáo trình, sách tham khảo)

    1. Neil Matthew, Richard Stones, Beginning LINUX® Programming, 4th Edition, Wiley Publishing, Inc., Indiana, 2008.

    2. Mark G. Sobell, A Practical Guide to LINUX® Commands, Editors, and Shell Programming, 2nd Edition, Pearson Education, Inc., Boston, 2010.

    3. Mark Galassi, Jim Davies, James Theiler, Brian Gough, Gerard Jungman, Patrick Alken, Michael Booth, Fabrice Rossi, GNU Scientific Library Reference Manual, Edition 1.14, The GSL Team, 2010.

    4. Suely Oliveira, David E. Stewart, Writing Scientific Software: A Good Guide for Good Style, Cambridge University Press, New York, 2006.

    5. 2004, BLAS LAPACK USER’S GUIDE, FUJITSU LIMITED and Lahey Computer Systems, Inc.

  1. Các hiểu biết, các kỹ năng cần đạt được sau khi học môn học

Sau khóa học, các học viên có thể:

  • Hiểu được cấu trúc cơ bản của hệ điều hành LINUX.

  • Sử dụng hệ điều hành LINUX để quan lý dữ liệu, phân tích, và lập trình.

  • Sử dụng các công cụ lập trình khoa học như bộ soạn thảo script và sửa lỗi.

  • Viết chương trình khoa học sử dụng các ngôn ngữ lập trình đã được biên dịch.

  • Sử dụng một cách có hiệu quả hệ siêu máy tính hoạt động trên cơ sở cấp phát tài nguyên để thực hiện các mô phỏng tính toán khoa học.

  • Tự tạo và biết sử dụng thư viện số đã được cài đặt trước đó.

  • Có khả năng tự động hóa quá trình thực hiện mô phỏng trên siêu máy tính.


Learning outcomes:

Upon completion of this course, students should be able to:



  • Understand the structure of filesystem of the LINUX operating system.

  • Use the LINUX operating system for data management, analysis, and programming. 


  • Use scientific programming tools including scriptable editors, debuggers, and revision control systems. 


  • Write scientific programs using the compiled programming languages. 


  • Effectively use queue-based remote supercomputers for running scientific simulations. 


  • Create new numerical libraries and use compiled libraries.

  1. Hướng dẫn cách học - chi tiết cách đánh giá môn học:

  • Tham gia lớp học và làm bài tập đầy đủ. Hoàn thành tiểu luận, thi thực hành trên máy, và thi cuối kỳ. Đánh giá môn học dựa trên điểm Tiểu luận, Thi thực hành trên máy, và Thi cuối kỳ theo hình thức vấn đáp. Trong đó, thi thực hành trên máy và thi cuối kỳ vấn đáp sẽ được tổ chức trong cùng một buổi.

  • Cách đánh giá:

    • Tham dự đầy đủ chương trình:

    • Bài tập về nhà:

    • Báo cáo của nhóm trong chương trình:

    • Tiểu luận: 25%

    • Thi kết thúc môn học: 50%

    • Phần thí nghiệm, thực hành (nếu có): 25%


Learning Strategies & Assessment Scheme:

  • Attend the lectures, do the homework and exercises. Fulfill class projects, practice, and final examination.

  • Grading:

    • Class attendant:

    • Homework:

    • Team project:

    • Class project: 25%

    • Final exam: 50%

    • Experiment, practice (as possible): 25%

  1. Nội dung chi tiết:

Tuần

Chủ đề (chương)

Nội dung

Tài liệu




PHẦN I: LINUX CƠ BẢN








1

Chương 1. Giới thiệu Unix/Linux



    1. Unix và Linux là gì?

1.1.1 Các phiên bản của hệ điều hành Linux

1.1.2 Ý nghĩa của các con số trong ký hiệu phiên bản Linux

1.1.3 Cơ sở chuẩn Linux


    1. Các thành phần trong hệ điều hành Linux

1.2.1 Phần mềm GNU

1.2.2 Soạn thảo file trong Linux

1.2.3 Phát triển phần mềm

1.2.4 Tài liệu trực tuyến

1.3 Hệ thống File trong Linux


[1]

2-4

Chương 2. Làm việc với Linux


2.1 Khởi động Linux

2.2 Làm việc với shell

2.2.1 Khởi động shell

2.2.2 Cú pháp shell

2.2.3 Các lệnh Linux thông dụng

2.2.4 Lập trình với shell

2.3 Tắt hệ điều hành Linux


[1,2]

5-7

PHẦN II: THỰC THI CHƯƠNG TRÌNH FORTRAN, C, C++ TRÊN LINUX



1. Giới thiệu chung

2. Các bộ biên dịch

2.1 Các bộ biên dịch của GNU

2.1.1 gfortran

2.1.2 gcc

2.1.3 g++

2.2 Một số bộ biên dịch khác

2.2.1 Các bộ biên dịch của Intel

2.2.2 G95

2.2.3 Open64

3. Lập trình trên Linux

3.1 Lập trình

3.2 Biên dịch

3.3 Sửa lỗi

3.4 Thực thi chương trình đã lập

4. Lập trình bằng ngôn ngữ Fortran, C, và C++ sử dụng các bộ biên dịch




[1,2]

8

PHẦN III: TÍNH TOÁN T XA QUA MẠNG INTERNET





[4]




Chương 1: PUTTY

    1. Cài đặt và truy cập máy chủ

    2. Làm việc với Putty










Chương 2: WINSCP


2.1 Truy cập máy chủ

2.2 Các thao tác cơ bản khi làm việc với WINSCP










PHẦN IV: CÁC THƯ VIỆN S S DỤNG TRONG TÍNH TOÁN KHOA HỌC








9

Chương 1: Giới thiệu chung


Giới thiệu chung




9-13

Chương 2: Các thư viện s thông dụng


    1. BLAS

2.1.1 Giới thiệu BLAS

2.1.2 Các hàm thủ tục của BLAS

2.1.2.1 Hàm cấp độ 1

2.1.2.2 Hàm cấp độ 2

2.1.2.3 Hàm cấp độ 3

2.1.3 Các qui ước đầu vào, đầu ra, và lưu trữ dữ liệu




    1. LAPACK

2.2.1 Các phép toán có thể giải được trong LAPACK

2.2.2 Cấp độ của các hàm thủ tục

2.2.3 Kiểu dữ liệu và sai số

2.2.4 Cách đặt tên

2.2.5 Các hàm thủ tục của LAPACK

2.2.6 Độ chính xác và sự ổn định của các phép tính

2.2.7 Phương pháp lưu trữ ma trận

2.2.8 ScaLAPACK cho các hệ máy tính song song

2.2.9 LAPACK++ cho ngôn ngữ lập trình C++


    1. GNU Scientific Library (GSL)

2.3.1 Giới thiệu GSL

2.3.2 Cách sử dụng thư viện

2.3.3 Các phép toán và các hàm thủ tục

2.3.4 Làm việc với các ký hiệu

2.3.4.1 Hàm

2.3.4.2 Biến

2.3.4.3 Kiểu biến

2.3.5 Cách đọc và sửa lỗi




    1. Deal.II giải phương trình vi phân riêng phần




[3-5]

14, 15

Chương 3: Làm việc với các thư viện s trong Linux



3.1 Vấn đề bản quyền

3.2 Cài đặt các thư viện số trong Linux

3.3 Thiết lập cấu hình thư viện

3.4 Lập trình sử dụng các thư viện số

3.5 Tự tạo thư viện số

3.6 Xây dựng phần mềm sử dụng tiện ích make của GNU



[1,2,4]



PHẦN GIẢNG DẠY THỰC HÀNH, THÍ NGHIỆM: 15 tiết

TT

Bài TH, TN

Số tiết

Địa điểm

TLTK

1

Tất cả các chương đều có thực hành thí nghiệm. Học viên cần mang theo laptop để kết nối máy chủ. Cài trước các phần mềm Ghostscript, Ghostview, Teraterm, và Winscp trên hệ điều hành Windows. Trên các hệ điều hành khác như Mac OS hoặc Linux thì không cần Teraterm và Winscp nhưng cần đảm bảo có thể đọc được file có đuôi .ps

15

Lớp học






  1. Giảng viên tham gia giảng dạy:




  • TS. Đỗ Ngọc Sơn (ĐH Bách Khoa), chịu trách nhiệm chính

  • TS. Phạm Hồ Mỹ Phương (ĐH Bách Khoa)


Tp.Hồ Chí Minh, ngày 20 tháng 3 năm 2017
Bộ môn quản lý môn học Giảng viên lập đề cương

Đỗ Ngọc Sơn

Tr./

Каталог: filedecuongmh

tải về 68.92 Kb.

Chia sẻ với bạn bè của bạn:




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương