วันอังคารที่ 14 สิงหาคม พ.ศ. 2555

แผนที่น้ำท่วมจาก MIKE11 โดยใช้ DEM และ HelpGrid

ก่อนหน้านี้ได้นำเสนอการสร้างแผนที่น้ำท่วมในแบบจำลอง MIKE11 โดยใช้เพียงข้อมูลหน้าตัดลำน้ำ
ซึ่งก็มีข้อจำกัดบางอย่างเนื่องจากตัวแบบจำลองเองและวิธีการในการสร้างแผนที่น้ำท่วม

ในที่นี้จะได้นำเสอนวิธีการสร้างแผนที่น้ำท่วมอีกแบบในแบบจำลอง MIKE11 เหมือนกัน
ซึ่งต้องการข้อมูลเพิ่มคือ ข้อมูล DEM หรือค่าระดับของพื้นที่น้ำท่วมในพื้นที่ศึกษา
หลังจากมีข้อมูลและแบบจำลอง MIKE11 พร้อมแล้ว ก็ดำเนินการตามขั้นตอนดังนี้

เตรียมข้อมูล HelpGrid โดยจะใช้ DEM ของพื้นที่ศึกษาเป็นต้นแบบ
แล้วทำการแก้ไข HelpGrid ให้เป็นกลุ่มของพื้นที่น้ำท่วม ซึ่งในตัวอย่างนี้ แบ่งได้เป็น 3 กลุ่มดังรูป

(รูป HelpGrid)

แต่ละกลุ่มพื้นที่น้ำท่วม จะมีระหัสเป็นตัวเลขจำนวนเต็ม ในที่นี้ใช้เลข 1, 3 และ 4
ซึ่งระหัสที่ตั้งไว้ใน HelpGrid จะถูกจับคู่กับ Cross-section ID ในไฟล์ *.xns11 ซึ่งเป็นไฟล์ข้อมูลหน้าตัดลำน้ำ

(รูป หน้าตัดลำน้ำ และ ID)

จากนั้นในไฟล์ *.HD11 จะต้องตั้งค่าให้การสร้างแผนที่ใช้ข้อมูลจาก HelpGrid และเลือกใช้ค่าระดับจาก DEM

(รูป การตั้งค่าการสร้างแผนที่ใน *.HD11)

โดยในการใช้ HelpGrid ในการสร้างแผนที่น้ำท่วมนี้ จะเป็นการบอกให้แบบจำลอง นำระดับน้ำ จากหน้าตัดลำน้ำที่เราจับคู่กับระหัสของ HelpGrid มาวาดเป็นแผนที่น้ำท่วมบนพื้นที่ของ HelpGrid ที่ระหัสนั้นๆ

(VDO แผนที่น้ำท่วม ที่ได้จากการใช้ HelpGrid)

วิธีการสร้างแผนที่น้ำท่วมแบบนี้ จะใกล้เคียงกับแผนที่น้ำท่วมจากการใช้ MIKE11GIS ในแบบจำลองของ DHI เวอร์ชั่นที่เก่ากว่าปี 2005 (หลังปี 2005 ทาง DHI ได้ยกเลิกการสร้างแผนที่น้ำท่วมด้วย MIKE11GIS )



(VDO แผนที่น้ำท่วม ที่ได้จากการใช้ MIKE11GIS)


ข้างล่างนี้ อัพเดทเพิ่มเติมเมื่อ 2013-10-10 เพื่อขยายความเรื่องการเตรียมไฟล์ HelpGrid
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

ให้เปิดไฟล์ DEM ของพื้นที่ศึกษาขึ้นมา ดังรูป


จากนั้นให้ Save as ไปเป็นชื่อ HelpGrid (หรือแล้วแต่เราจะตั้งชื่อว่าอะไร)
จากนั้นตรวจสอบค่า Delete value โดยเลือกเมนู Edit/Item


ตัวอย่างนี้จะเห็นค่า Delete Value เป็น -1E-35
จากนั้นใช้เครื่องมือในเมนู Tool ช่วยในการแก้ไขค่า


