當前位置:首頁 » 編程語言 » 三層蒸發模型c語言代碼
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

三層蒸發模型c語言代碼

發布時間: 2022-09-11 08:42:01

⑴  源匯項數據整理

一、計算網格的剖分

根據模塊化三維有限差分地下水流動模型計算軟體的特點,為了更好描述在表高程、水頭邊界、匯源項,在平面上將計算區按每個單元均是邊長為800m的正方形進行剖分,共剖分成154 048個單元(圖4-6),其中有效計算單元61 588個,總面積為39 416.32km2。其中,一類邊界(河流)單元格數2 581個,所佔1 651.84km2;三類邊界(沼澤濕地)單元格數5 145個,所佔面積3 292.80km2(見表4-1)。

表4-1 工作區行政分區計算面積統計表

續表

圖4-2 三江平原第一層含水層參數分區圖

圖4-3 三江平原第二層含水層參數分區圖

圖4-4 三江平原第三層含水層參數分區圖

圖4-5 三江平原第四層含水層參數分區圖

圖4-6 三江平源計算區剖分圖

二、垂向補排量

在模型中,垂向補排量由下式確定:

三江平原地下水資源潛力與生態環境地質調查評價

式中:P為地下水垂向補排強度,m3/d;q邊為二類邊界補給強度,m3/d;q降水為降水入滲補給強度,m3/d;q回歸為渠灌水田回歸入滲補給強度,m3/d;q開采為地下水開采強度,m3/d。

(一)二類邊界補給強度

二類邊界系指平原與山地接壤地段地下水自山地地區向平原區徑流的側向補給量。因此類邊界上地下水動態監測資料較少,將其概化為垂向補給強度,即山地周邊計算單元格的垂向補給強度中含二類邊界補給強度。同時,根據二類邊界含水層特徵,將二類邊界概化為河谷與山地兩類,其補給強度為常量,並取區域徑流補給強度,山區河流出山口地段河谷區地下水徑流補給強度為0.03m/d;山地區地下水徑流補給強度為0.006m/d。計算時,根據山地周邊計算單元格的類型確定其二類邊界補給強度,加入至該計算單元格中。

(二)降水入滲補給強度

因工作區內存在季節性凍土,每年的11月初至翌年的4月末地表凍結,此時的降水不能補給地下水,從而確定每年的5~8月降水量為入滲補給地下的有效降水量。選擇與地下水動態觀測資料同步的工作區及相鄰地區氣象站和雨量站有效降水資料,繪制逐月的降水量等值線圖,進而確定各單元格的有效降水量。

降水入滲補給強度按下式計算:

三江平原地下水資源潛力與生態環境地質調查評價

式中:P為月平均降水量,m/d;α為降水入滲系數。

降水入滲系數的大小,主要取決於表層土岩性特徵,根據表層土岩性的不同,將降水入滲系數劃分為好、較好、較差、差4個區(見圖4-7)。具體由計算模型識別確定。

(三)渠灌水田回歸入滲補給強度

渠灌水田回歸入滲補給強度按下式確定:

三江平原地下水資源潛力與生態環境地質調查評價

式中:q渠灌為渠灌用水量強度,m3/d;α回歸為灌溉水回歸系數。

1.渠灌用水強度

根據《黑龍江省行業用水定額(試行)》中水稻節水灌溉定額(P=75%),結合工作區表層土岩性,確定不同地段灌溉水回歸系數與渠灌用水強度如表4-2。回歸系數分區見圖4-8。圖中的水田分布系根據「衛片解釋」成果及地面調查、收集水利資料等確定。

表4-2 渠灌用水強度表

按公式(4-9)及計算區渠灌水田面積確定的2001年全區渠灌水田回歸量為60 373.74×104 m3/a。各行政區計算成果見表4-3 。

圖4-7 三江平原表層土岩分區圖

圖4-8 三江平原水田回歸系數分區圖

表4-3 渠灌水田回歸量計算統計表

續表

續表

2.用水分配

根據《農業技術經濟手冊》,結合工作區氣象條件,確定不同時間水田灌溉用水強度如表4-4,以此確定計算期內各時段(5~8月)灌溉水回歸補給強度。

表4-4 渠灌水田灌溉用水強度逐月分配表 單位:m·a-1

(四)地下水開采強度

計算區內地下水開采強度依據本次調查資料(表4-5)。其中井灌水田開采量根據實際調查面積和表4-2中凈灌定額確定,渠系水利用系數取0.95,而井灌水田回歸量與地下水開采量間為重復利用關系,故井灌水田開采強度按凈灌定額除以渠系水利用系數確定。

