二维泊松方程有限差分数值求解系统
项目介绍
本项目实现二维经典泊松方程的数值求解,采用有限差分法进行空间离散化。系统支持自定义边界条件和源项函数,能够生成均匀网格并高效计算数值解。程序包含完整的误差分析和可视化模块,可直观展示数值解并与解析解进行对比验证。
功能特性
- 有限差分离散:采用五点差分格式对泊松方程进行空间离散
- 灵活输入支持:自定义求解区域、网格密度、边界条件和源项函数
- 高效求解算法:基于稀疏矩阵技术的迭代求解(Gauss-Seidel或共轭梯度法)
- 全面结果分析:提供数值解、收敛历史、误差分析和性能统计
- 丰富可视化:生成三维曲面图、等值线图等直观展示图形
使用方法
基本输入参数
- 求解区域:矩形区域
[x_min, x_max] × [y_min, y_max] - 网格参数:x方向和y方向的网格点数
(nx, ny) - 边界条件:四边Dirichlet边界值函数
- 源项函数:
f(x,y)函数句柄或数值数组 - 求解参数:最大迭代次数、收敛容差等(可选)
输出结果
- 数值解矩阵:二维网格点上的解u(x,y)的数值近似
- 收敛历史:迭代过程中的残差变化曲线
- 可视化图形:数值解的三维曲面图、等值线图
- 误差分析:与解析解的绝对误差和相对误差(若提供解析解)
- 性能指标:计算时间、内存使用情况、迭代次数等统计信息
系统要求
- MATLAB R2018a或更高版本
- 推荐内存:4GB以上(对于大型网格问题)
- 必要工具箱:无特殊要求(基础MATLAB环境即可运行)
文件说明
主程序文件整合了系统的核心功能流程,包括问题参数设置、网格生成、方程离散化、线性系统求解、结果验证和可视化输出等完整计算环节。该文件实现了从输入处理到最终结果展示的全套解决方案,用户可通过修改相应参数配置来求解不同的泊松方程问题。