目前我正在刷新我的Fortran95知识(不要问为什么)......
我遇到了一个问题.如何处理大整数,例如.大小:~7000000万
INTEGER(KIND = 3)不能保存此数字.如果有人感兴趣,我可用的编译器是Silverfrost FTN95.
我使用整数来运行更大的数据集.
你有什么建议吗?
首先:
所以现在我的问题是,我习惯于使用编程进行不同的科学计算.在复杂性和计算次数方面,我使用的一些东西非常紧张.所以我想知道,也许我可以使用OpenCL加快速度.
所以,我希望听到你们所有人的回答是以下一些[链接奖励]:
*什么样的计算/算法/一般问题适合OpenCL
*确定某些特定代码是否会因迁移到OpenCL而受益的一般原则是什么?
问候
作为一个小练习,我开始在python中使用数字代码,我正在尝试制作LDLT算法.只是为了"弄湿脚".
但是我似乎缺乏对numpy数组的基本理解.请参阅以下示例:
def ldlt(Matrix):
import numpy
(NRow, NCol) = Matrix.shape
for col in range(NCol):
Tmp = 1/Matrix[col,col]
for D in range(col+1, NCol):
Matrix[col,D] = Matrix[D,col]*Tmp
if __name__ == '__main__':
import numpy
A = numpy.array([[2,-1,0],[-1,2,-1],[0,-1,2]])
ldlt(A)
Run Code Online (Sandbox Code Playgroud)
这个例子不是我正在处理的完整代码.但是,尝试运行它,并在Matrix [col,D] = ...设置断点.
我对第一次评估的期望是第0行第1列(起始值-1)被设置为等于= -1*(1/2)= -0.5.
但是在运行代码时,它似乎设置为0.为什么?必须有一些基本的东西,我还没有真正理解?
在此先感谢所有帮助我的人.
Python Ver.:3.3 Tmp.:变为0.5(由我的调试器报告).