Numpy科学计算IO读写小技巧npy二进制文件

在科学计算中,我们常常需要把numpy数组得到结果保存到磁盘上,然后在用画图软件画图。因此文件的IO是必不可少的。

这里一个技巧是利用numpy自带的save和load方法,就可以把numpy数组写入到二进制文件中,之后直接调用load进行处理,不用自己写循环输出成txt在处理。

    # 计算chi0
    time_start=time.time()
    print("Start Calculate chi0")
    chi0 = calculate_chi0(omegas,Gk_up_r,Gk_up_a,Gk_down_r,Gk_down_a,T,mu,N)
    time_end = time.time()
    print("Calculate chi0 cost :{:.2f}s".format(time_end-time_start))
    np.save('chi0.npy',chi0)
    np.save('chi0_00static.npy',chi0[0,:,0,0])
    np.save('chi0_00.npy',chi0[:,:,0,0])

    # RPA
    time_start=time.time()
    print("Start Calculate chi_RPA")
    chi_RPA = chi_RPA(chi0,U)
    time_end = time.time()
    print("Calculate chi_RPA cost :{:.2f}s".format(time_end-time_start))
    np.save('chi_RPA.npy',chi_RPA)
    np.save('chi_RPA_static.npy',chi_RPA[0,:,0,0])
    np.save('chi_RPA.npy',chi_RPA[:,:,0,0])

猜你喜欢

转载自blog.csdn.net/wwxy1995/article/details/112609927