Giới thiệu mô hình tích lũy dòng chảy đơn dòng (single flow), thuật toán D8

Một phần của tài liệu Thực hành Toán rời rạc (Tài liệu phục vụ sinh viên ngành Khoa học dữ liệu) (Trang 122 - 124)

3. Bài toán ứng dụng 2: Bài toán tích lũy dòng chảy – Câu chuyện ngập khi mưa tại đô thị

3.1.Giới thiệu mô hình tích lũy dòng chảy đơn dòng (single flow), thuật toán D8

Các khái niệm cơ bản:

 Hệ thống thoát nước bề mặt:

Bao gồm:

- Các lưu vực (watershed): là mỗi vùng nước chảy độc lập. TP. Hồ Chí Minh phân thành nhiều lưu vực lớn khác nhau như: Tân Hóa – Lò Gốm, Bắc Nhiêu Lộc, Nam Nhiêu Lộc,… Và mỗi lưu vực lớn đó bao gồm nhiều lưu vực nhỏ hơn.

- Các biên giới của lưu vực (watershed boudaries). - Những điểm tiếp nhận nước (pour points).

Giả định quy luật của dòng chảy là: dòng chảy sẽ chảy từ nơi cao sang nơi thấp nhất và không có trường hợp chảy ngược lại từ nơi thấp sang nơi cao.

Thực hành Toán rời rạc Trang 9  Quy trình tính toán:

Để tính toán dòng chảy nước, 2 bước CHÍNH được xử lý:

- Bước 1: Hướng dòng chảy (FLOW DIRECTION): là tính toán hướng di chuyển của dòng (nước) tại mỗi điểm (vị trí địa lý).

- Bước 2: Tích lũy dòng chảy (FLOW ACCUMULATION): là tính giá trị tích lũy tại mỗi điểm.

Lưu ý: Các bước xử lý chuyên ngành sẽ được mô tả trong các bài giảng khác.  Tính toán hướng dòng chảy và tích lũy dòng chảy (với mô hình đơn dòng):

Có nhiều thuật toán tính toán hướng dòng chảy. Ở đây, ta xét mô hình D8, một mô hình về dòng chảy đơn dòng, nghĩa là tại 1 vị trí chỉ có thể chảy đến 1 trong 8 vị trí lân cận có độ dốc thấp nhất. Ví dụ:

Lưu ý:

- Elevation hoặc DEM: là độ cao của địa hình thực tế.

- Flow Direction là hướng dòng chảy được mã hóa theo các mã hướng (direction coding). Tại 1 vị trí sẽ có 8 vị trí ứng cử viên để dòng chảy đến.

Thực hành Toán rời rạc Trang 10 Cụ thể tính toán bảng trên: Từ bảng độ cao (elevation) hay còn gọi là mô hình độ cao số (DEM – digital elevation model), ta sẽ tính toán ra bảng Flow Direction với quy luật: Tìm hướng có độ dốc cao nhất. Ví dụ: ô cuối cùng mang giá trị 12 có 3 ô xung quanh là 16, 19 và 11. Như vậy, độ dốc cao nhất trong trường hợp này là ô 11. Vì chúng ta có các tính toán như sau:

Xét ô 11: độ dốc từ ô 12 đổ về là: = 1, với k là khoảng cách giữa 2 ô (thẳng hàng nhau). Xét ô 16 và 19: chắc chắn không có dòng ngược từ độ cao 12 sang 16 hay ô 19. Để thuyết phục, ta thực hiện tính toán:

√ < 0, giả định k là khoảng cách giữa 2 ô. Ở đây ô 16 chéo nên có √2. Từ đó, chúng ta có thể lập được hướng dòng chảy theo quy định về hướng như bảng mã hướng. Kết quả được như sau:

Từ đây chúng ta có thể xây dựng được cây dòng chảy.

Một phần của tài liệu Thực hành Toán rời rạc (Tài liệu phục vụ sinh viên ngành Khoa học dữ liệu) (Trang 122 - 124)