用有限元方法解二维的拉普拉斯方程,求出有边缘二维面上的电势分布

这里以计算10x10区域为演示,当差异小于设置值后停止演算

Code:

#include <QCoreApplication>
#include "math.h"
void Matrix_Init();
int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);Matrix_Init();return a.exec();
}void Matrix_Init()
{int xMax = 10;int yMax = 10;double maxt = 1;double t = 0;int i = 0,j = 0;int k = 0;double MatrixOrigin[10][10],MatrixNext[10][10];printf("Current matrix start parameter:\r\n X MAX: %d  Y MAX: %d\r\n",xMax,yMax );for (i = 0;i < yMax;i += 1)//Init Matrix{for (j = 0;j < xMax;j += 1){MatrixNext[i][j] = 0;MatrixOrigin[i][j] = 0;}}for (i = 1;i < xMax-1;i += 1)//Set 100V area{MatrixOrigin[0][i] = 100;MatrixNext[0][i] = 100;}for (i = 0;i < yMax;i += 1){for (j = 0;j < xMax;j += 1){printf("%.0f ", MatrixNext[i][j]);}printf("\r\n");}k = 0;while (maxt > 0.00001){k += 1;maxt = 0;for (i = 1;i < yMax-1;i += 1){for (j = 1;j < xMax-1;j += 1){MatrixNext[i][j] = (MatrixOrigin[i][j + 1] + MatrixOrigin[i][j - 1] + MatrixOrigin[i + 1][j] + MatrixOrigin[i - 1][j]) / 4;t = fabs(MatrixNext[i][j] - MatrixOrigin[i][j]);if (t > maxt){maxt = t;}}}printf("\r\n--------------%d----------------\r\n",k);for (i = 0;i < yMax;i += 1)//Init Matrix{for (j = 0;j < xMax;j += 1){printf("%.6f ", MatrixNext[i][j]);MatrixOrigin[i][j] = MatrixNext[i][j];}printf("\r\n");}}printf("\r\n Count over.Final convergency value:%f \r\n",maxt);return;}

有限元方法编程计算电场中各个区域分布的电势相关推荐

  1. Python计算电场中两点间的电势差

    参考代码: 前天有奖答题内容: 1000道Python题库系列分享14(1道代码阅读题) 参考答案: 该问题功能为求解在n个物品中任选i个物品有多少种选法,也就是组合数C(n,i). 根据组合数定义, ...

  2. 使用矩形法(三种形式)、梯形法、辛普生方法编程计算

    题号: 编写文件:在matlab中创建新脚本,并保存,然后在命令行执行. function ss=exam3_1(t,a,b,n) dx=(b-a)/n; syms x; ff=x*exp(x)*si ...

  3. linux多进程编程计算圆周率,中值积分定理计算PI值的多线程实现

    // Parallel.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include #include static long num_ ...

  4. shell编程计算1-1000中所有3或5的倍数之和

    #!/bin/bash sum=0 int=1 while((int<=1000)) doif (( $int%3==0 )) || (( $int%5==0 ));thensum=$((sum ...

  5. 作业2018.12.9日,第2题:编程计算1-50中7的倍数之和

    int n = 0;int sum = 0;while(n <= 50){if(n % 7 == 0){sum += n;}n++;}System.out.println(sum);

  6. OC特有语法:分类category,给NSString增加方法计算字符串中数字的个数

    1:分类的使用场景:想对一个类,扩充一些功能,而又不改变原来类的模型,也不用继承,这时OC中的特有语法:分类可以做到: 当然分类也是一个类,也需要声明和实现,声明在.h文件中,实现在.m文件中,格式如 ...

  7. matlab中表示拉普拉斯分布_双导体球在匀强外电场中的空间电场分布

    导体球或球壳在匀强外电场中的场强分布是电动力学中的经典题目,也是大家所熟悉的题目,但均匀电场中出现两个导体球或球壳(二聚体)时的场强却少有讨论.两导体球电极化所引起的导体球间电磁场的局域增强是表面等离 ...

  8. Java计算字符串中指定字符的出现次数

    1.概述 有很多方法可以计算Java中字符串中 char 的出现次数. 在本快速教程中,我们将重点介绍如何计算字符数的几个示例--首先使用核心 Java 库,然后使用其他库和框架,例如 Spring ...

  9. php单词出现频率,PHP编程计算文件或数组中单词出现频率的方法

    本文实例讲述了PHP编程计算文件或数组中单词出现频率的方法.分享给大家供大家参考,具体如下: 如果是小文件,可以一次性读入到数组中,使用方便的数组计数函数进行词频统计(假设文件中内容都是空格隔开的单词 ...

最新文章

  1. 静态链接库与动态链接库 (二)动态链接库的编译与使用
  2. OpenJudge/Poj 2001 Shortest Prefixes
  3. 国外程序员收集整理的PHP资源大全
  4. (十)装饰器模式详解(与IO不解的情缘)
  5. JavaWeb学习总结(六)—HttpServletResponse
  6. 用python 10min手写一个简易的实时内存监控系统
  7. (NO.00005)iOS实现炸弹人游戏(七):游戏数据的序列化表示
  8. 看呆了!日本男粉丝凭瞳孔倒影找到偶像住所 实施猥亵...
  9. Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案
  10. 几何畸变的类型_第七讲 几何纠正(摄影测量与遥感).pdf
  11. 适合iOS的15大网站推荐
  12. 【全网最全】100款七夕节情人节表白网页制作HTML+CSS+JS
  13. qq空间已删信息服务器,qq空间恢复已删除的说说方法
  14. zui php,ZUI前端html5框架 php版 v1.9.1
  15. vue 项目打包后可以改为动态配置域名地址
  16. Android Wear 2.0首款手表来了;工信部明确增加物联网网号 | IoT黑板报
  17. 【LoRaWan】节点端(一)--SX1278介绍
  18. 原码一位乘、补码一位乘(校正法、布斯法)、补码两位乘
  19. 19种分布式系统设计模式
  20. python微博爬虫代码_python 微博爬虫 示例源码(lxml)

热门文章

  1. 字典树在车站查询功能中的应用
  2. 计算机基础知识的看法,关于《计算机应用基础知识》课程教学的看法
  3. 重装Ubuntu时如何保留/home分区中的数据
  4. iPhone忘记锁屏密码,多次输错被禁用?三种方法轻松解决!
  5. 高并发下如何设计秒杀系统
  6. 2020年824计算机辅助制造,【2017年整理】西北工业大学824计算机辅助制造课件8.ppt...
  7. educoder平台 python: 用字典实现单词识别
  8. 同步发电机励磁调节实验原理_原来如此——理双馈异步发电机与同步发电机的性能和应用比较...
  9. python应届生工资_Python这么火热,本科应届生薪资这么高?
  10. 给一个不多于5位的正整数,并要求求出它的位数,且正序输出和反序输出