第十一次作业

第五章场问题,选做了课后5.1题


由场中已知的边界位置电势来确定其它各处的电势,之后进一步求电场强度。


解题分析

观察下图,已知小正方形区域为一等势体区域,且电势为1;大正方形外框亦为一等势边界,电势为0。则由系统整体的对称性,设置各选定位置处的电势初始参考值

教材提供的题图

如下图,将小正方形和大正方形之间的距离等分为三份(分界线由虚线标出),并将电势差等分,设置各虚线处的具体参考值(已标识于虚线处):

一,9×9矩阵

设置一个9×9的矩阵,记录下初始值,之后进行迭代更新。迭代时应注意到小正方形区域和大正方形边框处的电势不应变化。

上图即为场区域一些格点处的初始电势设定值。

Mathematica代码:

While[Abs[u1 - (u[[2, 1]] + u[[2, 3]] + u[[1, 2]] + u[[3, 2]])/4] >= 10^-4,

For[i = 2, i <= 8, i++,

For[j = 2, j <= 8, j++,

If[i >= 4 && i <= 6 && j >= 4 && j <= 6, Null, u[[i, j]] = (u[[i, j - 1]] + u[[i, j + 1]] + u[[i - 1, j]] + u[[i + 1, j]])/4]]]; u1 = u[[2, 2]]];

MatrixForm[u]

设定的迭代终止条件为矩阵元素(2,2)在迭代前后值之差小于10^-4,得到迭代结果矩阵为(截图效果AV画质。。。):

按矩阵元素值的大小对应颜色深浅,画出颜色表示图(外周一圈纯白表示着0):

二,17×17矩阵

由上图可直观的看出迭代达到稳定时势场的大致分布,但像素点还有待增多,增多后效果会很好。我试着写任意步长细分区域的程序,而且把初始矩阵的设定也有编程解决了,于是这个问题在任意细分下的情况也可以解决,首先,设置初始矩阵为17×17,矩阵初始值自动设定程序为:

Mathematica代码:

step = .166667;

For[i = 1, i <= 17, i++,

For[j = 1, j <= 17, j++,

If[(i == 2 || i == 16) && (j >= 2 && j <= 16) || (j == 2 || j == 16) && (i >= 2 && i <= 16), u[[i, j]] = step*1];

If[(i == 3 || i == 15) && (j >= 3 && j <= 15) || (j == 3 || j == 15) && (i >= 3 && i <= 15), u[[i, j]] = step*2];

If[(i == 4 || i == 14) && (j >= 4 && j <= 14) || (j == 4 || j == 14) && (i >= 4 && i <= 14), u[[i, j]] = step*3];

If[(i == 5 || i == 13) && (j >= 5 && j <= 13) || (j == 5 || j == 13) && (i >= 5 && i <= 13), u[[i, j]] = step*4];

If[(i == 6 || i == 12) && (j >= 6 && j <= 12) || (j == 6 || j == 12) && (i >= 6 && i <= 12), u[[i, j]] = step*5];

If[(i == 7 || i == 11) && (j >= 7 && j <= 11) || (j == 7 || j == 11) && (i >= 7 && i <= 11), u[[i, j]] = 1];

If[(i == 8 || i == 10) && (j >= 8 && j <= 10) || (j == 8 || j == 10) && (i >= 8 && i <= 10), u[[i, j]] = 1];

If[i == 9 && j == 9, u[[i, j]] = 1]]]

因为区域被分成了更多小区域,所以判断稳定的条件由之前的10^-4改变为10^-5,得稳定的17×17矩阵为(请忽略画质。。。可点击原图查看,会清晰一些):

彩图为:

中心小正方形为1势能区域,最外面一圈为0势能,颜色由红向蓝过度,势能值由1向0减小,此图已经比较细腻了,显示效果也比较好。颜色相同的条带可近似看作是等势线。

三,33×33矩阵

为了更好的显示效果,做了个33×33矩阵,运行结果矩阵很大,迭代运算的截止精度也向小数点后又推进了一位,达到了10^-6,最终结果矩阵大到无法完全截屏(下图只截取了一部分):

但彩图的效果很好:

从上图已经可以看出很好的显示效果了,直观又上眼。其“等势线”也更加精细,场的分布已经比较了然,是一个很好的效果。


我在编程过程中发现在理解了教材的算法和原理后,用Mathematica处理这个问题很容易,于是顺便把下题也解决了,与上题不同,此题的初始电势值设置要从头再来,且+1与-1之间也不是上题中的小正方形区域:

在上题的代码基础上,修改一下限制条件,有:

Mathematica代码:

While[Abs[u1 - (u[[2, 1]] + u[[2, 3]] + u[[1, 2]] + u[[3, 2]])/4] >= 10^-4, For[i = 2, i <= 8, i++, For[j = 2, j <= 8, j++, If[i >= 4 && i <= 6 && (j == 4 || j == 6), Null, u[[i, j]] = (u[[i, j - 1]] + u[[i, j + 1]] + u[[i - 1, j]] + u[[i + 1, j]])/4]]]; u1 = u[[2, 2]]]

MatrixForm[u]

运行结果矩阵为:

由该矩阵我们能发现势场分布与之前一题在左部分矩阵元上的区别,此题左半部分势场虽然有与上一题相似的地方(位于势值1和势值0之间),但是由于势值1区域由小正方形平板缩小为一个线分布,且右半部分增加了势值为-1的线分布,对势值有了明显影响。

转换为颜色图,效果更直观(蓝色越深,值越小,白色为0势值,颜色越偏向黄则势值越大):

因为这个题目初始矩阵的设置比较麻烦,故只做了9×9的矩阵,但原理是类似的。


结论

由课本的拉普拉斯等式出发,做分析得出数值解法,取得了一定效果,稳定矩阵的存在表明了方法的可靠性,矩阵转换为彩图显示令结果更加明显而直观,将区域细分为更多取样点,初始矩阵越大时,最终结果越精细,越了然直观。不得不说,课本的分析介绍的这种数值方法很好很有用,取样点密度高了之后会有更好的结果。


说明

这次我没用Python,改用的Mathematica。我现在对那玩意有点阴影,有时候出问题找不到源头。。。但既然是计算物理而不是计算Python,用什么工具就不重要了,结果出来了就行。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,723评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,485评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,998评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,323评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,355评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,079评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,389评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,019评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,519评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,971评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,100评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,738评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,293评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,289评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,517评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,547评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,834评论 2 345

推荐阅读更多精彩内容