自学了SMS-FESWMS几个月,从其原理到具体应用都已经比较熟悉。感觉这个软件还是有许多不足,这也是需要进一步提高和改进的地方。下面谈谈自己的一些感受和体会。

首先,对一些比较简单的模型,软件的计算精度,特别是水流模拟的精度还是可以保证的,但前提是需要对一些关键影响参数进行合理设置,如糙率、涡粘系数(特别对于存在回流的情况)等。对于泥沙模拟,该模型仅能较好的考虑入口清水及平衡输沙(也即保证入口处不发生冲淤)的情况,另外,模型提供了多个平衡挟沙经验公式,如熟知的Meyer-Peter-Muller公式、Laursen公式、Ackers-White公式等,选择公式时应注意各公式适用的粒径范围等,如M-P-M公式可以考虑粒径较粗的卵石河床情况,其适用的粒径变化范围也较大;而Laursen公式的适用粒径范围就较小,一般适用于沙及细卵石河床情况。泥沙模拟的工况验证得不多,整体上来讲,在参数合理取值的情况下,泥沙模拟能得到定性合理、定量接近的计算结果;

其次,对于实际河道而言,情况就复杂得多,软件的稳定性成为特别关键的问题。首先对于实际高程点,一般高程较高的点如果不必要,就尽量不要考虑,因为如果计算水位低于节点高程,就会出现单元干湿的问题,单元干湿问题的处理是平面二维数学模型中是一个比较关键的问题,国内取得了不少好的成果,如何少苓提出的窄缝法等,而在FESWMS模型中,主要提出了一个河床存储系数的概念。简单来说,就是让相邻时间步的单元干湿变化不那么剧烈,从而保证计算的稳定。在FESWMS模型中,虽然可以通过自动的Steering/Spin down功能解决水位较低的问题,但从应用效果来看,如果水位与河床高程相差较大,该功能很难最终收敛到目标水位值。另外,单元干湿参数的设置,在材料设置和模型控制中都有出现,材料设置中如果设置干湿参数值,则会覆盖模型控制中的相应参数。在模型控制中,需设置默认存储深度及干燥深度限值,同时打开干湿开关,默认存储深度取0.1~3ft不等。综上,从稳定性角度来讲,尽量将河床高程调低,可保证计算的稳定性,否则,模型将很难计算。对于实际河道的水流计算,在保证稳定性和合理参数取值的条件下,一般都能定性合理的结果,如果要从定量上考虑,则需要进行大量的模型验证,包括参数的反复调试等,过程是比较繁杂的。对泥沙计算而言,要想得到与实测数据符合的结果,估计是比较困难的,首先,SMS的泥沙入口边界问题尚未得到很好解决,无法给定入口含沙量条件;其次,上述平衡输沙公式的适用性问题,特别是用于长江、黄河等国内河流时能否反映实际,这是比较困难的。

软件进一步改进的建议:

1、将k-ε紊流模型等引入到软件中去,这样涡粘系数的取值可以不用手动设定,而可以直接根据湍流动能及耗散率确定,这也是目前平面二维水流模型的主流方法;

2、改进干湿边界变化的处理,引入更为合理的计算方法,感觉这方面的处理最为关键;

3、对泥沙模型的源代码进行大量的完善修改,一方面充分考虑入口泥沙边界,另一方面,考虑增加更多地更为合理的平衡输沙公式。

〔转自:http://blog.sina.com.cn/s/blog_5ffd41cf01019e9e.html

转载:SMS软件FESWMS模型使用体会的更多相关文章

  1. CMM:软件成熟度模型

    周末在家闲来无事,泡咖啡看书,正好看到了关于CMM的相关资料,分享出来,也当做学习笔记... 一.CMM简介 CMM,英文全称为Capability Maturity Model for Softwa ...

  2. [转载]sklearn多分类模型

    [转载]sklearn多分类模型 这篇文章很好地说明了利用sklearn解决多分类问题时的implement层面的内容:https://www.jianshu.com/p/b2c95f13a9ae.我 ...

  3. [转载]OSI七层模型详解

    OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 . 完成中继功能的节点通常称为中继系统.在OSI七层模型中,处于 ...

  4. [转载] Cassandra入门 框架模型 总结

    转载自http://asyty.iteye.com/blog/1202072 一.Cassandra框架二.Cassandra数据模型 Colum / Colum Family, SuperColum ...

  5. [转载]mac软件

    效率之王:Afred小帽子:通过前人的配置,替代掉了 有道词典.发音工具.开关机.快速搜索.地图.Spotlight等应用. 主力编辑器:Atom因为高颜值.强大的插件和预览功能 取代了之前的subl ...

  6. 【转载】使用事件模型 & libev学习

    参考这篇文章: http://www.ibm.com/developerworks/cn/linux/l-cn-edntwk/ 这里面使用的是 libev ,不是libevent Nodejs就是采用 ...

  7. 【转载】高性能IO模型浅析

    服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking IO):默认创建的s ...

  8. 转载 用ShadowVolume画模型的影子

    阅读目录(Content) Shadow Volume 包围盒 动态生成包围盒 判断 多光源下的阴影 总结 问题 CSharpGL(48)用ShadowVolume画模型的影子 回到顶部(go to ...

  9. 【转载】CSS 盒子模型

    转处:http://www.cnblogs.com/sunyunh/archive/2012/09/01/2666841.html 说在Web世界里(特别是页面布局),Box Model无处不在.下面 ...

随机推荐

  1. lower_bound实现函数

    lower_bound实现 [参考链接]lower_bound二分的三种写法 我在以前,总是用lower_bound,现在发现这样不行,有些复杂的数据结构二分的时候用这个会很麻烦,不如手写二分,我接着 ...

  2. cf111D Petya and Coloring 组合数学,二项式反演

    http://codeforces.com/contest/111/problem/D Little Petya loves counting. He wants to count the numbe ...

  3. C# 中的事件含义介绍

    AutoSizeChanged 当 AutoSize 属性的值更改时发生.(从 ButtonBase 继承.)   BackColorChanged 当 BackColor 属性的值更改时发生.(从 ...

  4. [实变函数]4.1 可测函数 (measurable function) 及其性质

    1 记号 (notations) (1) 广义实数: $\overline{\bbR}=\bbR\cup\sed{-\infty}\cup\sed{+\infty}$. (2) 本章主要考虑     ...

  5. Spring中依赖注入的使用和配置

    使用方法1: //在执行此实例化的时候就会完成所有注入 ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext( ...

  6. iPhone播放音乐

    来源:http://blog.csdn.net/htttw/article/details/7842295 iPhone播放音乐 今天我们简要介绍如何在iPhone中播放音乐: 强烈建议你参考官方文档 ...

  7. .NET单元测试

    原文链接:http://www.cnblogs.com/edisonchou/p/5467573.html

  8. C++学习42 输入和输出的概念

    我们经常用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上.从操作系统的角度看,每一个与主机相连的输入输出设备都被看作一个文件.除了以终端为对象进行输入和输出外,还经常 ...

  9. Golang 开发移动应用的OpenGL(Android为例)的渲染管线

    golang.org/x/mobile/gl 实现的是 OpenGL ES 2 的封装. 参考:https://godoc.org/golang.org/x/mobile/gl OpenGL ES(O ...

  10. 算法库:基础线性代数子程序库(Basic Linear Algebra Subprograms,BLAS)介绍

    调试DeepFlow光流算法,由于作者给出的算法是基于Linux系统的,所以要在Windows上运行,不得不做大量的修改工作.移植到Windows平台,除了一些头文件找不到外,还有一些函数也找不到.这 ...