非线性方程

在水力学领域遇到的非线性方程的一个例子是通过长梯形通道寻找流动的法向深度 y n y_n yn​。 这样的流动深度出现在均匀流动区域,远离任何不均匀原因的影响,例如堰的上游。

法向深度 y n y_n yn​ 可以通过求解以下方程获得:

Q = 1 n A R 2 / 3 S 0 1 / 2 Q=\frac{1}{n} A R^{2 / 3} S_{0}^{1 / 2} Q=n1​AR2/3S01/2​

浪涌高度和速度

非线性方程的另一种情况,也来自水利工程领域,是计算由于在其一端的流量突然增加或减少而在一维通道中发生的冲击波的高度。

图示了两种这样的情况,一种是由于下游端的流量减少,另一种是由于上游端的流量增加。 两幅图都描绘了所谓的正涌浪,即行波后面的水深大于其前面的水深。 第一种情况可能发生在水电运河中,其中控制进入涡轮机的水的下游闸门突然运行以减少排放。 另一个可能在水力发电机组的出口通道中,由于涡轮转轮的启动,排放量突然增加。 另一种类型的浪涌可能发生在带有闸门的通道中,该通道阻止了储备的水,而储备的水突然被撤回。 然后产生一个负浪涌,其中波浪向上传播的水流深度小于其前面的水深。

狭窄和凸起通道部分的水流深度

线性方程

在求解联立方程时通常会出现一组包含 n 个未知变量的 n 个方程。 下面介绍了这种“方程组”的一些代表性示例,这些示例取自水利工程和水文学领域,需要同时求解方程。

反应堆稳态分析系统

管网流量的稳态分布

单位水文的推导

Python求解上述方程

import numpy as np
import matplotlib.pylab as plt
b0 = 20.0
s = 2.0
s0 = 0.001
mn = 0.020
Q = 40
yinitial = 1.0
errorallow = 0.0001
def area(y):area=y*(b0+s*y)return area
def wetperi(depth):wetperi = b0+2*depth*np.sqrt(1+s*s)return wetperi
def hyrad(depth):hyrad = (b0+depth*s)*depth/(b0+2*depth*np.sqrt(1+s*s))return hyrad
def topwidth(depth):topwidth=b0+2*s*depthreturn topwidth
iter = 0
max_error = 1.0
yn = yinitial
while (max_error > errorallow):iter = iter+1Fyn = area(yn)**1.6667/wetperi(yn)**0.6667-mn*Q/
np.sqrt(s0)

源代码

参阅 - 亚图跨际

Python(解非线性方程和线性方程)求水力学法向深度-浪涌高度速度及互连反应器中的浓度和流体分布相关推荐

  1. delphi dbgrideh 遍历每一个单元格_用Python解数独[1]:求每个单元格的行值域

    目录 用Python解数独[0] 用Python解数独[1]:求每个单元格的行值域 用Python解数独[2]:求列值域和九宫格值域 用Python解数独[3]:求总值域 用Python解数独[4]: ...

  2. python解非线性方程_python解非线性方程的问题

    废话不多说,上代码 方法1: from sympy import * t=symbols('t') eq=eq(10**20*exp(-12000/t)/(0.01+10**14*exp(-12000 ...

  3. python deepcopy函数_用Python解数独[6]:递归获得最终答案

    目录 用Python解数独[0] 用Python解数独[1]:求每个单元格的行值域 用Python解数独[2]:求列值域和九宫格值域 用Python解数独[3]:求总值域 用Python解数独[4]: ...

  4. python解一元二次方程虚根_Python编程实现数学运算求一元二次方程的实根算法示例...

    本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法.分享给大家供大家参考,具体如下: 问题: 请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² ...

  5. python解多元多次方程组_Python求解多重或非线性方程,python,多元,多次,方程组,线性方程组...

    背景: 如何使用python求解多元多次方程组或者非线性方程组. 原创内容,转载注明出处!请勿用于商业用途! (上篇用python拟合2019nCov感染人数的文章被不少博主转载了,发的比较早,不少博 ...

  6. python求解析解,Python解微分方程

    Python解微分方程 微分方程回顾 微分方程:python 解析解(SymPy) 微分方程:python数值解(SciPY) 微分方程组:python数值解 微分方程回顾 微分方程是用来描述某一类函 ...

  7. 【pyhton解决数学问题】2用python解方程

    目录 1Sympy的基本概念 1符号计算 2计算机代数系统 3实际解方程 1把未知数设为符号 2用solve()解方程 1解一元一次方程 2解二元一次方程组 3解决一元二次方程 总结 哈喽,大家好! ...

  8. 如何利用python解方程_Python 解方程的三种方法

    # 首发于我的博客 The North. 新年第一篇,搞起. 这回写一个好久之前想做,一直搁着没做的东西-- Python 解方程(其实是放假回家,趁着家里电脑重装 LOL 的时间过来写一篇). 咱这 ...

  9. 用Python解中考数学规律题

    用Python解中考数学规律题 以下为2018成都市的中考数学真题B卷第23题: 分析:   一.这是一道常规的找规律考题,一般每年的中考数学都会涉及,根据题的难易程度,位置一般会出现在B卷的第二题, ...

最新文章

  1. laravel中token的使用方式
  2. 关于去中心化身份的一点思考
  3. Spring IOC和MVC基础知识
  4. VTK:二次可视化用法实战
  5. python空类型用什么表示_python中怎么表示空值
  6. iOS底层探索(二) - 写给小白看的Clang编译过程原理
  7. mitmproxy 中间人代理工具,抓包工具,linux抓包工具 mitmproxy 使用
  8. .Net 读取xml
  9. 分布式 | log4j2 漏洞修复方案
  10. Java求101-200以内的质数
  11. android 拍照水印日期,胶片日期水印app安卓版-胶片日期水印手机版预约v1.0-发卡屋...
  12. 单片机60秒秒表c语言,基于51单片机的60秒,秒表计时器
  13. [matlab笔记]多元函数泰勒展开
  14. 通过QQ邮件发送文档到kindle,kindle收不到的问题
  15. 智能制造、工业互联网、数字化转型哪家强?请收好这份榜单!
  16. Unity3D 制作调色板
  17. Vue脚手架创建项目流程
  18. 我想我又读到了一首唯美的诗
  19. 华为nova5ipro的优缺点_三个原因告诉你 为何华为nova 5i Pro如此受追捧
  20. linux c语言俄罗斯方块 头文件,C语言写的俄罗斯方块程序

热门文章

  1. hooks 使用dva_hooks 中使用dva
  2. onpenstack
  3. 【语音通知】ERP系统网络报警灯-语音通知终端-485报警器|语音报警灯|网络报警灯|Modbus报警器|智能LED报警灯
  4. 了解GB28181相关协议
  5. 开箱即用!Linux 内核首个原生支持,让你的容器体验飞起来!
  6. c语言定义最大长度为20的字符串,c语言定义字符串
  7. sql数据库分离附加_使用分离和附加方法移动SQL数据库
  8. 从源码角度学习Volley框架
  9. Raspberry Pi 更新软件源
  10. PHP+MySQL+Dreamweaver动态网站开发_第一个PHP程序