表4-5 年均地下水開采現狀調查統計表

續表

井灌水田開采地下水強度的逐月分配見表4-6。而工業及生活用水開采地下水平均分配至計算期各時段上。

表4-6 井灌水田灌溉用水強度逐月分配表 單位:m3·a-1

2001年5月~2002年4月計各行政區地下水開采強度見表4-7。

表4-7 2001年5月至2002年4月開采強度分區統計表

續表

續表

三、地下水蒸發

模型中地下水蒸發量按下式確定:

三江平原地下水資源潛力與生態環境地質調查評價

式中:QE為地下水蒸發強度,m/d;Q0為地下水最大蒸發強度,m/d,即地下水位臨界地表時的蒸發強度,取氣象觀測資料中的水面蒸發強度;h為地下水位高程,m;hE為地下水蒸發達到最大時的地下水位高程,m,即地面高程;dE為地下水蒸發極限深度,m,與表層土岩性有關,其分區與表層土岩性分區相同(參見圖4-7),具體大小由模型識別確定。

因區內氣象站較少,選取地下水最大蒸發強度時,取計算時段各表層土岩性分區各月的平均值。同時,根據計算區存在季節性凍土的特徵,每年的1~4月份及11~12月份地下水蒸發強度為零。此外,水田種植區灌水季節(5~8月)地下水無蒸發。模型識別時段內各月地下水最大蒸發強度見表4-8。

表4-8 2001年5~10月地下水最大蒸發強度表單位:m/d

⑵ 兩種水文模型在窟野河的應用與比較

6.2.4.1 水量平衡模型的應用

水量平衡模型選月為計算時段,主要輸入月降雨量、月蒸發量,輸出月徑流量,因此稱為月模型。該模型以質量守恆原理為理論基礎,結合流域土壤含水量,將各個水文過程或變數之間的關系通過表達式來模擬的流域水文過程。月水量平衡模型有2參數月水量平衡模型、3參數水量平衡模型和5參數月水量平衡模型。2參數水量平衡模型是針對中國南方濕潤或半濕潤地區,提出和建立的2參數模型模擬徑流和土壤濕度過程。窟野河流域屬於乾旱半乾旱地區,冬季乾旱少雨,部分月份降雨為零,因此,選用改進的兩參數的水量平衡模型進行編程計算。當降雨為零時,月徑流量與土壤含水量的關系;降雨不為零時,月徑流量與土壤含水量的關系。

(1)基於VB下月水量平衡模型參數率定和計算程序的編寫

Visual Basic(簡稱VB)是美國微軟(Microsoft)公司沿用Basic語言在Windows環境下開發的一種可視化程序設計語言,適合於面向對象的軟體開發。Visual Basic語言卻不同,它是非過程式的設計語言,具有以下優點:

a.是目前最容易學習的一種面向對象的、可視化的程序設計語言。

b.將程序和數據封裝在一起視為一個對象,提高程序設計的效率,代碼設計針對對象,沒有復雜的程序流程。

c.開發出了功能強大的Active控制項和對象,實現圖像、聲音、動畫等多媒體功能。

d.可方便的與AutoCAD, Microsoft Access等實現無縫集成。

e.在計算速度、代碼效率上,最新版本的Visual Basic語言並不比其他開發語言遜色很多。

根據月水量平衡模型的基本理論,在參數率定時,需對數據迭代運算。為避免採用人工試錯法層層迭代計算的煩瑣、費時及計算精度又低,基於VisualBasic程序設計語言,編寫了月水量平衡模型的參數率定程序和計算程序,既提高了效率也提高了計算精度。

1)VisualBasic語言程序編寫的流程圖。本節在進行月水量平衡模型模擬計算時,藉助VisualBasic程序設計語言進行編程,然後將率定期年份的降水量、蒸發量、徑流實測值輸入EXCEL表格中,在率定程序界面中直接調用EXCEL表格,進入程序運算,選取最優參數,將最優參數代入計算程序,計算模擬徑流值(圖6.23)。

圖6.23 程序流程圖

2)程序的界面(圖6.24、圖6.25)。

圖6.24 參數率定程序界面

圖6.25 計算程序界面

(2)徑流模擬