ในกรณีที่ยังไม่ได้เลือก เซลใดๆ สามารถใช้ Tool/Set Value... แล้วใส่ค่าเท่ากับ -1E-35 ได้เลย
จะทำให้ทุกค่าในตารางถูกลบทิ้งไป

หลังจากนั้น ให้แก้ไขค่าใน Cells ต่างๆเป็นกลุ่มตัวเลขที่จะเชื่อมกับหน้าตัดลำน้ำ
ในตัวอย่างนี้ แบ่งเป็น 3 พื้นที่ ดังนั้นจึงกำหนดตัวเลขเป็น 1, 2, และ 3 เท่านั้น
โดยการเลือกพื้นที่ สามารถใช้เครื่องมือแบบ Area Selection ในการเลือกพื้นที่ได้


เมื่อเลือกพื้นที่แล้ว ส่วนที่ถูกเลือก จะเป็นพื้นที่แรเงา


จากนั้นใช้เมนู Tool/Set Value ใส่ค่าให้กับ Cells ที่เลือกไว้ (รูปด้านล่าง ใช้ Tool/Set Value แล้วใส่ค่า 1)


ทำเช่นนี้กับพื้นที่อื่นๆที่ต้องการเชื่อมกับ Cross-Section จนได้ครบแล้วจะได้ไฟล์ดังรูป


สำหรับตัวช่วยให้การเลือกพื้นที่ ทำงานง่ายขึ้น เราสามารถซ้อนรูปพื้นหลังเข้าไปได้โดย
เมนู Data Overlay/Add / Remove Layers


ก็สามารถซ้อนรูปที่เป็นรูปภาพ หรือไฟล์ SHP เข้ามาเป็นรุปพื้นหลัง เพื่อให้การเลือกพื้นที่ ทำงานได้ง่ายขึ้นได้

นอกจากนี้ ข้อมูลใน ตาราง ข้างต้นทั้งหมด เราสามารถ Copy & Paste ไปมาระหว่าง MIKEZero กับ Excel ได้ ดังนั้น หากถนัดใช้ Excel ในการเตรียมข้อมูล ก็สามารถทำได้เช่นกัน


แผนที่น้ำท่วมจาก MIKE11 โดยใช้เพียงข้อมูลหน้าตัดลำน้ำ

ในส่วนนี้เป็นการนำเสนอการกำหนดให้แบบจำลอง MIKE11 สร้างแผนที่น้ำท่วม
โดยเป็นแผนที่น้ำท่วมแบบที่ใช้เพียงข้อมูลหน้าตัดลำน้ำเท่านั้น
ในการสร้างแผนที่น้ำท่วมรูปแบบนี้ จะเป็นการกำหนดให้แบบจำลอง ใช้ข้อมูลค่าระดับน้ำที่ได้จากการคำนวนร่วมกับระดับท้องน้ำจากหน้าตัดลำน้ำมาทำการสร้างแผนที่น้ำท่วม
ข้อดีของแผนที่น้ำท่วมรูปแบบนี้คือ ไม่ต้องใช้ข้อมูลเพิ่มเติมใดๆนอกจากข้อมูลที่ใช้ใน MIKE11 อยู่แล้ว
และเนื่องจากโดยปกติแล้วข้อมูลหน้าตัดลำน้ำ เป็นข้อมูลที่มีการสำรวจอย่างละเอียด และได้ค่าที่ถูกต้องที่สุดสำหรับระดับท้องน้ำ ดังนั้นแผนที่น้ำท่วมที่ใช้ข้อมูลหน้าตัดลำน้ำจึงจัดว่าเป็นการใช้ข้อมูลค่าระดับท้องน้ำที่มีความแม่นยำสูงในการสร้างแผนที่น้ำท่วมด้วย
อย่างไรก็ตาม ข้อเสียหลักๆคือ แผนที่น้ำท่วมที่ได้จะครอบคลุมได้แค่เท่าที่ความกว้างของหน้าตัดลำน้ำที่ใช้ในแบบจำลอง MIKE11 เท่านั้น จากรูปด้านล่างนี้จะเห็นว่าแผนที่ที่ได้จะจำกัดโดยความกว้างของหน้าตัดลำน้ำ


และข้อจำกัดอื่นๆ ก็เป็นข้อจำกัดที่เกิดจากการใช้แบบจำลองแบบ 1D ในการวิเคราะห์การไหล ซึ่งในกรณีแผนที่น้ำท่วมนั้น มักจะเป็นการไหลแบบ 2D มากกว่า

สำหรับวิธีการตั้งค่าให้แบบจำลอง MIKE11 สร้างแผนที่น้ำท่วมขึ้นมานั้นทำได้โดยการตั้งค่าในไฟล์ *.HD11 โดยในไฟล์นี้จะมีแถบข้อมูลที่ชื่อ map ซึ่งเราสามารถตั้งค่าการจัดเก็บแผนที่น้ำท่วมได้ดังแสดงในรูปประกอบด้านล่างนี้


รูปประกอบของตัวอย่างนี้ เป็นการตั้งค่าให้จัดเก็บแผนที่น้ำท่วมโดยมีจุดมุมล่างซ้ายอยู่ที่ (-2000,-2000) มีขนาดกริด 10 เมตร จำนวนกริดในแนวซ้ายขวา 1300 กริด และในแนวบนล่าง 1100 กริด และเป็นการจัดเก็บเฉพาะค่าระดับน้ำเท่านั้น ไฟล์ network ของตัวอย่างนี้แสดงดังรูปด้านล่างนี้


หลังจากที่สั่งคำนวณเสร็จแล้วจะได้ไฟล์นามสกุล *.dfs2 ที่เป็นไฟล์ผลคำนวณแผนที่น้ำท่วม
ซึ่งสามารถเปิดได้ด้วย MIKEZero, MIKEView และ ArcGIS (ดังที่ได้นำเสนอไปแล้วในบทความก่อนหน้านี้)
ในตัวอย่างนี้เป็นภาพเคลื่อนไหวแสดงผลคำนวณแผนที่น้ำท่วมของตัวอย่างนี้


ทั้งหมดนี้เป็นเพียงรูปแบบหนึ่งในการสร้างแผนที่น้ำท่วมจากโปรแกรม MIKE11 ซึ่งมีข้อจำกัดต่างๆพอสมควร การเลือกใช้รูปแบบนี้จึงต้องทำความเข้าใจข้อจำกัดให้ดี และหากข้อจำกัดที่มีไม่ทำให้ผลคำนวนผิดพลาดไปจากที่ต้องการมากนัก วิธีการนี้ก็เป็นวิธีการที่ง่าย และสะดวกที่สุดในการสร้างแผนที่น้ำท่วม

วันเสาร์ที่ 11 สิงหาคม พ.ศ. 2555

เปิดไฟล์ DFS2 บน ArcGIS


ด้านล่างนี้จะอธิบายถึง Plugin สำหรับติดตั้งบนเครื่องคอมพิวเตอร์ที่มีโปรแกรม ArcGIS ติดตั้งพร้อมใช้งานแล้ว
โดย Plugin ตัวนี้จะทำให้ ArcGIS สามารถอ่านไฟล์นามสกุล *.DFS2 ซึ่งเป็นไฟล์ Grid ที่ใช้งานอยู่ในโปรแกรม MIKE ต่างๆ
โดย DFS2 จะเป็นไฟล์ Grid ชนิดพิเศษที่มีการจัดเก็บ Grid ที่เป็นชั้นข้อมูลต่างๆที่เปลี่ยนแปลงตามเวลาได้
ตัวอย่างของไฟล์ DFS2 ที่มีการใช้งานแพร่หลายแบบหนึ่งคือ แผนที่น้ำท่วมที่ได้จากแบบจำลอง MIKE11 หรือ MIKE21
ก่อนอื่นต้องเตรียมไฟล์ Plugin ที่ตรงกับเวอร์ชั่นของ ArcGIS เสียก่อน โดยตรวจสอบรุ่นต่างๆดังนี้

DHI version <=> ArcGIS version
2005 <=> 9.0SP3 or 9.1 ยังไม่มี DFS2Plugin ให้ใช้งาน แต่ใช้ของ DHI version 2007 แทนได้
2007  <=>  9.1 installer อยู่ในโฟลเดอร์ DFS2 ในแผ่นโปรแกรม
2008  <=>  9.2 installer อยู่ในโฟลเดอร์ DFS2inGIS_Plugin ในแผ่นโปรแกรม
2009  <=>  9.3 installer อยู่ในโฟลเดอร์ MIKE DFS2 Plugin ในแผ่นโปรแกรม
2011  <=>  10.0 installer อยู่ในโฟลเดอร์ MIKE DFS2 Plugin ในแผ่นโปรแกรม
2012  <=>  10.1 installer อยู่ในโฟลเดอร์ MIKE DFS2 Plugin ในแผ่นโปรแกรม
หลังเวอร์ชั่น 2012 เป็นต้นมา DHI ไม่ได้แยกโปรแกรมสำหรับติดตั้ง MIKE DFS2 Plugin ออกมา
ดังนั้น การจะลงโปรแกรมนี้ ให้ลงได้ผ่านโปรแกรม MIKE Urban หรือ MIKE GIS ซึ่งจะเป็นการลงโปรแกรมนี้โดยอัตโนมัติ

โดยที่ Plugin สำหรับติดตั้งบน ArcGIS นั้นเป็นโปรแกรมที่ทาง DHI ไม่คิดค่าลิกขสิทธิ์ในการใช้งาน

ดังนั้นการติดตั้ง Plugin นี้จึงไม่ต้องการ license จากทาง DHI
หลังจากติดตั้งแล้ว โปรแกรม ArcGIS ก็จะสามารถมองเห็นไฟล์ DFS2 และสามารถเปิดไฟล์ชนิดนี้ได้

การเพิ่มไฟล์ DFS2 เข้าไปใน ArcGIS ก็ทำโดยการใช้ปุ่ม
   แล้วเลือกไฟล์ชนิด DFS2 ได้เลย แต่วิธีการนี้จะเปิดได้แค่ Grid ที่ Timestep แรกเท่านั้น

อย่างไรก็ตามเนื่องจากเวอร์ชั่นเก่า จะใช้งานได้ค่อนข้างจำกัด ในที่นี้จะแสดงตัวอย่างการเปิดไฟล์ DFS2 บน ArcGIS10.0

ให้เปิดแสดงแถบเครื่องมือเพิ่มก่อนโดยไปที่เมนู Customize/Toolbars/ แล้วเลือกเปิด TimeSeries Presentation
จะได้แถบเครื่องมือแบบนี้


 ใช้ปุ่มซ้ายสุดในการเลือกเพิ่มข้อมูล DFS2 ที่เป็นผลจากการคำนวณแผนที่น้ำท่วม


เลือกช่วงเวลาที่ต้องการนำเข้าโปรแกรม ArcGIS จากนั้น OK ก็จะได้แผนที่ที่มีชั้นข้อมูลตามเวลาตามที่เราเลือกไว้
เมื่อเปิด DFS2 แล้วตัวแถบเครื่องมือจะมีตัวเลือกให้ใช้งานได้เพิ่มขึ้นดังรูป


นอกจากจะสามารถกดปุ่ม play (รูปสามเหลี่ยม) เพื่อเป็นการสลับรูปทำให้ดูเหมือนเป็นภาพเคลื่อนไหวแล้ว
เรายังสามารถใช้เครื่องมือรูปฟิลม์ทำการบันทึกแผนที่เป็นวีดีโอได้ด้วย ซึ่งการใช้งานก็ไม่ยาก เพียงทำตามขั้นตอนให้ครบ

ก็ขอจบเรื่อง DFS2plugin ไว้แต่เพียงเท่านี้

แปลงไฟล์ชนิด GIS/DEM กับ DFS2

ด้านล่างนี้เป็นวิธีการแปลงไฟล์ระหว่างไฟล์ DEM ที่อยู่ในรูปแบบ GIS ไปเป็น DFS2 ซึ่งเป็นไฟล์ที่ใช้กับแบบจำลอง MIKE (มีใช้ทั้ง MIKE11, MIKE21, MIKE3)


