数值模拟程序.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数值模拟程序

油藏数值模拟程序设计报告班级: 油工12-3班 姓名: 孙雷 学号: 120201140312 程序一:1、程序内容开始输入a,b,c,d值输入主对角线个数令计算令输出值结束图1 程序一程序框图i=2,3…ni=n-1,n-2,…,12、程序框图3、程序代码Private Sub Command1_Click() n = InputBox(输入主对角线个数)Dim a(), b(), c(), d()Dim l(), y(), u(), x()ReDim a(n), d(n), b(n - 1), c(n)For i = 1 To n a(i) = Text1(i - 1).Text d(i) = Text4(i - 1).TextNext iFor i = 1 To n - 1 b(i) = Text2(i - 1).TextNext iFor i = 2 To n c(i) = Text3(i - 2).TextNext iReDim l(n), y(n), u(n) l(1) = a(1) y(1) = d(1) / a(1) u(1) = b(1) / a(1)For i = 2 To n - 1 l(i) = a(i) - c(i) * u(i - 1) u(i) = b(i) / l(i) y(i) = (d(i) - c(i) * y(i - 1)) / l(i)Next i l(n) = a(n) - c(n) * u(n - 1) y(n) = (d(n) - c(n) * y(n - 1)) / l(n)ReDim x(n) x(n) = y(n)For i = n - 1 To 1 Step -1 x(i) = y(i) - u(i) * x(i + 1)Next iFor i = 1 To n Picture1.Print x(; i; )=; Format(x(i), 0)Next iEnd Sub4、计算结果图2 程序一运行界面程序运行结果为:程序二:1、程序内容已知一维均质等厚单相渗流,已知边界条件定压、初始压力分布,求任意时刻的压力分布,渗流微分方程为:开始输入已知的三个边界条件输入值输入和系数矩阵和右端项利用追赶法求解压力方程组打印结束是图3 程序二程序框图2、程序框图3、程序代码Dim a(), b(), c(), d()Dim l(), y(), u(), x()Dim nSub js()ReDim a(n), d(n), b(n - 1), c(n)For i = 1 To n a(i) = Text1(i - 1).Text d(i) = Text4(i - 1).TextNext iFor i = 1 To n - 1 b(i) = Text2(i - 1).TextNext iFor i = 2 To n c(i) = Text3(i - 2).TextNext iReDim l(n), y(n), u(n) l(1) = a(1) y(1) = d(1) / a(1) u(1) = b(1) / a(1)For i = 2 To n - 1 l(i) = a(i) - c(i) * u(i - 1) u(i) = b(i) / l(i) y(i) = (d(i) - c(i) * y(i - 1)) / l(i)Next i l(n) = a(n) - c(n) * u(n - 1) y(n) = (d(n) - c(n) * y(n - 1)) / l(n)ReDim x(n) x(n) = y(n)For i = n - 1 To 1 Step -1 x(i) = y(i) - u(i) * x(i + 1)Next iEnd SubPrivate Sub Command1_Click() Text5 = Dim detDim chushi() n = Text9 / Text10 det = Text7 / Text10 ^ 2For i = 0 To n - 2 Text3(i) = det Text2(i) = detNext iFor i = 0 To n - 1 Text1(i) = -(1 + 2 * det)Next iReDim chushi(n)For i = 1 To n chushi(i) = Text11Next i tmax = Val(Text8) dt = Val(Text7) t = 0 t = t + dt While (t tmax) Text4(0) = -chushi(1) - Text12 * detFor i = 1 To n - 2 Text4(i) = -chushi(i)Next i Text4(n - 1)

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档