解变饱和条件下的修正Picard迭代方法的新收敛准则_picard迭代失效-程序员宅基地

技术标签: 算法  

摘要

变饱和多孔介质中水流的Richards方程解对水资源评估和环境管理越来越有用。

除了解的准确性,对所需的计算工作量也颇为关注,特别是在涉及高度非线性土壤水力特性和干燥初始条件时。

本文评估了在使用修正的Picard迭代方法解混合形式Richards方程时不同收敛准则的性能。

结果以计算机处理(CPU)时间和迭代次数进行比较。

通过使用含水量的Taylor级数展开导出的新的非线性收敛准则被实施到混合形式的数值算法中。

新准则的计算效率针对不同的土壤类型、边界条件、初始条件和分层土壤进行了评估。

尽管三个准则在计算的含水量、压力水头和水通量分布方面产生了几乎相同的结果,且质量平衡误差微乎其微,但所需的CPU时间明显不同。

总体而言,新的非线性收敛准则在计算效率上远远优于其他两个准则。

在高度非线性流问题中,其他两个收敛准则失败时,新的准则也更为健壮(即解保持收敛)。

本研究结果表明,当新的收敛准则应用于混合形式Richards方程的修正Picard解时,可以产生一种非常高效和准确的方法,用于模拟土壤中的变饱和水流。

1. 引言

在环境研究中,数值模型是评估非饱和带释放化学物质可能导致地下水污染风险的重要工具

地质材料的极端变异性和复杂性、干燥的初始条件以及不断变化的边界条件可能使得在可接受的准确性和计算工作量范围内解决流动和传输问题变得困难。

当前大多数可用的数值方法在准确性或计算效率之间做出了妥协。

例如,对于相对粗纹理的土壤的渗透通常难以建模,因为其具有高度非线性的水力特性。

干燥的初始条件和高度非线性的水力特性通常需要使用非常细致的空间和时间离散化来避免数值不稳定性。

这些条件导致数值算法变得CPU密集型,特别是当需要模拟长期和/或多维问题时。

因此,追求最佳数值算法的努力应该涉及优化方案的准确性和健壮性,以及最小化所需的计算时间。

 

本文的目标是提高Celia等人(1990)的混合形式算法用于解决变饱和流问题的计算效率。

通过引入新的非线性收敛准则,改进了算法的收敛速度。

所提出的准则将通过与其他两个广泛使用的收敛准则进行比较来评估其性能。

2. 背景

在等温条件下,可变饱和刚性土壤中的一维垂直水流通常用Richards方程(Richards,1931)描述,该方程可以用压力头或水含量的形式表示,即


C\frac{\partial h}{\partial t}=\frac{\partial }{\partial t}(K\frac{\partial h}{\partial z}-K)-S\qquad(1)


\frac{\partial \theta}{\partial t}=\frac{\partial }{\partial z}(D\frac{\partial \theta}{\partial z})-\frac {\partial K}{\partial z}-S \qquad(2)

其中,h为压力头L,

\theta为体积含水量(L^3 L^{-3}),

t为时间(T),

z表示距离土壤表面向下的垂直距离[L],

C = d \theta/dh为比水含量容积(L^{-1}),

K为水力导度(L T^{-1}),

D = K/C为土壤水非饱和扩散率(L^2 T^{-1}),

S为源/汇项(T^{-1})。

直到最近,大多数数值研究使用Richards方程的压力水头或含水量形式来描述可变饱和土壤中的流动(例如,Davis和Neuman,1983;Huyakorn等,1983,1989;Hills等,1989;Kool和Van Genuchten,1991;Kirkland等,1992)。

使用方程(1)的基于含水量的方案。

(2) 可以被写成保守质量的形式,因此在大多数情况下,无论时间步长和网格间距如何,都应在计算域内保持质量(Hills等人,1989)。

Huyakorn和Pinder(1983)表明,对于最初是干燥均质土壤,使用这样的方案是有优势的。

基于含水量的公式的一个局限性是,这种形式不能用于描述饱和带的流动,而且分层土壤中的流动也不容易模拟。

此外,即使这种公式在流动系统内部准确保持质量,基于含水量的算法在边界处可能出现质量平衡错误。

基于压力头的公式(1)被认为对涉及分层或空间异质土壤的实际问题以及变饱和流问题更有用。

