課程資訊
課程名稱
程式與科學計算
Program and Scientific Computing 
開課學期
110-1 
授課對象
理學院  大氣科學系  
授課教師
陳維婷 
課號
AtmSci2010 
課程識別碼
209 26500 
班次
 
學分
2.0 
全/半年
半年 
必/選修
必修 
上課時間
星期一8,9(15:30~17:20) 
上課地點
大氣B105 
備註
外系同學修課需經授課教師同意。欲修課之外校同學,請先與授課老師聯繫。
限本系所學生(含輔系、雙修生)
總人數上限:60人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1101AtmSci2010_ 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

******關於遠距教學的說明(務必詳讀)******

110學年度本課程將採"全遠距"教學,9/23前會將以下資訊寄到所有選課同學的ntu信箱,請務必確認收信: (1) 遠距教學的網址及使用說明、(2) 上機實作需要的帳號密碼,以及主機登入方式

本課程因助教人力與主機資源考量,有修課人數限制,原則上以大氣系學生(含雙主修、輔系、先修)優先選課,有加選需求者,請在9/23之前寄信給授課教師(weitingc@ntu.edu.tw),說明系級與選課動機,教師會考量目前選課人數決定是否給予授權碼(email方式),並提供遠距教學網址。

************************************

大氣科學相關研究經常需要撰寫程式進行模擬與分析繪圖。本課程是針對大氣系同學未來在研究、學習上可能遇到的科學運算及繪圖需求而設計。

選取三種大氣科學常用程式語言及軟體工具(Fortran, GrADS, Python),透過講解、範例與密集上機操作,培養使用工具解決問題的能力、建立清楚的程式架構概念、獲得具體實作的經驗。

以「翻轉教室」方式進行教學,每週都有作業,學期當中還有三次考試。每週除了2小時的課堂講解,請預期還需要用2~5小時練習與完成作業。 

課程目標
1. 熟悉UNIX作業系統的使用
2. Python
學習Python語言,包括科學運算與網格資料處理的相關指令,以及基本繪圖功能。
3. Fortran
介紹Fortran語言及基本程式架構,包括邏輯判斷、迴圈、資料運算讀寫、函式及副程式。
4. GrADS + Fortran
學習用GrADS繪圖軟體處理大氣常用資料格式、運算與繪圖,並且搭配Fotran解決實際科學研究問題。 
課程要求

每週均有預習與作業,另有期中考兩次與期末考一次,都需要「實際上機操作」,登入本系UINX工作站環境執行。

每週作業與預習問題的繳交方式可能略有不同,請務必注意email通知、助教的解釋、或課程網頁公佈欄的說明。

所有作業、預習問題、考試禁止抄襲或複製他人檔案(包括同學及網路資源),除了課程提供的範例、參考資料與翻轉教室的分組作業。如有抄襲,該份作業或考試以零分計算。

程式的撰寫、上機指令操作必須全部由本人完成。作業與預習作業可以口頭討論或參考網路上的資料,上機考試時禁止互相討論與網路傳訊。

上課時只能進行課堂相關之電腦操作,並遵守課堂規範。

***翻轉教室***

翻轉「課堂的運作模式」--傳統上課是「教師在課堂中講授課程內容,之後學生回家做作業」,翻轉教室則以「學生先在家看預先錄好的教學,再到課堂討論或做作業」的方式進行

本學期全數以「翻轉教室」進行,必須先看完影片,上課再發問討論做作業

翻轉週:(前一週五)公布影片、講義-->(上課前)看影片、預習講義-->(週一課堂)交預習作業、發問、討論、分組完成作業-->(週四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)


網頁:

COLA GrADS Online Documentation
http://grads.iges.org/grads/gadoc/index.html 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
課堂參與 
5% 
課堂討論、參與(基本分3%,依各人參與情況調整) 
2. 
期中考I、期中考II、期末考 
30% 
上機考試(各佔10%) 
3. 
課後作業 (1~12) 
52% 
請於上課當週週四下午五點前上傳CEIBA,逾時不予計分  
4. 
(評量方式與百分比可能視教學情況調整) 
0% 
(由以上比例計算得出原始分數後,會依所有修課學生之原始分數分布情形,決定各等第的人數,以接近常態分布為原則。) 
5. 
課前預習 (1~10) 
13% 
第二週起每堂課均有一題預習問題(除期中考週外),上課時繳交(限本人),逾時不收。(每題各佔1.3%) 
 
課程進度
週次
日期
單元主題
第1週
9/27  課程簡介、計算機概論、UNIX系統 
第2週
10/04  Python 基本介紹、變數運算讀寫、邏輯判斷、迴圈 
第3週
10/11  (國慶日補假) Python 陣列List、檔案讀寫File I/O 
第4週
10/18  Python 陣列、檔案讀寫、繪圖 
第5週
10/25  Python 陣列、檔案讀寫、繪圖 、函式 
第6週
11/01  Python 2D繪圖、統整與複習 
第7週
11/08  (期中考 I)GrADS 基本介紹 
第8週
11/15  (校慶停課)GrADS 資料讀寫、運算、繪圖 
第9週
11/22  GrADS 資料讀寫、運算、繪圖 
第10週
11/29  GrADS 運算、繪圖、統整複習 
第11週
12/06  (期中考 II)Fortran 基本介紹、變數宣告運算 
第12週
12/13  Fortran 邏輯判斷、迴圈、陣列、檔案讀寫 
第13週
12/20  Fortran 陣列、檔案讀寫 
第14週
12/27  Fortran 函式、副程式 
第15週
01/03  Fortran搭配GrADS使用、Fortran統整複習 
第16週
01/10  Fortran期末考