当前位置: 首页 > article >正文

python加载chgcar, aeccar压缩数据

数据来源:materials project网站下载的.json.gz压缩包
使用gzip包可以免解压直接读取
解压出来json文件的数据结构大概如代码所示
使用pymatgen.io.vaspChgcar对象,可以装载从json文件读出的结构数据和电荷密度数据

        with gzip.open(os.path.join(self.chgcar_dir, self.chgcar_list[idx]), 'rt') as gz_file:
            raw_data = json.load(gz_file)
        struc = raw_data['data']['poscar']
        chgcar_data = {'total': raw_data['data']['data']["total"]["data"],
                       'diff': raw_data['data']['data']["diff"]["data"]}
        chgcar_object = Chgcar(poscar=Poscar.from_dict(struc), data=chgcar_data)
        with gzip.open(os.path.join(self.aeccar0_dir, self.aeccar0_list[idx]), 'rt') as gz_file:
                raw_data0 = json.load(gz_file)
        with gzip.open(os.path.join(self.aeccar2_dir, self.aeccar2_list[idx]), 'rt') as gz_file:
                raw_data2 = json.load(gz_file)
        aeccar0_data = {'total': raw_data0['data']['data']["total"]["data"]}
        struc = raw_data0['data']['poscar']
        aeccar0_object = Chgcar(poscar=Poscar.from_dict(struc), data=aeccar0_data)
        aeccar2_data = {'total': raw_data2['data']['data']["total"]["data"]}
        struc = raw_data2['data']['poscar']
        aeccar2_object = Chgcar(poscar=Poscar.from_dict(struc), data=aeccar2_data)
``


http://www.kler.cn/news/309065.html

相关文章:

  • FRP之简单粗暴官方搭建【超详细教程】【排坑】【包括官网下载地址】【伸手党福利】
  • 容器镜像同步工具image-migrator
  • 第14章 存储器的保护
  • Linux网络子系统TCP篇 二
  • 【PostgreSQL里vacuum但是无法回收死元组的原因】
  • 解决 Docker 端口映射错误:“No public port ‘80’ published”
  • linux驱动开发-内核并发控制
  • 【网络安全】分享4个高危业务逻辑漏洞
  • 软件测试工程师面试整理-测试工具
  • unity UnityWebRequest 的request.downloadHandler 空应用
  • 承压设备032认证-全网最全解读
  • 随笔十一、wsl子系统ubuntu磁盘清理
  • 在Ubuntu 18.04上安装R的方法
  • navicate远程linux上的pgsql提示密码失败
  • Effective C++笔记之二十三:非void函数不写return
  • 基于STM32的非接触式红外测温系统
  • 采用qt做一个命令行终端
  • 计算机人工智能前沿进展-大语言模型方向-2024-09-17
  • Vue点击按钮生成pdf文件/Vue点击按钮生成png图片
  • AJAX(一)HTTP协议(请求响应报文),AJAX发送请求,请求问题处理
  • SAM 2: Segment Anything in Images and Videos
  • c语言中“typedef”关键字,对类型进行重命名
  • 渗透测试入门学习——php文件上传与文件包含
  • ubuntu个人实用配置问题
  • 零基础小白能学网络安全吗?
  • 科技引领未来生活——“光影漫游者”展览馆应用—轻空间
  • Linux-mysql5.7-mysql8.0安装包下载及安装教程,二合一
  • 第J3-1周:DenseNet算法 实现乳腺癌识别(pytorch)
  • 语音识别(Speech Recongnition)
  • C语言-数据结构 有向图拓扑排序TopologicalSort(邻接表存储)