不幸的是,使用基于压力头的公式模拟干燥和/或高度非线性土壤的入渗通常在保持质量方面面临困难。

有关基于压力头和基于水含量的Richards方程形式的相对优势和劣势的更详细讨论已由Hills等人(1989)提供。

一些研究人员探索了解决基于压力头或基于水含量形式的Richards方程的替代数值技术。

这些研究的目标包括获得更稳定的数值算法,加速计算,最小化质量平衡误差,并针对不同的土壤类型或初始和边界条件实现更精确的解。

例如,Milly(1985)提出了一种质量保守的解决方案,其中使用了有效元素土壤水容量项。

这种方法,结合质量集中法(Neuman,1973),有效地确保了基于压力头的方程的整体质量平衡。

Rathfelder和Abriola(1994)通过扩展和离散化土壤水容量开发了类似基于压力头方程的质量保守解决方案。

其他人使用了Kirchhoff类型的转换(例如,Ross和Bristow,1990)或替代函数(Ross,1990;Pan和Wierenga,1995)以简化非线性流的描述。

在不同的方法中,Gottardi和Venutelli(1992)使用了一种移动有限元方法,其中网格点沿润湿前沿移动,从而允许较少的节点而不损害数值精度。

然而,移动网格法在应用于分层系统或用于时变边界条件时存在一些局限性。该方法也被发现不如传统的固定网格公式具有较差的质量保守性。

El-Kadi和Ling(1993)提出了Peclet和Courant数标准,用于空间和时间离散化,以描述解决Richards方程的数值方案的准确性和效率。

通过引入源项,Hills等人(1989)成功地用基于含水量的算法解决了涉及一维水流进入分层土壤的问题。

Kirkland等人(1992)随后开发了一个基于含水量的算法,通过变量转换模拟了二维变饱和流。

最近,Huang等人(1994)提出了一种基于特征的粒子跟踪技术,用于解决基于压力头的Richards方程,用于高度非线性的入渗问题。

察觉到现有基于压力头和基于水含量的Richards方程解决方案的缺点,许多人尝试将这两种方法的优势结合起来。

Richards方程的混合形式被认为保持了基于水含量方程固有的质量守恒特性,同时提供了以压力头h表示的解。

Richards方程的混合形式表达为:


\frac{\partial \theta}{\partial t}=\frac{\partial }{\partial z}(K \frac{\partial h}{\partial z})-\frac {\partial K}{\partial z}-S \qquad(3)

Brutsaert(1971)是最早使用混合形式Richards方程来解决饱和-非饱和流问题的人之一。

他将混合形式方程的有限差分逼近与牛顿迭代方案结合起来,以有效处理陡峻的润湿前缘。

Allen和Murphy(1985,1986)在其共轭有限元算法中使用了Richards方程的混合形式,并采用了“拟牛顿”迭代方法。

最近,Celia等人(1987)和Celia等人(1990)提出了一种质量保守的数值方案,使用“修正的Picard迭代”解混合形式Richards方程(3)。

由于完美的质量平衡,修正的Picard迭代技术被证明是对早期Picard方法的重大改进。

修正的Picard迭代方法在模拟具有陡峭润湿前缘的非饱和流方面也表现出很大的潜力(Celia等人,1990;Celia和Bining,1992)。

Ray和Mohanty(1992)随后重新审视了混合形式算法,并通过几个数值实验展示了它相对于基于压力头的方案的优势。

与基于压力水头和基于含水量的算法类似,Celia等人(1990)的修正Picard迭代方案基于Richards方程(3)的全隐式(向后Euler)时间逼近,具体如下:


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44259522/article/details/134960535

智能推荐

LightOJ - 1067 Combinations(快速幂+逆元)_快速幂求逆元 在线oj-程序员宅基地

文章浏览阅读484次。DescriptionGiven n differentobjects, you want to take k of them. How many ways to can do it? For example, saythere are 4 items; you want to take 2 of them. So, you can do it 6 ways. Take 1, _快速幂求逆元 在线oj

Fairseq学习日记:注定麻烦的旅程_final_lr_scale-程序员宅基地

