Package: dspawpy
Introduction （简介）dspawpy is a post-processing tool mainly for DFT packageDS-PAW, providing some functions of data capture, conversion, structure conversion, and drawing. （dspawpy 主要是DS-PAW软件的后处理辅助工具，提供一些数据抓取、换算、结构转化、绘图功能）Installation （安装）Either by pip: （通过pip安装）pipinstalldspawpy-U--userOr by conda: （通过conda安装）condainstall-cconda-forgedspawpyCHANGELOG （版本更新简述）1.1.8功能强化： 体数据（volumetric data）支持自定义网格插值（调用scipy的RegularGridInterpolator插值器）；增加 txt 格式支持，每行包含格点的 xyz 坐标和具体数值1.1.7BUG修复： 修复conda install dspawpy后cli没有同步安装导致无法唤起的故障BUG修复： 移除 plot_dos 函数中 xlim、ylim两个参数类型提示，以避免python<3.9的运行错误BUG修复： 老版本python, pymatgen, monty等第三方库的兼容性问题1.1.6重要变更： cli 环境部署模块改成dspawpy更新模块，因为现在cli内置于dspawpy中，在hzw机器上唤起cli必定已经source环境了，不再需要原先的1.1功能；仅保留原先的1.2功能，即升级dspawpyBUG修复： 移除 plot_dos 函数中 xlim、ylim两个参数类型提示时使用的 | 符号（需要python3.10支持），以避免python<3.10的运行错误1.1.5功能强化： 从pmg中提取plot_dos函数，增加raw参数用于输出投影态密度绘图坐标点数据到dos_raw.csv，使用案例请参考辅助工具使用教程——dos部分1.1.4BUG修复： cli 5-6 d带中心参数传递错误BUG修复： cli 7-1 内部传参错误BUG修复： structure结构写成文件时应采用元素符号而不是带电荷的speciesBUG修复：init.py 中版本号未及时更新(影响1.1.2和1.1.3两个版本)1.1.3BUG修复： 增加cli所需两个依赖，移除python3.12的语法警告1.1.2功能强化： cli 默认调用 agg 作为matplotlib的绘图后端，避免在某些linux服务器上由于X11转发未设置导致的QT相关问题功能强化： cli 优化NEB链功能提示语BUG修复： 兼容python3.12和numpy>1.24BUG修复： 用户脚本兼容新旧pymatgenBUG修复： NEB续算默认备份文件夹改名成backup1.1.1重要变更： cli并入dspapwy，不需要再去官网下载cli了功能强化： cli多处细节优化，提升交互体验功能强化： 增加 dump_bs_raw() 和 dump_dos_raw() 函数，功能有限1.1.0BUG修复： io.write.write_VESTA() 和 io.write.write_delta_rho_vesta() 增加 inorm 参数，用于控制是否归一化（默认关闭）功能强化： io.write.write_VESTA() 和 io.write.write_delta_rho_vesta() 增加 compact 参数，可以在不影响VESTA显示效果的前提下，减小写出的文件（如 .cube ）体积（默认关闭）功能强化： 新增 bdplot() 函数（基于pymatgen的BSDOSPlotter类的get_plot函数优化），用于绘制能带态密度图，详见手册说明1.0.9BUG修复： as结构文件中的原子自由度标签可以将 Fix_x Fix_y Fix_z 缩写为 Fix，其他内容不变重要变更： 使用 diffusion.nebtools.write_json_chain/write_xyz_chain() 生成NEB链时如果step=-1，则优先读取 latestStructureXX.as，失败后尝试 nebXX.h5，最后尝试 nebXX.json；可以使用 ignorels 参数忽略 latestStructureXX.as1.0.8BUG修复： 准备弃用的 build_Structures_from_datafile() 未返回结构，read() 不受影响；其他调用 build_Structures_from_datafile() 的函数改为调用 readBUG修复： 修复 io.read.get_band_data() 考虑自旋且设置了zero_to_efermi时，自旋向下能带数据解析错误的问题功能强化： io.structure模块新增 read() 代替 build_Structures_from_datafile()，write() 代替 io.write.to_file()，convert() 封装 read() 和 write() 函数，便于快速调用1.0.5功能强化： to_file() 写pdb文件时，结构可以不含晶胞信息1.0.4BUG修复： build_Structures_from_datafile()选择原子序号时上限设置，h5文件里最后一个离子步信息改成尝试读取功能强化： build_Structures_from_datafile()支持读取pdb格式细节修改： AIMD读不到PressureKinetic信息时增加相应警告1.0.3BUG修复： 解决浮点数过大时volumetricData相关文件浮点数粘在一起的问题BUG修复： plot_barrier()读取neb.h5/json绘制能垒图时，反应坐标依旧累加BUG修复： plot_bandunfolding()能带反折叠费米能级被默认置零功能强化： 新增cube格式用于保存volumetricData功能强化： 全局支持相对路径与绝对路径混写功能强化： datafile参数以及io.read以及diffusion.nebtools模块中的相应参数，可以是文件位置，也可以是文件所在的文件夹路径功能强化： build_Structures_from_datafile()增加task参数，用于配合datafile为文件夹路径的情况重要变更： 移除中文提示语句，精简提示信息重要变更： volumetricData默认使用cube格式写入重要变更： 移除thermo_correction()，一个单纯的外包装函数细节修改： 保存图片或文件时，统一使用 ==> 标记文件绝对路径1.0.2BUG修复：  当存在Fix或Mag信息时，structure.as 坐标类型可能解析错误的问题功能强化： 预览NEB链条函数改名 write_xyz(json)_chain，增加dst参数制定保存路径功能强化： potential 中数据集不预作限制功能强化： get_lagtime_msd, get_lagtime_rmsd 自动从数据文件中读取timestep（以前必须手动指定）细节修改： 优化部分提示语句1.0.1BUG修复： to_file绑定filename参数，避免老版本pymatgen的兼容性问题BUG修复： average_along_axis的task参数改成大小写敏感，避免rhoBound任务类型解析错误功能强化： 将文件存入不存在的目录前，先创建（支持相对路径）功能强化： write_VESTA和average_along_axis增加subtype参数，指定TotalLocalPotential数据1.0.0BUG修复： 文件开头增加utf8编码声明功能强化： 电荷密度差分支持更多组分（不限二元）重要变更： io.utils的getZPE、getTSads、getTSgas函数，增加参数用于将计算结果存入文件重要变更： io.write.write_VESTA() data_type参数可选值从boundcharge改成rhoBound，且大小写敏感，从而保持与DS-PAW输出文件名相同0.9.9BUG修复： 修复新版numpy不支持混用array和list生成数组的问题BUG修复： 修复从json文件读能带时zero_to_efermi不生效的问题新增功能： build_Structures_from_datafile模块支持读取 neb.h5 和 phonon.h5 文件重要变更： 移除io模块中冗余的 _json.py （相关功能已整合进其他模块中并有所加强）重要变更： 删除 setup.py 中不需要的 joblib 依赖库0.9.8BUG修复： to_file 和 build_Structures_from_datafile 接口统一BUG修复： io.write模块涉及的保存文件操作，当目标路径上层文件夹不存在时将自动创建BUG修复： io.read.get_band_data的zero_to_efermi参数设置为True时，数据的处理逻辑BUG修复： io.read.get_sinfo读取relax.json不再因FixLattice而报错新增选项： nebtools的summary函数，新增show_converge用于控制是否显示收敛图，outdir用于指定收敛图的路径新增功能： 写文件涉及的操作，支持传入路径，而不单是文件名新增功能： nebtools的restart函数支持在Windows机器上操作，不必在旧NEB路径执行，备份路径可随意指定新增功能： nebtools的get_neb_subfolder函数新增return_abs参数，用于返回子文件夹的绝对路径重要变更： nebtools的restart函数删除inputin参数，采用压缩较快的zip方法，将生成zip压缩包而不是tar.xz重要变更： io.read.get_band_data的zero_to_fermi参数改名zero_to_efermi0.9.7BUG修复： get_rdf 元素对自己计算RDF时的索引新增选项：to_file 增加 si 参数，支持读入单个structure以及Structure列表0.9.6BUG修复： pymatgen支持的几类结构文件的读取接口0.9.5重要变更： get_band_data 的 shift_efermi 参数改名为 zero_to_fermi0.9.4新增功能： get_band_data 增加 shift_efermi 参数BUG修复： 电荷密度差分函数移除 numpy 多维数组的 shape 参数BUG修复： Fe_1 -> Fe+, Fe_2 -> Fe2+ 用于能带、态密度绘图0.9.3新增功能： 接入pymatgen支持的几类结构文件的读写操作新增功能： 支持通过dspawpy.__version__查看版本号重要变更： write_xyz_traj, write_dump_traj 并入 to_file 函数细节优化： 大幅提高RDF计算效率0.9.2新增功能： 支持从as文件中解析磁矩和FIX信息新增功能： 从h5/json文件中读取数据时支持指定读取的离子步（从1开始）0.9.1重要变更： 精简合并多个函数，统一调用方法新增功能： 支持合并多个xyz和dump文件细节优化： 读取h5或json文件后若无错误，不再打印空行细节优化： 耗时的RDF计算显示进度百分比0.9.0重要变更： 一些函数合并、所在模块迁移，请确认版本新增功能： 支持读取含多离子步计算结果的h5/json文件中的磁矩信息BUG修复： get_band_data 函数指定efermi不生效0.8.9BUG修复： d_band 脚本运行错误0.8.8新增功能： 支持读取正在进行中的NEB信息，生成movie轨迹文件（可用DS打开观察）新增功能： 支持NEB转XYZ轨迹文件（可用OVITO打开观察）新增功能： plot_aimd 支持读取多个h5文件画在同一张图中BUG修复： 电荷差分处理json文件报错BUG修复： 极化曲线标记的数值错误BUG修复： neb_movie_*.json 中反应坐标重复累加错误0.8.7代码重构，大幅修改数据结构，加速处理过程支持读取h5格式的输出文件新增AIMD, NEB等部分常用功能0.3.0对应2021A版本DS-PAW，辅助处理一些常见数据文件