Sorry, no English version available
Memo
Home > Memo > MM5修改地形高度

Home

Projects

Memo

Links

Contact







MM5修改地形高度:

  在進行數值實驗時,常常會藉由修改地形高度來檢驗一個天氣系統的變化,大概每一篇颱風模擬的Paper都會出現一個關於地形敏感度實驗的章節XD,以下內容出自我寫給學弟妹的MM5使用手冊:

MM5/TERRAIN的地形製作流程:  

地形敏感度實驗:

   倘若只是想要修改地形高度的話,可以由crter.F這個檔案下手,地形高度的變數名稱在這裡為HT,只要在return前寫個判斷式來修改某經緯度範圍內的HT即可(經緯度變數分別為XLON、XLAT)。以下是一個比較簡單的範例,為了向下相容所以用77的格式撰寫:
! ===========================================================================
! = MM5 Terrain modification,
! = Insert me between "continue" (CRTER.171) and "return" (CRTER.174)
! = by Dennis and Cypresslin - http://cypresslin.web.fc2.com/
! ===========================================================================
      iActivate = 1
      factor = 0.0
! 1 - yes; 0 - no
! multiplier, 0.0 - no terrain; 50.0 - 50% terrain ... etc
      if ( iActivate .eq. 1 ) then
        do j = 1,JX
        do i = 1,IX
          ! Specify the area you want to modify
          if ( XLAT(i,j) .gt.  21.5  .and. XLAT(i,j) .lt.  25.5  .and.
     &         XLON(i,j) .gt. 119.95 .and. XLON(i,j) .lt. 122.02) then
            HT(i,j) = HT(i,j) * factor
          endif
        enddo
        enddo
      endif
(修改過的crter.F也可由此下載
以上程式碼會將一個方塊內的地形剷平,若if判斷式越詳盡,就越能處理不規則形狀的地形。
結果如下(Full terrain vs. No terrain):
Full TerrainNO Terrain

若要把地形整個挖掉變成海(Ocean Run):

  在修改了地形高度之後想修改地表分類的話,到crlwmsk.F裡面修改FORCETER這個陸地-水域遮罩變數將陸地的遮罩移除,讓它的地表分類變成海洋會比較直接,只要在CRLWMSK.175後加入範圍判斷式,將指定範圍內地形設定為水域0.001即可,如下:
! ===========================================================================
! = MM5 Land-Water mask modification,
! = Insert me between "ENDIF" (CRLWMSK.175) and "ENDDO" (CRLWMSK.176)
! = by Cypresslin - http://cypresslin.web.fc2.com/
! ===========================================================================
      iActivate = 1
      if ( iActivate .eq. 1 ) then
          ! Specify the area you want to modify
          if ( XLAT(i,j) .gt.  21.5  .and. XLAT(i,j) .lt.  25.5  .and.
     &         XLON(i,j) .gt. 119.95 .and. XLON(i,j) .lt. 122.02) then
            FORCETER(i,j) = 0.001
          endif
      endif
(修改過的crlwmsk.F也可由此下載
結果如下:
Landuse NormalLanduse Ocean

製作出TERRAIN_DOMAIN#之後,不要忘記先看看他的TER.PLT,或者是用MM5toGrADS之類的轉檔程式把TERRAIN_DOMAIN#轉出來修改後的檢查正確性。

Special thanks to: Dennis (NCU)

<-Memo

inserted by FC2 system