This issue comes from a Codex global scan of deepmodeling/deepmd-kit at commit 73de44b1f94471b2e3bdb6b11f57b34d7bc791bb.
Problem
data/raw/raw_to_set.sh splits global dipole.raw and polarizability.raw files:
|
test -f dipole.raw && split dipole.raw -l $nline_per_set -d -a 3 dipole.raw |
|
test -f polarizability.raw && split polarizability.raw -l $nline_per_set -d -a 3 polarizability.raw |
Later, each set directory tries to convert dipole.raw and polarizability.raw if those files exist inside the set:
|
python -c \ |
|
'import numpy as np; import os.path; |
|
if os.path.isfile("dipole.raw"): |
|
data = np.loadtxt("dipole.raw", ndmin = 2); |
|
data = data.astype (np.float64); |
|
np.save ("dipole", data) |
|
' |
|
python -c \ |
|
'import numpy as np; import os.path; |
|
if os.path.isfile("polarizability.raw"): |
|
data = np.loadtxt("polarizability.raw", ndmin = 2); |
|
data = data.astype (np.float64); |
|
np.save ("polarizability", data) |
However, the move block only moves atomic_dipole.raw$pi and atomic_polarizability.raw$pi; it omits the split global files dipole.raw$pi and polarizability.raw$pi:
|
mv box.raw$pi set.$pi/box.raw |
|
mv coord.raw$pi set.$pi/coord.raw |
|
test -f energy.raw$pi && mv energy.raw$pi set.$pi/energy.raw |
|
test -f force.raw$pi && mv force.raw$pi set.$pi/force.raw |
|
test -f virial.raw$pi && mv virial.raw$pi set.$pi/virial.raw |
|
test -f atom_ener.raw$pi && mv atom_ener.raw$pi set.$pi/atom_ener.raw |
|
test -f fparam.raw$pi && mv fparam.raw$pi set.$pi/fparam.raw |
|
test -f atomic_dipole.raw$pi && mv atomic_dipole.raw$pi set.$pi/atomic_dipole.raw |
|
test -f atomic_polarizability.raw$pi && mv atomic_polarizability.raw$pi set.$pi/atomic_polarizability.raw |
Impact
Datasets containing global dipole or polarizability labels silently lose those labels during conversion. The split files remain in the raw directory instead of being moved into set.*/, so dipole.npy and polarizability.npy are never generated.
Suggested fix
Move dipole.raw$pi to set.$pi/dipole.raw and polarizability.raw$pi to set.$pi/polarizability.raw before entering the set directory, matching the existing conversion blocks.
This issue comes from a Codex global scan of
deepmodeling/deepmd-kitat commit73de44b1f94471b2e3bdb6b11f57b34d7bc791bb.Problem
data/raw/raw_to_set.shsplits globaldipole.rawandpolarizability.rawfiles:deepmd-kit/data/raw/raw_to_set.sh
Lines 20 to 21 in 73de44b
Later, each set directory tries to convert
dipole.rawandpolarizability.rawif those files exist inside the set:deepmd-kit/data/raw/raw_to_set.sh
Lines 81 to 93 in 73de44b
However, the move block only moves
atomic_dipole.raw$piandatomic_polarizability.raw$pi; it omits the split global filesdipole.raw$piandpolarizability.raw$pi:deepmd-kit/data/raw/raw_to_set.sh
Lines 33 to 41 in 73de44b
Impact
Datasets containing global dipole or polarizability labels silently lose those labels during conversion. The split files remain in the raw directory instead of being moved into
set.*/, sodipole.npyandpolarizability.npyare never generated.Suggested fix
Move
dipole.raw$pitoset.$pi/dipole.rawandpolarizability.raw$pitoset.$pi/polarizability.rawbefore entering the set directory, matching the existing conversion blocks.