文章浏览阅读6.6k次,点赞10次,收藏23次。现在开头:Fairseq是一个正在快速迭代的产品,而且是开源的!这不是表扬,这意味着三件事情:1.他没有文档!所有框架代码都没有任何注释,包括函数docstring都没有2.他没有经过有效测试,估计是抢时间吧!即使是官网Readme里的例子也是无法跑起来的!3.他是一个框架,而且是一个非常不Pythonic的框架,充斥着inline/包装器/莫名其妙的语法。虽然这三点决定他真的对不住Facebook的金字招牌,但是作为一个学习者,总要把他运行起来,那么开始这场针对 FaceBOOK派“全_final_lr_scale

[Linux][Busybox]分享你不知道Top 命令参数_busybox top-程序员宅基地

文章浏览阅读5.1k次。目录摘要:基本操作与命令介绍:进入top后交互一点点新的操作Author: Keivn.Xu [email protected]摘要: 玩过Linux一定使用过busybox top命令,但下面的操作方法,你不一定有见过。基本操作与命令介绍:console:/ $ busybox top -help top: invalid optio..._busybox top

rssi参数获取_信号强度(RSSI)知识整理-程序员宅基地

文章浏览阅读1.6k次。为什么无线信号(RSSI)是负值答:其实归根到底为什么接收的无线信号是负值,这样子是不是容易理解多了。因为无线信号多为mW级别,所以对它进行了极化,转化为dBm而已,不表示信号是负的。1mW就是0dBm,小于1mW就是负数的dBm数。弄清信号强度的定义就行了:RSSI(接收信号强度)Received Signal Strength IndicatorRss=10logP,只需将接受到的信号功率P代..._c#获取低功耗设备的rssi信号强度

后端服务的雪崩效应及解决思路_接口超时时间过长导致雪崩效应-程序员宅基地

文章浏览阅读204次。1.RPC与本地调用的区别RPC远程调用,一般是跨平台、采用http协议,因为http协议底层使用socket技术,只要你的语言支持socket技术,就可以相互进行通讯。比如:java语言开发的接口,使用http协议,如此以来C#语言可以调用。本地调用:只支持java语言与java语言开发,使用虚拟机和虚拟机之间的通讯,RMI。2.雪崩效应产生的原因默认情况下只有一个线程池维护所有的服务接口,如果大量的请求访问同一个接口,达到tomcat线程池默认极限,可能会导致其他服务无法访问。3.雪_接口超时时间过长导致雪崩效应

linux操作redis_linux 连接redis-程序员宅基地

文章浏览阅读2.7w次,点赞4次,收藏35次。redis常用命令_linux 连接redis

随便推点

计算机视觉——相机标定-程序员宅基地

文章浏览阅读1.1w次,点赞8次,收藏82次。相机标定_相机标定

js获取年月日 时分秒的日期格式_js 时分秒 时间格式-程序员宅基地

文章浏览阅读1.1k次。const date = new Date()const year = date.getFullYear()const month = date.getMonth() + 1 >= 10 ? date.getMonth() + 1 : `0${date.getMonth() + 1}`const day = date.getDate() >= 10 ? date.getDate() : `0${date.getDate()}`const hours = date.getHours() ._js 时分秒 时间格式

【模拟】Oracle重建索引_oracle 重建索引-程序员宅基地

文章浏览阅读2.2k次。摘要:简述重建索引的情况及重建索引_oracle 重建索引

keil迁移到cubeIDE_cubeide生成代码 keil打开-程序员宅基地

文章浏览阅读2.7k次。以stm32f105rct6为例子,keil迁移到cubeIDE_cubeide生成代码 keil打开

语音处理:Python实现dBFS刻度和采样值相互转换_dbfs 频域-程序员宅基地

文章浏览阅读781次。以对数域常用的dBFS刻度为例,支持主流音频信号位深:整型16/24/32位和浮点32位,编写Python实现对数域和采样值单位互换功能_dbfs 频域

SOD(显著性目标检测)数据集_sod数据集-程序员宅基地

文章浏览阅读4k次,点赞5次,收藏29次。显著性目标检测常用十种数据集:SOD,提取码:f7uqDUT-OMRON,提取码:wqpnMSRA-B,提取码:rfrbSOC,提取码:d5b9SED2,提取码:q4iaHKU-IS,提取码:2f1iPASCAL-S,提取码:naaxDUTS,提取码:a5w7THUR-15K,提取码:ptk9ECSSD..._sod数据集