2008/02/15

雨量前置處理程式 (1/2)

主要是由 PHP(Hypertext Pre-Processor) 語言撰寫而成,主要的組成有 find.php、config.php和 func.php 這三個檔案,其中主程式為 find.php,func.php 則負責處理主程式需要用到的相關函式,其他可以依據使用者需求調整的參數則放在 config.php 裡。

撰寫與測試環境為 FreeBSDApache、PHP、VimPEAR。主要是看重 PHP 在處理字串很強的特性,外加以娛樂性和溫故知新的方式來撰寫研究用的程式。

使要方式很簡單只需將測站資料(1)雨量資料(2)和兩個檔案共同存放於同一個資料夾,接著執行(3) find.php便可得到需要的雨量資料。

  1. 測站資料:
    檔名格式為 tmi_xxxxx_ok.txt,其中 xxxxx 為測站的編號,例如:tmi_93011_ok.txt。在config.php 中,已經將 11 個測站編號寫入至 array 成為靜態資料,如需異動測站,只要修改該array即可。
  2. 雨量資料:
    檔名格式為 YYMXXXXX.CSV,其中 YY 代表年份,M 代表月份,XXXXX 則表示測站編號,例如 AG593011.CSV表示測站 93011 在 2007 年 5 月的雨量資料、AGC93051.CSV 表示測站 93051 在 2007 年 12 月的雨量資料,以此類推。目前是採取動態讀入的方式,一開輸入的測站資料則為讀入雨量資料的依據。
  3. 執行:
    可由支援 PHP 的 Web Server 來執行,亦可直接安裝 PHP 模組來進行 CLI 方式來執行,目前將修正為支持 Web Server 來運作。

整個程式的流程大至如下:

  1. 讀入測站資料(tmi_xxxx_ok.txt),且進行正規化(A)處理。
  2. 將會使用到的雨量資料做正規化(B)處理。
  3. 依據測站資料,找尋相對應的雨量資料。
  4. 以對應的資料為中心,找出限定範圍的雨量數據(C)
  5. 將資料輸入。

待續 ...

0 Comments: