Mô hình lũ lụt trong GRASS?


8

Tôi đang cố gắng tạo ra một hệ thống mô hình lũ lụt. Hệ thống này bao gồm hai phần chủ yếu là mô phỏng lũ sông và mô phỏng lượng mưa. Để làm điều này, tôi đang chạy phiên bản GRASS 6.4 mới nhất . Ngoài ra, tôi đang sử dụng SRTM thu được từ CGIAR làm DEM của tôi.

Tôi muốn hỏi các lệnh thích hợp nhất để chạy mô phỏng là gì. Ví dụ. Dòng chảy

Ngoài ra, vì chúng ta đang lập mô hình lũ lụt dựa trên một dòng sông, có nên sử dụng HEC-RAS không? Nó được tạo ra bởi cùng những người đã tạo ra GRASS. :)

Tôi là một lập trình viên hơn là một kỹ sư. Đây là liên doanh đầu tiên của tôi vào các hệ thống mô phỏng như là một phần của bằng cấp của tôi.

Cho đến bây giờ Đây là kế hoạch của chúng tôi về lượng mưa (mã giả):

int i = 0, j = 0;
int passes, numberOfmesh;
double rainAmount;
double store1[][];
double store2[][];

numberOfmesh = getTotalMeshCells();
passes = computePasses(numberOfmesh());
rainAmount = getRainAmount();

/* rainAmount corresponds to the input of the user in the textfield.
store1 contains the elevation and the number of times an amount of water
has been passed to it (per pixel)
store2 contains the elevation and the total accumulated water (per pixel)
Both store1 and store2 have 'n' number of rows and 2 columns;
ASSUME THAT THE ARRAY HAS ALREADY BEEN POPULATED */

while(i != passes)
{
    while(j != numberOfmesh)
    {
        direct = getDirection(store[j][0]);
        /* direct corresponds to the direction of a mesh cell;
        I don't know what id the datatype for direct; */       

        store2[j][6] += rainAmount;
        gotoDirection(direct);

    }   
}
computeAccumulated();

//Here is what gotoDirect is supposed to do:

gotoDirect(direct)
{
   /* How can we determine the elevation of the mesh cell to where the
     'direct' points to?
     In the following code, j refers to the elevation of the mesh cell where
     the 'direct' point to.
   */

   store1[j][7] += 1;
   /* increases the number of times that an amount of water
   was passed to it */
}

//Here is what computeAccumulated is supposed to do:

computeAccumulated()
{
    while(j != numberOfmesh)
    {
        store2[j][8] += store1[j][9] * rainAmount;       

    }               
}

Câu trả lời:


3

Tôi không thể nói nhiều về GRASS, nhưng có vẻ như những gì bạn đang cố gắng thực hiện ở đây là phát triển hướng dòng chảy và lưới tích lũy - Tôi khá chắc chắn GRASS đã tích hợp sẵn chức năng đó.

Khi bạn đã phát triển các lưới đó, bạn có thể sử dụng phương trình hồi quy (USGS phát triển các lưới này: http://water.usgs.gov/osw/programs/nss/pub.html#wv ) để tính toán lưu lượng tại một ô cụ thể và sử dụng các luồng đó trong mô hình HEC-RAS. HEC-RAS là tốt cho mô hình lũ lụt, nhưng nó có một số hạn chế - cụ thể là nó khó hiểu và không có bất kỳ tài liệu nào tôi biết về cấu trúc tệp. Nhưng nó miễn phí và được sử dụng rất rộng rãi bởi các kỹ sư dân sự.

Nếu những gì bạn đang muốn làm là tích hợp thủy văn và thủy lực vào một quy trình duy nhất, hãy chuẩn bị để đọc nhiều về động lực học chất lỏng.


+1 rất nhiều đọc. Books.google.com.vn
Kirk Kuykendall 8/211

2

Không rõ mô tả về dự án của bạn cho dù bạn đang cố gắng mô hình hóa việc vượt qua sóng lũ qua lưới dòng chảy 2 chiều (nghĩa là thay đổi vùng ngập lụt như là một chức năng của thời gian khi lũ đi từ thượng nguồn đến ở hạ lưu), hoặc liệu đầu ra của bạn có hiển thị độ cao lũ cao nhất tại bất kỳ điểm nào do một sự kiện lũ lụt gây ra hay không (như những gì được thể hiện trong bản đồ bảo hiểm lũ lụt của Fema).

Phương pháp được đề xuất bởi thwllms (sử dụng các phương trình hồi quy USGS tại mỗi ô) sẽ cung cấp cho bạn luồng PEAK của một khoảng thời gian hoàn trả nhất định (xác suất được cân bằng hoặc vượt quá trong bất kỳ năm nào) tại một vị trí cụ thể trên sông. Chạy HEC-RAS cho dòng sông đang được đề cập sẽ cung cấp cho bạn độ cao mặt nước ở trạng thái ổn định CHO RATNG MỘT HOA tại bất kỳ mặt cắt ngang sông nào. (HEC-RAS chủ yếu là mô hình "mặt nước" một chiều, trạng thái ổn định.) Độ cao mặt nước thu được sau đó được chuyển lên bản đồ topo giấy hoặc DEM để lấy các vùng ngập do mức đó gây ra dòng chảy lũ. Đây là phương pháp được sử dụng theo truyền thống (với một số biến thể) cho các nghiên cứu bảo hiểm lũ lụt của Fema.

Nếu dự án của bạn là mô hình hóa việc vượt qua một đợt lũ theo thời gian, thì các dòng chảy không ở trạng thái ổn định và HEC-RAS có thể không phải là mô hình tốt nhất để sử dụng. Có những mô hình khác được sử dụng bởi USGS, Quân đoàn Kỹ sư và Cục Khai hoang (cùng với các cơ quan kỹ thuật của chính phủ tiểu bang) mô hình các dòng chảy như vậy. Thật không may, tôi không quen thuộc lắm với những mô hình trạng thái không ổn định này.

Khi bạn đã quyết định loại dòng sông nào bạn muốn lập mô hình, sẽ phù hợp để tìm ra mô hình phù hợp để sử dụng. Chúc may mắn!


Dự án của tôi là tạo ra một phần mềm mô hình lũ lụt. Tôi sẽ mô phỏng lũ lụt có thể do dòng chảy của đập. Đó là dòng chảy từ cửa mở của đập (không phải do vỡ đập) được dẫn dọc theo một dòng sông. Đây có được coi là một trạng thái ổn định?
teamAngat

1
Xin lỗi, chỉ cần thấy bình luận của bạn chiều nay. Joseph Jones đã trả lời câu hỏi của bạn về dòng chảy từ một cánh cổng mở và tôi đồng ý với câu trả lời của anh ấy.
Howard Y

2

Phần mưa trở nên phức tạp nhanh nếu bạn muốn thực tế .... Bao nhiêu mưa chìm xuống mặt đất? bay hơi? gây tuyết? Làm thế nào nhanh chóng nó chảy trên mặt đất bão hòa? v.v ... Nếu đây chỉ là một "bài tập", hãy tiếp tục và coi cả thế giới là cụ thể và được thực hiện với nó.

Dòng chảy ra khỏi một cổng, liên tục và dài hạn là trạng thái ổn định cổ điển. HEC-RAS là phù hợp.

Nếu không, bạn sẽ cần phải hợp tác với một kỹ sư để hướng dẫn bạn trong việc áp dụng các phương trình quản lý cho luồng kênh mở ... hoàn toàn tái tạo bánh xe. Trên thực tế, bạn sẽ cần đo độ sâu của kênh trừ khi lưu lượng lớn hơn nhiều so với kênh có thể chứa. SRTM quá thô sơ cho một mô phỏng đáng tin cậy, nhưng một lần nữa, có vẻ như đây là một bài tập về mã hóa .....


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.