24小时热门版块排行榜    

Znn3bq.jpeg
北京石油化工学院2026年研究生招生接收调剂公告
查看: 2256  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

ll20100996

禁虫 (知名作家)

本帖内容被屏蔽

已阅   关注TA 给TA发消息 送TA红花 TA的回帖

superstat54

木虫 (小有名气)

【答案】应助回帖

ll20100996(金币+2): 我用fortran编了,快一倍。呵呵 2011-06-22 08:56:39
高效的Matlab程序,尽量避免使用循环语句,更多的采用向量化的编程方式,即使用矩阵。修改如下:
clear;
tic
N=10;tn=4E4;a=3.905E-10;b=3.905E-10;c=4.2E-10;K0=0; n3=4-1;
            for n1=1:tn
                n2=1:n1-1;
                K01=2*a*b*c*(3*n3^2*c^2./(n1^2*a^2+n2.^2*b^2+n3^2*c^2)-1)./((n1^2*a^2+n2.^2*b^2+n3^2*c^2).^1.5*2*pi*8.85E-12);
                K0 = K0 - sum(K01);
                K0=K0-a*b*c*(3*n3^2*c^2/(n1^2*a^2+n1^2*b^2+n3^2*c^2)-1)/((n1^2*a^2+n1^2*b^2+n3^2*c^2).^1.5*2*pi*8.85E-12);
            end
            n1=1:tn;
            K02=a*b*c*(3*n3^2*c^2./(n1.^2*a^2+n3^2*c^2)-1)./((n1.^2*a^2+n3^2*c^2).^1.5*2*pi*8.85E-12);%n2=0 Or b=0
            K0 = K0 - sum(K02);
            K0=K0-a*b*c*(3*n3^2*c^2/(n3^2*c^2)-1)/((n3^2*c^2)^1.5*8*pi*8.85E-12)
toc;
对比:
tn=4E3,
原程序:
时间:2.550174 seconds,K0=-6.8388e+006;
修改后,时间:2.190174 seconds,K0=-6.8388e+006;

tn=4E4,
原程序,运行N久,没有等到结果就放弃了
修改后,时间155 s, K0 = -6.85e+005
tn=4E5时,你自己尝试一下吧,运行时间估计随tn成平方关系增长。
7楼2011-06-21 23:55:42
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖


ll20100996(金币+1): 我试过,可是数组太大,电脑不支持啊!~还是谢谢啦! 2011-06-15 12:05:03
dubo(金币+1): 欢迎常来程序语言版讨论 2011-06-15 23:10:34
matlab循环很慢,fortran相比要快得多。可以考虑把循环拆开换成数组运算,会有一定提高。
2楼2011-06-15 11:18:17
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖


ll20100996(金币+1): 我会考虑下你的建议。可是我的C基础不好,如何并行化也不清楚啊!能否具体说下呢?非常感谢! 2011-06-15 12:06:23
jjdg(金币+1): 感谢支招 2011-06-15 12:18:50
用C重写,而且这段代码可以很大程度地并行化咯。
嗯,提高1024倍没问题咯。
3楼2011-06-15 11:41:33
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

coolrainbow

木虫 (著名写手)

未来国家冻凉


jjdg(金币+1): 感谢支招 2011-06-15 12:19:01
改成C后,把^2 改成*,然后用openmp来并行下,很简单的
技术博客:http://hi.baidu.com/coolrainbow/blog
4楼2011-06-15 12:10:21
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 计算机408|在校多次国家级竞赛获奖|申请调剂 +4 东山大白鹅 2026-04-05 4/200 2026-04-08 00:18 by chongya
[考研] 作栽330调剂 +3 我要上好学 2026-04-02 4/200 2026-04-07 19:54 by biomichael
[考研] 一志愿哈工大,初试329,求环境科学与工程调剂! +10 余未辛 2026-04-06 10/500 2026-04-07 15:44 by 上岸快快
[考研] 一志愿北京化工085600 310分求调剂 +20 0856材料与化工3 2026-04-04 22/1100 2026-04-07 15:14 by 上岸快快
[考研] 085405软件工程301分求调剂,专硕可跨专业,四六级已过 +3 静静想想 2026-04-05 3/150 2026-04-06 15:23 by nepu_uu
[考研] 281求调剂 +8 椰子蘑菇 2026-04-06 8/400 2026-04-06 10:38 by 蓝云思雨
[考研] 0703求调剂383分 +9 W55j 2026-04-03 9/450 2026-04-06 06:50 by houyaoxu
[考研] 322求调剂 +3 嗯哼哼恒 2026-04-05 3/150 2026-04-05 19:52 by nepu_uu
[考研] 275求调剂 +16 waltzh 2026-04-01 16/800 2026-04-05 17:14 by Hdyxbekcb
[考研] 271分求调剂学校 +12 zph158488! 2026-04-02 13/650 2026-04-05 10:13 by lqwchd
[考研] 材料与化工306分找调剂 +23 沧海轻舟e 2026-04-02 27/1350 2026-04-04 21:52 by laoshidan
[考研] 085400电子信息319求调剂(接受跨专业调剂) +5 星星不眨眼喽 2026-04-03 6/300 2026-04-04 21:50 by hemengdong
[考研] 0835学硕299求调剂 08大类可接受 +5 useryy 2026-04-03 5/250 2026-04-04 20:07 by 蓝云思雨
[考研] 311求调剂 +20 zchqwer 2026-04-01 22/1100 2026-04-03 22:09 by lglzsd
[考研] 一志愿华中农业071010,总分320求调剂 +7 困困困困坤坤 2026-04-02 7/350 2026-04-03 17:26 by Yuena_Wang
[考研] 289-求调剂 +4 这里是_ 2026-04-03 4/200 2026-04-03 14:23 by 1753564080
[考研] 085600,320分求调剂 +6 大馋小子 2026-04-02 6/300 2026-04-02 21:54 by dongzh2009
[考研] 一志愿武汉理工0856,初试334 +3 26考研材料 2026-04-02 3/150 2026-04-02 21:22 by dongzh2009
[考研] 265求调剂 +11 yelck 2026-04-01 12/600 2026-04-01 19:12 by 549790059
[考研] 318求调剂 +8 七忆77 2026-04-01 8/400 2026-04-01 10:37 by Jaylen.
信息提示
请填处理意见