用月水量平衡模型對窟野河流域進行模擬,降水量選取王道恆塔站以上流域內8個雨量站和新廟站以上流域內7個雨量站及溫家川以上流域內11個雨量站序列資料,徑流選取王道恆塔、新廟和溫家川3個站的月流量資料,蒸發站選取王道恆塔、新廟、溫家川的月蒸發皿觀測資料。模擬結果見表6.16,包括率定期和檢驗期Nash和Sutcliffe模型效率系數RNS、多年平均相對誤差Re及極值模擬相對誤差Remax。從表6.16中可以看出,該模型模擬精度較高,率定期和檢驗期的RNS分別為77.0%、75.5%。Re和Remax較小,圖6.26~圖6.28繪出王道恆塔站、新廟站和溫家川站模擬與實測月徑流過程線。

表6.16 模型參數及模擬結果

圖6.26 王道恆塔站(1969-01~1983-12)徑流量過程線

圖6.27 新廟站(1969-01~1983-12)實測徑流量與模擬徑流量過程

圖6.28 溫家川站(1969-01~1983-12)實測徑流量與模擬徑流量過程

從表6.16中可以看出,率定期和驗證期的月徑流模擬Nash和sutcliffe效率系數RNS值均在65%以上,平均相對誤差為4.9%、6.03%,也均控制在10%以內,極值誤差為6.9%,控制在20%以內。從圖6.26~圖6.28可見,該模型模擬月徑流過程與實測徑流過程吻合較好。對於春汛3月份,由於氣溫回升,受冰川徑流的影響,結果顯示實測值與模擬值相差比較大,一般為實測值較大,模擬值較少。

6.2.4.2 VIC模型的應用

(1)VIC模型程序運行

VIC模型的運算程序是由美國華盛頓大學開發的一個用C語言編寫的龐大而復雜的程序,它由200多個子程序組成。目前,VIC模型將土壤定義為三層。但在程序運算中,將土壤設計為N層,可以進行多層模擬,這有利於模型的拓展。程序的核心部分是能量和水量平衡的計算。主要包括蒸散發計算,直接徑流和基流計算(圖6.29)。

圖6.29 VIC模型程序計算過程圖

程序是按網格進行計算,在水量平衡模擬之前,先要對降水的分配進行處理,確定有降水的面積比例系數A,來計算土壤濕度。如果第一個時段沒有降水,A取1;如果第一個時段有降水,A由降水強度來確定。當有新的降水發生或者降水強度改變時,A改變,基於此,在計算降水分配之前要均化土壤濕度成分,重新分配土壤濕度、植被截留和干濕比例參數。同時,程序對於每個網格的初始數據也要進行寫入,主要包括每個網格的信息、站點信息、土壤熱量節點深度、土壤熱量節點溫度、植被類型、網格定義信息、土壤濕度等。

在模型中,蒸散發計算主要包括冠層濕部蒸發、植被蒸騰和土壤蒸發。運用PenmanMonteith聯合方程計算日蒸發,其中需要計算的有阻抗因子、植被阻抗、基於平均溫度的基準高度。各種植被類型的蒸發、蒸騰和透雨量的計算模塊中,主要包括以下幾個子程序:

1)計算植被截留的蒸發。其中若時段為日,蒸發包括當前降水;若時段小於日,蒸發不能超過當前蓄水。

2)計算植被的蒸發蒸騰水分損失總量。

3)計算上下層土壤濕度,主要是用來判斷土壤的濕度和根系比的相互影響。當每層土壤濕度都大於W0(不被土壤濕度影響的蒸騰臨界值),或濕度和過半的根系超過W0時,潛在蒸發不受土壤乾燥程度的影響;若土層中有不到一半的根系小於W0,額外的蒸發則由較濕潤的土層提供。對於由深層土壤濕度引起的蒸發蒸騰水分損失總量,獨立於各土層之外進行計算。

4)檢查蒸發蒸騰水分損失總量是否導致土壤濕度降至凋萎含水量以下。土壤蒸發計算模塊中,在飽和地區按照潛在蒸發能力進行計算;在部分飽和地區按照潛在蒸發能力的百分比進行計算;裸土蒸發只計算最上層。土壤臨時滲透率根據土壤濕度計算。

模型程序中對於產流的計算主要包括地表徑流及基流。首先需要設置殘留含水量,計算基於上層土壤含水量的徑流;對於地表徑流只計算上層,以小時為步長計算各層之間的滲流。在計算當前土壤含水量時,要對照最大、最小含水量,確定計算值應在二者之間。基流通過Arno模型計算。

