匹夫艺人 发表于 2008-6-29 17:37

VB程序,如何提高运算速度

最近为了直观,用VB改写了一个Fortran程序,其中用到了麦克斯韦速度分布,当考虑到分子热运动的影响时,速度分布积分是一个余误差函数,求近似解时要循环5000万次,这样子下来,计算一个数据,我的电脑要1分钟左右,可以忍受。。

        但当我进行工程运算,对此程序进行调用,而调用次数至少要在800次左右,才能计算出一个数据,这就意味着我的电脑要开机十几个小时,才能获得一个数据,。。。。

      我想知道,Fortran是纯数值运算,运算速度能比VB快多少?
[attach]35943[/attach]

其中V0是常数7.8,a为角度0-180°,m为分子量,v是积分变量

图片中公式就是我所的积分,那位能给我提供一组代码呢。谢谢。。

    linux/unix比Xp运算速度快多少

怎么优化一下,才能提高运算速度,缩短计算时间呀。。。

以下是我的电脑配置:

CPU:AMD Athlon3000+
主板:ASUS  A8V-E SE
条子:KINGSOFT  DDR2  400  1G
显卡:onda xf550白金版
硬盘:mator (sata)160G 8m

[[it] 本帖最后由 匹夫艺人 于 2008-6-29 18:17 编辑 [/it]]

[[it] 本帖最后由 匹夫艺人 于 2008-6-29 18:18 编辑 [/it]]

[[it] 本帖最后由 匹夫艺人 于 2008-6-29 18:26 编辑 [/it]]

multiple1902 发表于 2008-6-29 17:46

VB毕竟是伪编译,很影响速度,如果用C++之类实现应该能快上不少。

其次就是优化代码,还有就是能否改写算法,使之可以分布式计算。

匹夫艺人 发表于 2008-6-29 18:31

谢谢了

可是没学过C++,这个VB都折腾了我两个月,才有了点结果。。

那位仁兄能够给小弟提供一下1楼积分的代码。。

不胜感激。。

永夜的极光 发表于 2008-6-29 18:33

计算类的东西,肯定不能完全用VB写的
用fortran,matlab,c/c++,汇编都可以

flyue 发表于 2008-6-29 19:18

VB程序总是比别的程序慢半拍。。。
告诉你,在所有编程语言中,汇编是最快的,其次是VC++

匹夫艺人 发表于 2008-6-29 19:37

我错了,郁闷。。。
早知道,当初就不费劲的学VB了。。。
现在,再没时间和精力学这东东了。。。。将就用吧。。

flyue 发表于 2008-6-29 19:50

呵呵,没关系。我一开始也是学的VB呀,打基础嘛。
以后学别的编程语言还有的是时间

页: [1]

编程论坛