pwact 0.4.0.dev0__tar.gz → 0.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pwact-0.4.0.dev0 → pwact-0.4.1}/PKG-INFO +1 -1
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/lammps.py +64 -13
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/file_operation.py +1 -1
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact.egg-info/PKG-INFO +1 -1
- {pwact-0.4.0.dev0 → pwact-0.4.1}/setup.py +1 -1
- {pwact-0.4.0.dev0 → pwact-0.4.1}/LICENSE +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/README.md +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/environment.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/explore/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/explore/run_model_md.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/explore/select_image.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/aimd.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/direct.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/duplicate_scale.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/explore.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/init_bulk_run.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/relabel.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/init_bulk/relax.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/label/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/label/labeling.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/slurm/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/slurm/slurm.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/slurm/slurm_tool.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/test/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/test/test.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/test/uma_md.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/train/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/train/dp_kpu.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/train/train_model.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/cmd_infos.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/init_bulk_input.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/iter_input.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/resource.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/scf_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/model_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/nep_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/nn_feature_type.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/optimizer_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/train_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/work_file_param.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/workdir.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/bin/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/data_format/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/data_format/configop.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/main.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/common.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/cp2k.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/cp2k_dp.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/do_direct_sample.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/do_eqv2model.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/app_lib/pwmat.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/constant.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/draw/__init__.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/draw/hist_model_devi.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/format_input_output.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/json_operation.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/pre_al_data_util.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/process_tool.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/slurm_script.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/utils/tmp.py +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact.egg-info/SOURCES.txt +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact.egg-info/dependency_links.txt +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact.egg-info/entry_points.txt +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/pwact.egg-info/top_level.txt +0 -0
- {pwact-0.4.0.dev0 → pwact-0.4.1}/setup.cfg +0 -0
|
@@ -259,7 +259,7 @@ def make_lammps_input_from_lmp_in_file(
|
|
|
259
259
|
# boundary p p p
|
|
260
260
|
# atom_style atomic
|
|
261
261
|
# remove mass pair_style pair_coeff dump
|
|
262
|
-
lmp_content = remove_lmps_lines(lmp_content)
|
|
262
|
+
lmp_content, insert_info = remove_lmps_lines(lmp_content)
|
|
263
263
|
lmp_content.insert(0, "variable DUMP_FREQ equal %d\n" % trj_freq)
|
|
264
264
|
lmp_content.insert(1, "variable restart equal %d\n" % restart)
|
|
265
265
|
|
|
@@ -290,10 +290,15 @@ def make_lammps_input_from_lmp_in_file(
|
|
|
290
290
|
|
|
291
291
|
if merge_traj is True:
|
|
292
292
|
dump_line = "dump 1 all custom ${DUMP_FREQ} all.lammpstrj id type x y z fx fy fz\n"
|
|
293
|
-
|
|
293
|
+
if "dump_modify" in insert_info.keys():
|
|
294
|
+
dump_line += 'if "${restart} > 0" then' + 'dump_modify 1 {} append yes\n'.format(" ".join(insert_info['dump_modify'].split()[2:]))
|
|
295
|
+
else:
|
|
296
|
+
dump_line += 'if "${restart} > 0" then "dump_modify 1 append yes"\n'
|
|
294
297
|
else:
|
|
295
298
|
dump_line = "dump 1 all custom ${DUMP_FREQ} traj/*.lammpstrj id type x y z fx fy fz\n"
|
|
296
|
-
|
|
299
|
+
if "dump_modify" in insert_info.keys():
|
|
300
|
+
dump_line += 'dump_modify 1 {}\n'.format(" ".join(insert_info['dump_modify'].split()[2:]))
|
|
301
|
+
|
|
297
302
|
dump_line += "restart 10000 lmps.restart\n"
|
|
298
303
|
dump_line += "\n"
|
|
299
304
|
|
|
@@ -307,16 +312,38 @@ def make_lammps_input_from_lmp_in_file(
|
|
|
307
312
|
return "".join(lmp_content)
|
|
308
313
|
|
|
309
314
|
def remove_lmps_lines(lmps_lines):
|
|
310
|
-
removes = ["dump_freq", "
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
)
|
|
318
|
-
|
|
319
|
-
|
|
315
|
+
removes = ["dump_freq", "restart","read_data"]
|
|
316
|
+
remove_head = ["mass", "units", "boundary", "atom_style", "pair_style", "pair_coeff", "dump"]
|
|
317
|
+
|
|
318
|
+
insert_head = ["dump_modify"]
|
|
319
|
+
new_line = []
|
|
320
|
+
insert_info = {}
|
|
321
|
+
for idx, line in enumerate(lmps_lines):
|
|
322
|
+
if line.lstrip() == '' or line.lstrip().startswith('#'):
|
|
323
|
+
new_line.append(line)
|
|
324
|
+
continue
|
|
325
|
+
if any (keyword.lower() == line.lstrip().split()[0].lower() for keyword in insert_head):
|
|
326
|
+
insert_info[line.lstrip().split()[0].lower()] = line
|
|
327
|
+
continue
|
|
328
|
+
if any(
|
|
329
|
+
keyword.lower() in line.lower() for keyword in removes
|
|
330
|
+
):
|
|
331
|
+
continue
|
|
332
|
+
if any (keyword.lower() == line.lstrip().split()[0].lower() for keyword in remove_head):
|
|
333
|
+
continue
|
|
334
|
+
new_line.append(line)
|
|
335
|
+
# new_lines = [
|
|
336
|
+
# line for line in lmps_lines
|
|
337
|
+
# if line.lstrip().startswith('#')
|
|
338
|
+
# or (not any(
|
|
339
|
+
# keyword.lower() in line.lower()
|
|
340
|
+
# for keyword in removes
|
|
341
|
+
# ) and not (
|
|
342
|
+
# keyword.lower() in line.lstrip().split()[0].lower()
|
|
343
|
+
# for keyword in remove_head
|
|
344
|
+
# ))
|
|
345
|
+
# ]
|
|
346
|
+
return new_line, insert_info
|
|
320
347
|
|
|
321
348
|
def find_first_run_cmd_line(lmps_lines):
|
|
322
349
|
for i, line in enumerate(lmps_lines):
|
|
@@ -325,3 +352,27 @@ def find_first_run_cmd_line(lmps_lines):
|
|
|
325
352
|
return -(len(lmps_lines) - i)
|
|
326
353
|
return None
|
|
327
354
|
|
|
355
|
+
if __name__=="__main__":
|
|
356
|
+
lmp_in_file = "/data/home/wuxingxing/datas/debugs/czy/lammps.in"
|
|
357
|
+
with open(lmp_in_file, 'r') as rf:
|
|
358
|
+
lmp_content = rf.readlines()
|
|
359
|
+
runline_idx = find_first_run_cmd_line(lmp_content)
|
|
360
|
+
if runline_idx is None:
|
|
361
|
+
raise Exception("Error! The input lmp.in file: {} is missing the 'RUN' command, please modify it!".format(lmp_in_file))
|
|
362
|
+
# remove the units boundary atom_stype lines
|
|
363
|
+
# units metal
|
|
364
|
+
# boundary p p p
|
|
365
|
+
# atom_style atomic
|
|
366
|
+
# remove mass pair_style pair_coeff dump
|
|
367
|
+
lmp_content,insert_info = remove_lmps_lines(lmp_content)
|
|
368
|
+
merge_traj = False
|
|
369
|
+
if merge_traj is True:
|
|
370
|
+
dump_line = "dump 1 all custom ${DUMP_FREQ} all.lammpstrj id type x y z fx fy fz\n"
|
|
371
|
+
if "dump_modify" in insert_info.keys():
|
|
372
|
+
dump_line += 'if "${restart} > 0" then' + 'dump_modify 1 {} append yes\n'.format(" ".join(insert_info['dump_modify'].split()[2:]))
|
|
373
|
+
else:
|
|
374
|
+
dump_line += 'if "${restart} > 0" then "dump_modify 1 append yes"\n'
|
|
375
|
+
else:
|
|
376
|
+
dump_line = "dump 1 all custom ${DUMP_FREQ} traj/*.lammpstrj id type x y z fx fy fz\n"
|
|
377
|
+
if "dump_modify" in insert_info.keys():
|
|
378
|
+
dump_line += 'dump_modify 1 {}\n'.format(" ".join(insert_info['dump_modify'].split()[2:]))
|
|
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
|
|
|
5
5
|
|
|
6
6
|
setuptools.setup(
|
|
7
7
|
name="pwact",
|
|
8
|
-
version="0.4.
|
|
8
|
+
version="0.4.1",
|
|
9
9
|
author="LonxunQuantum",
|
|
10
10
|
author_email="lonxun@pwmat.com",
|
|
11
11
|
description="PWACT is an open-source automated active learning platform based on MatPL for efficient data sampling.",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/model_param.py
RENAMED
|
File without changes
|
|
File without changes
|
{pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/nn_feature_type.py
RENAMED
|
File without changes
|
{pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/optimizer_param.py
RENAMED
|
File without changes
|
{pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/train_param.py
RENAMED
|
File without changes
|
{pwact-0.4.0.dev0 → pwact-0.4.1}/pwact/active_learning/user_input/train_param/work_file_param.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|