課程名稱 |
程式與科學計算 Program and Scientific Computing |
開課學期 |
102-1 |
授課對象 |
理學院 大氣科學系 |
授課教師 |
陳維婷 |
課號 |
AtmSci2010 |
課程識別碼 |
209 26500 |
班次 |
|
學分 |
2 |
全/半年 |
半年 |
必/選修 |
必修 |
上課時間 |
星期一7,8(14:20~16:20) |
上課地點 |
|
備註 |
外系同學修課需經授課教師同意。上課教室:大氣資訊教室。 總人數上限:38人 |
Ceiba 課程網頁 |
http://ceiba.ntu.edu.tw/1021_as_fortran |
課程簡介影片 |
|
核心能力關聯 |
核心能力與課程規劃關聯圖 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
這是一門每週都有作業,學期當中還有三次考試的課程,目的是透過密集上機練習操作,建立運用程式與軟體工具解決科學問題的實際經驗。
每週除了兩小時的課堂講解,請預期還需要額外花2~3小時練習與完成作業。
學期中有6週以「翻轉教室」方式進行教學(解釋如後)
大氣科學相關研究需要大量撰寫電腦程式,以及使用電腦分析繪圖軟體。本課程是針對大氣系同學未來在研究、學習上可能遇到的科學運算及繪圖需求而設計,選取三種大氣科學常用程式語言及軟體工具(Fortran, Matlab, GrADS),透過講解、範例與密集上機操作,培養使用工具解決問題的能力、建立清楚的程式架構概念、獲得具體實作的經驗。 |
課程目標 |
課程將分三大部分進行,每部份的學習目標有:
1. UNIX + Fortran
熟悉UNIX作業系統的使用,介紹Fortran語言及基本程式架構,包括邏輯判斷、迴圈、資料運算讀寫、函式及副程式。
2. Matlab
學習Matlab計算繪圖軟體,包括科學運算與資料處理的相關指令,以及基本繪圖功能。
3. GrADS + Fortran
學習用GrADS繪圖軟體處理大氣常用資料格式、運算與繪圖,並且搭配Fotran解決實際科學研究問題。 |
課程要求 |
每週均有預習與作業,另有期中考兩次與期末考一次,都需要「實際上機操作」,登入本系UINX工作站環境執行。
每週作業與預習問題的繳交方式可能略有不同,請務必注意email通知、助教的解釋、或課程網頁公佈欄的說明。
所有作業、預習問題、考試禁止抄襲或複製他人檔案(包括同學及網路資源),除了課程提供的範例、參考資料與翻轉教室的分組作業。如有抄襲,該份作業或考試以零分計算。
程式的撰寫、上機指令操作必須全部由本人完成。作業與預習作業可以口頭討論或參考網路上的資料,上機考試時禁止互相討論。
上課地點為大氣系電腦室C202,上課時只能進行課堂相關之電腦操作,並遵守電腦教室規範。
***翻轉教室***
翻轉「課堂的運作模式」--傳統上課是「教師在課堂中講授課程內容,之後學生回家做作業」,翻轉教室則以「學生先在家看預先錄好的教學,再到課堂討論或做作業」的方式進行
本學期有6週以「翻轉教室」進行,都在每個單元的最後兩週(即考試前兩週),必須先看完影片,上課再發問討論做作業
正常週:(前一週)公布講義-->(上課前)預習講義-->(週一課堂)交預習作業、聽課-->(週五5pm)繳交作業
翻轉週:(前一週)公布影片、講義-->(上課前)看影片、預習講義-->(週一課堂)交預習作業、發問、討論、分組完成作業-->(週二5pm)繳交作業
|
預期每週課後學習時數 |
|
Office Hours |
另約時間 |
參考書目 |
書籍:
Chivers, I, and J Sleightholme (2012), Introduction to Programming with Fortran,
Springer
[台大圖書館電子藏書] http://link.springer.com/book/10.1007/978-0-85729-233-9/page/1
Chapman, S. (2004), Fortran 90/95 for scientists and engineers, 2nd Ed.,
McGraw-Hill Higher Education
Nyhoff, L. R. and S. C. Leestma (1997), Fortran 90 for Engineers and Scientists,
Prentice Hall (ISBN:0135197295).
彭國倫 (2001), Fortran 95程式設計 (ISBN:9575669592)
Chapman, S. (2008), MATLAB programming for engineers, Thomson.
Gilat, A. (2004), MATLAB: An introduction with Application, 2nd Ed., John Wiley
& Sons.
Trauth, M. H. (2010), MATLAB recipes for earth sciences [electronic resource],
3rd Ed., Springer-Verlag Berlin Heidelberg
[台大圖書館電子藏書] http://dx.doi.org/10.1007/978-3-642-12762-5
Menke, W. and Menke, J. (2012): Environmental Data Analysis With Matlab, Elsevier
[台大圖書館電子藏書] http://www.sciencedirect.com/science/book/9780123918864
網頁:
MATLAB 程式設計與應用,張智星 (Roger Jang)
http://www.cs.nthu.edu.tw/~jang/mlbook/
Matlab Documentation
http://www.mathworks.com/help/techdoc/index.html?/access/helpdesk/help/techdoc/index.html=
Mathtools.net - Matlab
http://www.mathtools.net/MATLAB/index.html
COLA GrADS Online Documentation
http://grads.iges.org/grads/gadoc/index.html |
指定閱讀 |
|
評量方式 (僅供參考) |
No. |
項目 |
百分比 |
說明 |
1. |
(評量方式與百分比可能視教學情況調整) |
0% |
(由以上比例計算得出原始分數後,會依所有修課學生之原始分數分布情形,決定各等第的人數,以接近常態分布為原則。) |
2. |
課前預習 (1~14) |
14% |
第二週起每堂課均有一題預習問題(除期中考週外),上課時繳交(限本人),逾時不收。(每題各佔1%) |
3. |
課後作業 (1~14) |
50% |
請於指定繳交期限前上傳CEIBA,逾時不收
正常週:上課當週週五下午五點前繳交
翻轉週:上課當週週二下午五點前繳交
|
4. |
期中考I、期中考II、期末考 |
30% |
上機考試(各佔10%) |
5. |
課堂參與 |
6% |
課堂出席、討論 |
|
週次 |
日期 |
單元主題 |
第1週 |
09/09 |
課程簡介、計算機概論、UNIX OS |
第2週 |
09/16 |
UNIX OS、Fortran 基本介紹、變數宣告讀寫與運算 |
第3週 |
09/23 |
Fortran 邏輯運算、迴圈、陣列、檔案讀寫 I
|
第4週 |
09/30 |
Fortran 邏輯運算、迴圈、陣列、檔案讀寫 II
|
第5週 |
10/07 |
Fortran 函式; 副程式 I (翻轉教室)
|
第6週 |
10/14 |
Fortran 函式; 副程式 II (翻轉教室)
|
第7週 |
10/21 |
期中考 I (UNIX, Fortran) |
第8週 |
10/28 |
GrADS 基本介紹
|
第9週 |
11/04 |
GrADS 繪圖設定與變數設定
|
第10週 |
11/11 |
GrADS 資料平均、輸入輸出檔案、搭配FORTRAN |
第11週 |
11/18 |
GrADS 資料讀寫、分析、繪圖 I(翻轉教室)
|
第12週 |
11/25 |
GrADS 資料讀寫、分析、繪圖 II(翻轉教室)
|
第13週 |
12/02 |
期中考 II (GrADS, Fortran)
|
第14週 |
12/09 |
Matlab 基本介紹
|
第15週 |
12/16 |
Matlab 矩陣與基本繪圖 I
|
第16週 |
12/23 |
Matlab 矩陣與基本繪圖 II、資料讀寫(翻轉教室)
|
第17週 |
12/30 |
Matlab 自訂函數、數學工具 (翻轉教室) |
第18週 |
2014/01/06 |
期末考(Matlab only) |
|