VIC模型的運行環境為UNIX工作站,所以本研究採用在 Windows下虛擬UNIX環境的方法,在虛擬的環境下運行VIC模型,編寫輸入輸出控製程序,並調用VIC模型。VIC模型的程序來源於University of Washington網站上共享的程序源代碼。

(2)VIC模型文件的輸入、輸出

VIC模型通過網格化來考慮每個網格單元的植被覆蓋類型、降水的空間分布不均以及土壤特性對徑流的影響。本研究採用10km×10km網格對研究流域進行劃分。模型在每個網格上獨立運行,因此參數文件、數據文件以及輸入、輸出文件需按網格來准備。其中,輸入文件主要包括植被數據文件、土壤數據文件、氣候背景數據文件以及運行控制文件和匯流文件。

本研究只針對VIC模型進行水量平衡的模擬,不計算除蒸散發外地表的能量通量,忽略了地面熱通量過程,在耦合了匯流模型之後,就可以輸出控制站的年、月、日徑流量以及其平均值。在准備了以上的VIC模型輸入文件以及控制文件後,就可以運行VIC模型並耦合匯流模型對研究流域進行徑流模擬。

(3)模擬結果

根據地理位置、下墊面條件和氣候特點,對窟野河流域王道恆塔站和新廟站及溫家川站採用VIC模型進行模擬,以Nash和Sutcliffe效率系數和相對誤差作為目標函數進行率定。通過試驗模擬,在得到模擬結果的同時,也率定得到了模擬流域的最優參數(表6.17)。圖6.30~圖6.32則描述了研究流域模擬結果的月徑流過程。表6.18給出了流域基本信息及徑流模擬結果。

表6.17 模型率定的最優參數值

表6.18 流域基本信息和徑流模擬結果

注:Er為模擬相對誤差,Ce為月流量的模擬效率系數。

從模擬結果可以看出:VIC模型在窟野河流域適用性較差,評價標准多年徑流相對誤差Er基本控制在6%以下,其中溫家川站最小,Er為1.11%;對於反映流量過程吻合程度的Nash-Sutcliffe系數Ce,其日流量過程模擬結果都較差,月流量過程模擬結果在60%~65%之間。從圖6.30~圖6.32可見,VIC模型在窟野河流域的降雨徑流模擬較差,少數峰值誤差較大。

圖6.30 王道恆塔站月徑流過程模擬結果

圖6.31 新廟站月徑流過程模擬結果

圖6.32 溫家川站月徑流過程模擬結果

在現階段水文模型發展趨勢下,很多水文模型在乾旱半乾旱地區的使用一直是水文學者面臨的挑戰,VIC模型雖可以在乾旱半乾旱地區應用,但適用性比較差,特別是月徑流模擬。據分析可能有以下幾方面的原因:

1)窟野河流域站點日降水量資料欠缺,且已有的站點日降水量資料質量也不高是該模型在窟野河流域模擬效果較差的主要原因。

2)VIC模型復雜的結構和龐大的參數系統,使模型在模擬水文過程時,各相關物理過程存在很多不確定性,這也是原因之一,並且這是目前分布式水文模型在乾旱半乾旱地區應用普遍面臨的難點。

3)參數不確定性帶來的誤差。盡管在VIC模型中各種參數已賦予了明確的物理意義,並充分反映各種物理過程,但由於技術水平有限,以及對參數物理意義認識存在缺陷。因此,在確定參數時,雖運用了一些概化、均化公式計算的方法,但還是對模型的模擬結果造成了影響。

4)由於本模型模擬的時間尺度和空間尺度比較大,缺乏更詳細的實測資料,必然會對模擬結果的精度產生一定的影響。如果有條件採用更小尺度的實測資料,會提高模擬的精度,這也需要今後做更深入的研究。VIC模型沒有考慮人類活動對徑流的影響,這樣造成的誤差也是不可避免的。

(4)流域水文模型的應用情況分析

基於物理機制的分布式水文模型可變下滲容量(簡稱VIC)模型和概念性集總式月水量平衡模型都在窟野河流域分別做了應用,其效果表明:月水量平衡模型和VIC模型在窟野河流域都有較好的應用,相比月水量平衡模型,VIC模型月徑流模擬過程效果達60%以上,模擬結果相對較差。據分析認為:流域水文過程是一種復雜的自然現象,在一定程度上受一些不確定因素的影響,可能由於長序列資料在某種程度上均化了流域水文的隨機性。從而使月水量平衡模型月降水-徑流模擬比VIC模型的月降水-徑流模擬效果較好。

