自学了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. U8Bom查询

    select temp.*,Inventory.cInvCode,Inventory.cInvName,Inventory.cInvStd from ( select b.InvCode as 'PI ...

  2. linux下zip文件解压后乱码解决方案

    解决办法一,利用pyton来处理 1.vi uzip文件2.复制一下内容(Python) #!/usr/bin/env python # -*- coding: utf-8 -*- # uzip.py ...

  3. git分支管理和stash

    1 创建分支$ git branch 分支名 2切换到分支$ git checkout 分支名 3查看提交git log --oneline --decorate --graph --all 4 轻量 ...

  4. 回朔法/KMP算法-查找字符串

    回朔法:在字符串查找的时候最容易想到的是暴力查找,也就是回朔法.其思路是将要寻找的串的每个字符取出,然后按顺序在源串中查找,如果找到则返回true,否则源串索引向后移动一位,再重复查找,直到找到返回t ...

  5. sql执行返回值存储

    List<Map> list = SqlRunner.queryMapList(sql); if(list != null && !list.isEmpty()){ Has ...

  6. eclipse快捷键使用

    Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率.Eclipse中有如下一些和编辑相关的快捷键.1. [ALT+/]此快捷键为用户编辑的好帮手,能为用户提供内容的 ...

  7. Android Studio 快捷键 主键

    Alt+回车 导入包,自动修正Ctrl+N   查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L  格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get ...

  8. 关于 Python Iterator 协议的一点思考

    转:http://www.jianshu.com/p/dcf83643deeb Python 中有好几种容器或者序列类型:list tuple dict set str,对于这些类型中的内容,往往需要 ...

  9. HDU 5877 [dfs序][线段树][序]

    /* 题意: n个点的树,每个点给定一个权值,给定一个k,求任意一点的子树中,权值小于k/该点权值的点共有多少个. 思路: 1.很明显的子树的操作,应用dfs序. 2.比赛的时候傻逼了,一直在调划分树 ...

  10. spring项目中使用weblogic的连接池

    1.首先在weblogic控制台中配置好一个数据源 我这里建立的数据源的名称叫 jdbc/app1,JNDI名称也叫 jdbc/app1 2.在spring中配置数据源的时候,做如下配置: <b ...