deepmodeling / dpdata

A Python package for manipulating atomistic data of software in computational science
https://docs.deepmodeling.com/projects/dpdata/
GNU Lesser General Public License v3.0
202 stars 134 forks source link

[Feature Request] dpdata in conda-forge channel need to be updated. #612

Closed QuantumMisaka closed 8 months ago

QuantumMisaka commented 8 months ago

Summary

When I tried to use dpgen and dpdata installed by conda-forge channel, this error will occur in fp part which is using ABACUS as calculator

Description
------------
Traceback (most recent call last):
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/bin/dpgen", line 8, in <module>
    sys.exit(main())
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpgen/main.py", line 255, in main
    args.func(args)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpgen/generator/run.py", line 5411, in gen_run
    run_iter(args.PARAM, args.MACHINE)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpgen/generator/run.py", line 4766, in run_iter
    post_fp(ii, jdata)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpgen/generator/run.py", line 4626, in post_fp
    post_fp_abacus_scf(iter_index, jdata)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpgen/generator/run.py", line 4325, in post_fp_abacus_scf
    _sys = dpdata.LabeledSystem(
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/system.py", line 175, in __init__
    self.from_fmt(
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/system.py", line 212, in from_fmt
    return self.from_fmt_obj(load_format(fmt), file_name, **kwargs)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/system.py", line 1064, in from_fmt_obj
    data = fmtobj.from_labeled_system(file_name, **kwargs)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/plugins/abacus.py", line 57, in from_labeled_system
    return dpdata.abacus.scf.get_frame(file_name)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/abacus/scf.py", line 198, in get_frame
    force = get_force(outlines, natoms)
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/abacus/scf.py", line 137, in get_force
    force.append([float(f) for f in line.split()[1:4]])
  File "/lustre/home/2201110432/apps/deepmd-kit/2.2.7/lib/python3.10/site-packages/dpdata/abacus/scf.py", line 137, in <listcomp>
    force.append([float(f) for f in line.split()[1:4]])
ValueError: could not convert string to float: '(KBAR)'

I recognize that this is likely a file parsing problem after ABACUS v3.4.3, and I update my dpdata by

pip install --force-reinstall dpdata

and then no error above. Also I notice that the dpdata in conda-forge channel have the lower version 0.2.16

Detailed Description

dpdata in conda-forge channel need to be updated.

Further Information, Files, and Links

No response

njzjz commented 8 months ago

It seems the version is already v0.2.17:

image

https://github.com/conda-forge/dpdata-feedstock/pull/37 was merged four months ago.