本帖最后由 zjk0112 于 2022-8-8 18:40 编辑 破案了,感谢各位的建议和帮助。不过lapack的套娃代码实在有点多,就没截图,下次尝试上传.f90文档。问题不出在data和reshape,而是dgemm这个矩阵乘法的subroutine里面对lda参数理解有偏差。我把lda修改后问题的得到解决。后来,我也重复运行那段问题代码,有时会运行出结果,有时会跑不出值,有时vs2019卡住然后重启。我觉得可能是我IDE有问题。 |
Transpose 发表于 2022-8-7 22:11 万分感谢,确实不是data和reshape的问题,乌龙一场。 |
fcode 发表于 2022-8-8 08:46 好的,感谢雪球大神 |
3楼说得没错。 data 是按照内存顺序逐个填充,无论数据结构(一维或二维),所以是一种不建议使用的方式。 根据你给出的 program test1 代码,我试了一下,没有重现问题。不管是data还是reshape都是正常的。 (下次尽量复制粘贴代码,不要截图,我重新打一遍有点累) 如果有一份完整的,复制粘贴的代码可以测试,可能会更快的找出问题。 |
Transpose 发表于 2022-8-7 22:11 别建议了。能传的都传了。 |
本帖最后由 Transpose 于 2022-8-7 22:24 编辑 建议上传完整可运行的有问题的代码,方便查错。初步判断,这个应该和 data reshape 无关 ---- data 可以用于任意rank的数组,也可以放在任意位置,只会在程序开始调用一次 reshape 用于改变数组的rank,本身返回一个数组对象 |
我想知道data表示的数组是一维数组还是而二维数组,我能不能用data表示二维数组,还是不需要data表示二位数组。 |
捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )
GMT+8, 2024-11-23 17:09