ขั้นแรก ต้องเตรียมไฟล์ DEM ที่ได้มาใน GIS ให้เป็น Ascii ซะก่อน
ไม่ว่าจะได้ไฟล์ DEM แบบไหนมา แต่ไฟล์ที่จะใช้แปลงได้ต้องเป็น Grid เท่านั้นนะครับ
การแปลงไฟล์ Grid เป็น Ascii ถ้าใน ArcGIS9.3 ให้ใช้ converter ใน toolbox ทำการแปลง
เมื่อแปลงแล้ว ปกติจะได้ไฟล์นามสกุล *.txt ให้เปลี่ยนนามสกุลไฟล์นี้เป็น *.asc

เมื่อได้ไฟล์ *.asc แล้วขั้นต่อไปเป็นการแปลงไฟล์ไปเป็น DFS2
ให้เปิดโปรแกรม MIKEZero แล้วเพิ่มไฟล์ใหม่ MIKEZero toolbox
จะได้หน้าต่างโปรแกรมดังรูป



หลังจากนั้นในกลุ่ม GIS จะมีตัวช่วยในการแปลงไฟล์
ถ้าจะแปลงจาก ASC ไปเป็น DFS2 ก็ใช้เครื่องมือ Grd2MIKE
ถ้าจะแปลงจาก DFS2 ไปเป็น ASC เพื่อนำกลับเข้าไปใช้ใน ArcGIS ก็ใช้เครื่องมือ MIKE2Grd
ถ้าจะแปลงจาก DFS2 ไปเป็น SHP (จะได้ point ที่มีค่าระดับ) ก็ใช้เครื่องมือ MIKE2SHP
ขั้นตอนการแปลงไฟล์ เมื่อเลือกเครื่องมือดังกล่าวข้างบน ก็ทำตามขั้นตอนไปทีละหน้าจนถึงหน้าสุดท้าย ให้สั่ง Execute เพื่อทำการแปลงไฟล์ดังรูปด้านล่าง


หลังจากที่แปลงไฟล์เสร็จแล้ว ตัว Setup ที่เราทำขึ้นมาเพื่อการแปลงไฟล์นี้ เราจะจัดเก็บไว้ใช้ภายหลังอีกก็ได้ ก็เพียงทำการ save ไฟล์ setup นี้เก็บไว้ใช้งานต่อไปได้
เท่านี้ เราก็สามารถเตรียมไฟล์รูปแบบ DFS2 ได้ง่ายๆหากมีข้อมูลในรูปแบบ ArcGIS แล้วละครับ

นอกจากนี้ยังมีเรื่องราวเกี่ยวกับการเปิดไฟล์ DFS2 ในโปรแกรม ArcGIS อีกนะครับ ไว้จะเขียนในบทความต่อไปแล้วจะมาเพิ่ม Link ไว้นะครับ

วันศุกร์ที่ 10 สิงหาคม พ.ศ. 2555

เจตนารมณ์ในการจัดทำ Blog นี้

จากการทำงานภายใต้ DHI ในหน้าที่ดูแลลูกค้าที่ใช้งานแบบจำลอง MIKE by DHI ในประเทศไทย


โดยรับผิดชอบดูแลทางเทคนิคการใช้งานต่างๆ และช่วยแก้ปัญหาในการใช้งานแบบจำลอง
ทั้งนี้จากกรณีต่างๆที่ได้แก้ปัญหาไปนั้น จะเป็นประโยชน์ต่อผู้ใช้แบบจำลองท่านอื่น หากพบปัญหาเดียวกัน
ดังนั้น เวบบล๊อกนี้ จึงตั้งใจทำขึ้น โดยจะพยายามรวบรวมกรณีแก้ปัญหาแบบต่างๆ ให้ได้มากที่สุด
โดยเน้นทำเป็นภาษาไทย เพื่อให้ผู้ใช้แบบจำลองที่เป็นคนไทย ได้ประโยชน์มากที่สุด

หวังว่าจะเป็นประโยชน์ต่อชาวไทย ที่จะสามารถใช้งานแบบจำลองที่จัดซื้อมาในราคาแพง ให้ได้ประโยชน์อย่างเต็มที่