為進一步分析比較集總式水量平衡模型和分布式可變下滲容量(VIC)模型在窟野河流域的應用,圖6.33比較了模型對月徑流模擬的Nash-Sutcliffe效率系數。

圖6.33 兩模型在窟野河流域效率應用比較

由圖6.33可以看出,集總式月水量平衡模型比分布式可變下滲容量(VIC)模型的模擬效果好,月水量平衡模型的Nash-Sutcliffe效率系數平均超過了70%,而可變下滲容量(VIC)模型的Nash-Sutcliffe效率系數平均在60%~65%之間。既有較好考慮物理機制又能解決水文要素時空分布不均勻性分布式水文模型是目前研究的熱點,也受眾多學者青睞。從理論上來看,在資料豐富且質量較好的流域,考慮產流機制分布式水文模型可以得到較好模擬效果[39],但對黃土高原的典型流域黃河中游的窟野河流域模擬結果來看,可變下滲容量(VIC)模型模擬效果並不是最好的。分析認為,黃河中游支流窟野河流域水文氣象日資料欠缺,且資料的質量也不好是分布式可變下滲容量(VIC)模型模擬效果不太好的主要原因。相比分布式VIC模型,月水量平衡模型結構簡潔,涉及的參數也比較少。因此,選用集總式水量平衡模型開展氣候變化對水文水資源影響模擬。

⑶ 數據結構代碼(用C語言) 二叉樹的操作

# include <stdio.h>

# include <malloc.h>

struct BTNode

{

int data;

struct BTNode * pLchild;//p是指針,L是左,child是孩子

struct BTNode * pRchild;

};

//函數聲明

struct BTNode * CreateBTree(void);//創建樹

void PreTraverseBTree(struct BTNode * pT);//先序遍歷

void InTraverseBTree(struct BTNode * pT);//中序遍歷

void PostTraverseBTree(struct BTNode * pT);//後續遍歷

int main(void)

{

struct BTNode * pT = CreateBTree();

PreTraverseBTree(pT);

printf("\n");

InTraverseBTree(pT);

printf("\n");

PostTraverseBTree(pT);

return 0;

}

//創建樹

struct BTNode * CreateBTree(void)

{

struct BTNode * pA = (struct BTNode * )malloc(sizeof(BTNode));

struct BTNode * pB = (struct BTNode * )malloc(sizeof(BTNode));

struct BTNode * pC = (struct BTNode * )malloc(sizeof(BTNode));

struct BTNode * pD = (struct BTNode * )malloc(sizeof(BTNode));

struct BTNode * pE = (struct BTNode * )malloc(sizeof(BTNode));

pA->data = 'A';

pB->data = 'B';

pC->data = 'C';

pD->data = 'D';

pE->data = 'E';

pA->pLchild = pB;

pA->pRchild = pC;

pB->pLchild = NULL;

pB->pRchild = NULL;

pC->pLchild = pD;

pC->pRchild = NULL;

pD->pLchild = NULL;

pD->pRchild = pE;

pE->pLchild = NULL;

pE->pRchild = NULL;

return pA;

}

//先序遍歷

void PreTraverseBTree(struct BTNode * pT)

{ //先訪問根節點,再先序訪問左子樹,最後先序訪問右子樹

if ( pT != NULL)

{

printf("%c\n",pT->data);//訪問根節點

//pT->pLchild可以代表整個左子樹

PreTraverseBTree(pT->pLchild);

PreTraverseBTree(pT->pRchild);

}

return;

}

//中序遍歷

void InTraverseBTree(struct BTNode * pT)

{

if(pT != NULL )

{

if (NULL != pT->pLchild)

{

InTraverseBTree(pT->pLchild);

}

printf("%c\n",pT->data);

if (NULL != pT->pRchild)

{

InTraverseBTree(pT->pRchild);

}

}

return;

}

//後續遍歷

void PostTraverseBTree(struct BTNode * pT)

{

if(pT != NULL )

{

if (NULL != pT->pLchild)

{

PostTraverseBTree(pT->pLchild);

}

if (NULL != pT->pRchild)

{

PostTraverseBTree(pT->pRchild);

}

printf("%c\n",pT->data);

}

return;

}

⑷ C語言程序設計

運行結果是3。

原因是''被認為是一個字元,即null character,標志著一個字元串的結束,即字元串"012xy8s34f4w2"中的是terminating character(終止字元?),同時由於加引號的字元串被認為是字元串常量,末尾(即2)之後一位還會加上一個,此時的存儲

