松弛法求解给定边界条件的泊松方程
一、问题描述
一块 4cm x 3cm 的板,表面的散热忽略不计,四边温度给定,除一条长边温度为 100◦C 外,其他三条边的温度为 20◦C。计算其稳定的温度场。
采用迭代法计算时,注意采用不同的松弛因子,并比较收敛速度,观察在不同的网格尺度下,最佳松弛因子的变化。
二、解题思路
本题为给定边界条件的泊松方程的求解问题。
采用 SOR 松弛法:
其中
β=ΔxΔy\beta = \frac{\Delta x}{\Delta y} β=ΔyΔx
用 matlab 编写函数
functionn=SOR(w)function \quad n = SOR(w)functionn=SOR(w)
其中参数 w 为松弛因子 ,返回值 n 为收敛所需要的迭代次数 。判断收敛的条件为
∑i,j(Ti,jn+1−Ti,jn)2<ϵ\sum_{i,j} (T_{i,j}^{n+1} - T_{i,j}^n)^2 < \epsilon i,j∑(Ti,jn+1−Ti,jn)2<ϵ
function n = SOR(w)
xl = 1;
yl = 1;
n = 30;
hx = xl/n;
hy = yl/n;T = zeros(n);
f = zeros(n);T(:,1)=20;
T(:,end)=20;
T(1,:)=20;
T(end,:) = 100;e = 1;
while(e >0.0001)n = n+1;T1 = sor(T,f,w,hx,hy,1);e = sum((T1(:)-T(:)).^2);T = T1;
end
contour(T,100);function T = sor(T,f,w,dx,dy,N)
b = dx/dy;
B2 = b*b;
DX2 = dx*dx;
C = w/(2*(1+B2));
for t = 1:Nfor i =2:size(T,1)-1for j = 2:size(T,1)-1T(i,j) = (1-w)*T(i,j) + C*(T(i+1,j)+T(i-1,j) + ...B2*(T(i,j+1)+T(i,j-1))+DX2*f(i,j));endend
end
结果
不同网格尺度下最佳松弛因子的变化
可见随着网格数增加 ,最佳松弛因子随之增大 ,趋向 2.0
松弛法求解给定边界条件的泊松方程相关推荐
- python实现动态规划求解给定矩阵的和最大的子数组(矩阵中数字正负均存在)
本篇博文比较简单没有太多实际意义,只是为了练习一下,动态规划我并不熟悉,也是刚处于学习的阶段. 问题: 给定一个指定的矩阵,维数小于1000,在矩阵的所有子数组中寻找具有最大和的子数组求和输出. 思路 ...
- matlab系统稳态误差终值,Matlab求解给定系统稳态误差
对于如图线性系统,应用拉式变换终值定理,可以很容易求出系统给定稳态误差 ess=lim e(t) (t-无穷大)=limsE(s)(s-0)=limS(R(S)-C(S))= limS(R(S)-W( ...
- Matlab求解给定系统稳态误差
对于如图线性系统,应用拉式变换终值定理,可以很容易求出系统给定稳态误差 ess=lim e(t) (t-无穷大)=limsE(s)(s-0)=limS(R(S)-C(S))= limS(R(S)-W( ...
- 静电场边值问题及其求解
目录 边值问题 1. 方程 2. 边界条件 解法 1. 分离变量法 2. 有限差分法 3. 电轴法 4. 镜像法 (1) 无限大导体平面 (2) 导体球面 (3) 双层介质 边值问题 边值问题就是求解 ...
- 泊松融合进阶——DFT求解二维泊松方程
前言 泊松融合(Poisson Blending)是图像处理领域著名的图像融合算法,自从2003年发表以来,有很多基于此算法的应用和改进研究出现.泊松融合无需像Alpha blending一样的精确抠 ...
- 二维泊松方程求解-SIP-最速下降法-共轭梯度
1. 直接解法:LU分解 在前面的内容中曾经提到,使用有限差分或有限体积法通过隐式离散得到Aϕ=QA\phi=QAϕ=Q的求解形式,其中AAA为系数矩阵.在一定条件下,AAA能够通过因式分解为A=LU ...
- 量子计算机解泊松方程,学界 | 从泊松方程的解法,聊到泊松图像融合
原标题:学界 | 从泊松方程的解法,聊到泊松图像融合 " 经典图像融合算法解读. " AI 科技评论按,本文作者成指导,字节跳动算法工程师,本文首发于知乎(https://zhua ...
- chtMultiRegionSimpleFoam求解器的热源不在边界上【翻译】
翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/126777-chtmultiregionsimplefoa ...
- 偏微分方程数值解法python_基于python求解偏微分方程的有限差分法资料
基于python求解偏微分方程的有限差分法资料 Computer Era No. 11 2016 0 引言 在数学中, 偏微分方程是包含多变量和它们的偏 导数在内的微分方程.偏微分方程通常被用来求解 ...
最新文章
- C++/C++11中std::runtime_error的使用
- 【总结整理】如何做需求分析(转)
- 最爱莫乎生命,其次是“你”
- python绘制简单直方图-python plotly绘制直方图实例详解
- jQuery中数组的使用
- java 无符号 类型_java中符号类型和无符号类型的问题分析
- c语言竖等于意思,C语言竖式问题
- 简述java在安卓开发中的应用_Java 自定义注解在安卓开发中的简单运用
- echarts画图实例讲解
- Socket超时时间设置
- Visual Studio 2008 可扩展性开发(八):关于用户界面的种种(上)
- antd的select的滚动条怎么才会出现_纵向滚动条对横向滚动条的影响
- Linux内核中的IPSEC实现(6)
- Visual Studio自定义调试窗体两个小技巧
- 17种最重要的项目管理方法
- Git恢复被删除的文件
- 拉普拉斯变换解微分方程
- 《每日一题》NO.21:画出CMOS 非门/与非门/或非门的结构
- 电脑启动项快捷键大全
- 喜报丨云和恩墨MogDB数据库与华为Taishan服务器完成兼容性认证
热门文章
- 飞天系统和linux,用Linux或Windows系统运行抢茅台脚本在性能上有区别吗?
- 重庆php就业前景,重庆就业前景最好的十大专业是哪些_中职中专网
- mysql 数据库切分_mysql数据库切分
- 一天一阔阔儿ZYNQ的linux移植完整版(Linux环境搭建以及内核编译)
- 服务器经常被攻击怎么办?这7个重要因素要做好!
- linux+qt4.8画波形图,Qt画笔实现波形区域图
- 如何用C语言画立体几何图形,立体几何图形公式大全
- 如何把小程序游戏运行到自有App中?(IOS篇)
- Android API统计
- JS临时死区(TDZ)