012xy8s34f4w2

其中被認為是一個整體,而非'''0'。

在for循環中的控制條件s[i]!=0,即s[i]!='',它使得循環在探測到s[5]即''時就終止,而循環體中的if分支語句意思是尋找0-9之內以char存儲的數字總數,一共有0、1、2,故計數變數n最終值為3。

附程序運行結果:

⑸ 地下水數值模擬模型

一、模型計算范圍及剖分

選用有限差分法建立地下水數值模型。模擬分析軟體選用PMWIN(processing Modflow)和GMS(Groudwater Model System)求解地下水運動的定解問題,PMWIN是美國地質調查局開發的用於模擬和預報地下水系統的應用軟體,它是一個以Modflow為核心的可以用來處理三維模型的軟體(Wen-Hsing Chiang,2005)。PMWIN具有較好的數據導入界面,GMS具有較好的數據後處理可視化顯示,結合兩者優點進行模擬。模型計算范圍,北起黃士台源,南至涇、渭河,西界起自19276km線,東界至19351km線,扣除其內不建模的部分,模型總有效面積為1513km2。以1km的均勻步長對模型進行剖分,其剖分網格實際上就是高斯-克呂格投影地圖中的「公里網」。涇惠渠灌區地下水模型剖分圖見圖8-2。

時間剖分以自然月為時間步長。

圖8-2 涇惠渠灌區地下水數值模型剖分及資源分布圖 Fig.8-2 Groundwater numerical model split and resource distribution in Jinghui Canal Irrigation District

二、模型邊界條件與地下水補、排要素的處理

1.側向補給處理

模型的計算區為第四系鬆散沉積物潛水含水層。為簡化模型,北部黃士台源洪流入滲放在模型北部邊界上,其數量取多年平均值,忽略其隨時間的變化。

2.降水入滲補給

根據灌區水文地質圖,結合不同地形地貌單元降水入滲補給系數的取值。綜合考慮包氣帶的降水量、士質類型、下墊面條件及地下水位埋深等因素進行了分區(Yukun Hu et al.,2010),確定出模擬區降水入滲補給系數分區圖(圖8-3),通過灌區1953~2000年降水資料及1988~2000年地下水93個長觀井水位資料統計分析,確定降雨入滲補給系數(Yonxhui Yanx et al.,2006)。然後將所有面狀、線狀的源匯項數據分別換算成強度形式,然後通過疊加計算,再次換算成單個網格上強度,再以recharxe模塊導入模型。

圖8-3 涇惠渠灌區降水入滲補給系數分區 Fig.8-3 partition map of precipitation infiltration supply coefficient in Jinghui Canal Irrigation District

3.田間灌溉滲漏補給及渠系滲漏補給

田間灌溉滲漏補給及渠系滲漏補給是模擬區地下水兩種主要補給源。灌區渠道分布基本覆蓋整個模擬區,以面狀補給來處理田間灌溉的滲漏補給及渠系滲漏補給。根據灌區士地利用統計資料和擁有的長系列灌溉用水量資料,結合不同灌溉定額和補給系數計算農田灌溉各時段的滲漏補給量,再將灌溉滲漏補給量平均分配到計算的單元格中。

4.井灌地下水開采排泄

根據對灌區地下水資源計算與評價結果,全灌區近年平均開采地下水資源量為1.2629×108m3/a。灌區井網以灌溉渠系的斗、分渠為骨架,井排走向與潛水流向垂直或斜交,井距200~300m,淺型井佔95%,中深井佔2.4%,大口井佔1.4%。開采量、開采動態等根據灌區灌溉年報中年度地下水取水情況統計表獲得。灌區地下水開采量按照井流模塊(Well)輸入模型中。

5.蒸發排泄

MODFLOW中的EVT蒸發子程序包為線性蒸發模型,淺埋區地下水蒸發與埋深呈非線性關系,同時蒸發因素在地下水均衡分析中所佔比重較大,利用線性模型計算蒸發量誤差較大,本書採用阿里維揚諾夫非線性公式代替了EVT蒸發模塊線性公式來計算蒸發量,用Visual Basic6.0在EVT模塊中改寫了源代碼。阿里維揚諾夫非線性公式為

灌區農業節水對地下水空間分布影響及模擬

式中:RETMii,j為地下水面蒸發強度(m),取決於當地氣象條件;RETii,j為潛水蒸發強度(m),隨月份變化,用單位面積單位時間內水量體積表示;hi,j,k為單元水頭,或地下水位(m);hs,j,k為蒸發界面高程(m);dii,j地下水極限蒸發埋深(m),與岩性特徵有關;m為無量綱指數,該地區近似取2。

調整後的RET與調整前相比,精度有較大提高,同時用穩定流擬合效果較好時計算的地下水等水位線,與實測地下水埋深線進行疊加作為虛擬蒸發界面高程,利用虛擬蒸發界面高程代替實際的蒸發界面高程,然後將虛擬蒸發界面高程導入EVT模塊中,反復調試擬合,再使得虛擬蒸發界面高程與計算等水位線的差值,與實測地下水埋深基本一致,這樣避免了地下水流場擬合誤差引起的實際蒸發量和模擬蒸發量在區域分布上的不一致,水資源模擬模擬度有所提高。

6.工業、生活地下水開采排泄

灌區附近周邊鄉鎮截至目前仍沒有實現自來水管網供水,鄉鎮企業和生活用水主要還是開采地下水,由於這些地下水井沒有詳細的統計資料,尤其是農村生活用水,基本上是每戶都有一眼小型的抽水井,很難統計單井開采量,因此用農村人畜用水量定額的方法對其開采量進行估算,再按照面狀負補給加入到模型中。

三、模型識別與檢驗

1.水文地質參數分區

水文地質參數分區依據灌區水文地質勘察、抽水試驗資料,再結合模擬區的地形地貌、地質圖、水文地質圖等進行參數分區,水文地質參數(T、μ)採用分片常數法,其分區范圍與形狀,應符合地質條件與第四系沉積特徵(圖8-6,圖8-7)。抽水試驗所在參數分區,其參數值直接採用抽水試驗求得的參數值。並以該分區參數作為基準參照參數,用推斷類比法並參考其他單孔抽水試驗數據,來估計其他分區的參數初值,待模型校正階段進行確認。

2.模型識別與檢驗

模型識別與檢驗是地下水數值模擬及模型建立過程的一個關鍵環節。通常在模型識別與檢驗過程中,對水文地質概念模型重新認識,分析研究區水文地質條件,進一步對水文地質模型正確與否進行判斷。模型識別與檢驗流程見圖8-4。

圖8-4 模型識別與檢驗流程圖 Fig.8-4 Flow chart of model calibration and verification

模型識別與檢驗的優劣,同樣也取決於建模過程中水文地質條件分析、模型概化等各個環節質量的優劣,識別與檢驗工作並不是一個調參的「數字」過程。模型檢驗與識別依據地下水模擬流場與地下水實際流場基本一致;模擬地下水的動態過程與實測的動態過程宏觀相似;從水均衡的角度看,模擬的地下水均衡變化與實際要素基本相符;識別的水文地質參數基本符合實際水文地質條件。

本次共搜集了灌區石橋、涇陽、楊府、三渠、三原、西張、陂西、高陵、彭李、張卜、櫟陽、新市、樓底、閻良共14個灌溉管理站93個地下水長觀孔水位資料,每月定期觀測6次,分別為1日、6日、11日、16日、21日、26日,記錄觀測地下水位動態,地下水位觀測孔的分布基本覆蓋整個灌區(圖8-5)。

圖8-5 涇惠渠灌區地下水長觀孔分布圖 Fig.8-5 Groundwater long-term observation hole distribution in Jinghui Canal Irrigation District

選取1996年1月至1998年12月的月平均水位觀測數據用於模型的參數識別,1999年1月至2000年12月的月平均水位觀測數據用於模型檢驗。

根據現狀多年平均渠系滲漏補給量、田間灌溉滲漏補給量及地下水等水位線等信息,調整各分區導水系數T的數值進行擬合匹配(圖8-6)。這一原則的實質是將灌區地下水循環看作「天然大型達西試驗」,來調整導水系數T數值及分布,將產生不同形態流場,即等水位線分布,當模擬流場與實際流場宏觀相似,即初步完成了對T的校正過程,同時也計算出了地下水蒸發量。校正給水度時,暫時固定T數值,調整各分區的給水度μ(圖8-7)。給水度的大小影響地下水動態年變幅,通過調整使地下水動態年變幅與實際觀測值接近。通過調整參數分區及分區參數值使兩者之間的差值盡量最小,並據此來判斷所用水文地質參數及分區是否合理。經反復調試參數,獲得了較為滿意的水文地質參數。部分觀測孔的實測水位與計算水位擬合曲線如圖8-8所示,擬合誤差的絕對值大多數滿足規范要求,可見各觀測孔的水位擬合效果是較好的。

在模型調試過程中,充分利用水文地質勘探資料中所獲得的各種信息及計算者對水文地質條件的判斷。反復調試,直至流場及觀測孔動態年變幅與實際觀測值接近為止。使識別後的模型參數、地下水流場及地下水資源量之間達到較合理的匹配。

圖8-6 涇惠渠灌區含水層導水系數T分區及補給排泄計算斷面 Fig.8-6 partition map of aquifer hydraulic conctivity coefficient and recharge disrecharge sections in Jinghui Canal Irrigation District

圖8-7 涇惠渠灌區含水層給水度μ分區圖 Fig.8-7 partition map of aquifer specifie yield in Jinghui Canal Irrigation District

根據上述方法,利用1996年1月至1998年12月期間的地下水長觀孔水位觀測數據進行水文地質參數識別,用1999~2000年的地下水長觀孔水位觀測資料進行模型檢驗。模型計算求得的灌區典型觀測孔水位變幅與實測水位變幅的擬合曲線如圖8-9所示,灌區典型觀測孔水位與實測水位擬合如圖8-10所示。由圖8-9可以看出,根據93個長觀孔水位資料,剔除資料欠完善的部分觀測孔,選擇44個觀測孔對其水位過程線進行擬合,統計絕對誤差見表8-1。

圖8-8 涇惠渠灌區地下水等水位線擬合圖 Fig.8-8 Fitting chart of groundwater contour in Jinghui Canal Irrigation District

表8-1 擬合誤差分布 Table8-1 Error analysis of groundwater level simulation

由圖8-10及實際模擬過程可以看出,地下水位計算值和實測值相關系數(R2)在0.8~0.98之間變化,說明模型輸入補給排泄要素及水位地質參數在該模擬區具有一定的代表性。模型擬合情況大致可以分為兩類:一類是擬合情況比較好的,模型計算水位和實際觀測水位相差較小,能夠比較好地反映出該格點的水位動態趨勢;另一類是模型計算水位值與實測水位值始終有一定的差異,但變化趨勢基本保持一致。經分析,產生誤差的,主要源於各源匯項的統計誤差、地質資料的精度問題導致地層模擬誤差等。還有一點需要說明的是,模型演算法採用迭代求解,通過迭代法得到的解僅是差分方程的近似解,精度也受很多因素的影響。綜上由模型計算流場和水位變化過程線擬合情況看,模擬計算結果比較真實地反映了灌區地下水流場特徵,可以用其進行數值分析計算。

圖8-9 涇惠渠灌區典型觀測孔水位變幅擬合圖 Fig.8-9 Fitting of typical observation hole water level amplitude in Jinghui Canal Irrigation District

圖8-10 涇惠渠灌區典型觀測孔水位擬合圖 Fig.8-10 Fitting of typical observation hole water level in Jinghui Canal Irrigation District

⑹ fluent中的蒸發模型

好像有這方面的例子,你可以看看。比如氣體升為固體,fluent無法自動生成,你得通過udf實現。

⑺ 請問用fluent水蒸發冷凝模型時怎麼把水的飽和溫度定義為T=45.7+3826.36/9.3876-lnp,這個udf怎麼編寫

這個問題呢 根本不用UDF 14.0版本里就可以自己設置這個函數 利用兩相流mixture模型 然後在兩相相互作用力的 傳質里選擇蒸發-冷凝模型 裡面就可以設置這個函數了 不過那裡面好像是多項式形式的

⑻ 編一C語言程序,任意輸入一個大寫字母,將其轉換成小寫字母並輸出

1、第一新建一個project。

⑼ 根據物質三態變化的實質,畫出水蒸發的模型.

上樓的答案是錯的那個圖可以表示水電解模型。水蒸發的實質是水分子間距離增大,沒有產生新的物質,所以在該圖的基礎上只要把蒸發出來的模型都換成水分子就可以了,刪去氫分子和氧分子(就是2個相同圈組成的模型)

答案:在圖中陰影部分畫較密集的水分子模型,上半部分畫疏鬆的水分子模型

⑽ C語言源程序文件的後綴是什麼

C語言源程序文件的後綴解決如下:

  1. c 是c語言的源程序,.cpp是c++語言的源程序。

  2. 在Windows操作系統下,C語言源程序後綴為.c 、編譯後的後綴為 .obj 或 .o 、連接後生成的可執行文件的後綴為.exe。