From e15fe4aec4aa37b9d5ba21d6b95deb4f4b2c6220 Mon Sep 17 00:00:00 2001 From: Musiha Mukta Date: Sat, 8 Aug 2026 01:04:07 -0400 Subject: [PATCH 1/5] enable xyz format --- pyxtal/optimize/WFS.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyxtal/optimize/WFS.py b/pyxtal/optimize/WFS.py index e38d6922..712c749d 100644 --- a/pyxtal/optimize/WFS.py +++ b/pyxtal/optimize/WFS.py @@ -92,6 +92,7 @@ def __init__( use_mpi: bool = False, pre_opt: bool = False, check: bool = True, + xyz_only: bool = False, ): if isinstance(random_state, Generator): self.random_state = random_state.spawn(1)[0] @@ -142,6 +143,7 @@ def __init__( check_stable, use_mpi, pre_opt, + xyz_only=xyz_only, ) if fracs is None: From 584e939452bb6e83c54661116fe4f36296144b2e Mon Sep 17 00:00:00 2001 From: Musiha Mukta Date: Sat, 8 Aug 2026 01:25:37 -0400 Subject: [PATCH 2/5] add polished PyXtal files --- 0.py | 8 + CTMTNA.cif | 101 ++++++++++ CTMTNA.xyz | 23 +++ csp_xyz.py | 184 +++++++++++++++++++ ctmtna-simple/WFS-gaff.cif | 366 +++++++++++++++++++++++++++++++++++++ ctmtna-simple/calc/ase.log | 264 ++++++++++++++++++++++++++ ctmtna-simple/loginfo | 53 ++++++ 7 files changed, 999 insertions(+) create mode 100644 0.py create mode 100644 CTMTNA.cif create mode 100644 CTMTNA.xyz create mode 100644 csp_xyz.py create mode 100644 ctmtna-simple/WFS-gaff.cif create mode 100644 ctmtna-simple/calc/ase.log create mode 100644 ctmtna-simple/loginfo diff --git a/0.py b/0.py new file mode 100644 index 00000000..42201417 --- /dev/null +++ b/0.py @@ -0,0 +1,8 @@ +from pyxtal import pyxtal +from pyxtal.lattice import Lattice +struc = pyxtal(molecular=True) +sites = [{"4e": [0.77, 0.57, 0.53]}] +lat = Lattice.from_para(11.43, 6.49, 11.19, 90, 83.31, 90, ltype="monoclinic") +for i in range(200): + struc.from_random(3, 14, ["aspirin"], [4], lattice=lat, sites=sites) + print(i, struc.lattice) diff --git a/CTMTNA.cif b/CTMTNA.cif new file mode 100644 index 00000000..ad02bb9c --- /dev/null +++ b/CTMTNA.cif @@ -0,0 +1,101 @@ +smiles: O=N(=O)N1CN(CN(C1)N(=O)=O)N(=O)=O +# Refcode: CTMTNA + +####################################################################### +# +# Cambridge Crystallographic Data Centre +# CCDC +# +####################################################################### +# +# If this CIF has been generated from an entry in the Cambridge +# Structural Database, then it will include bibliographic, chemical, +# crystal, experimental, refinement or atomic coordinate data resulting +# from the CCDC's data processing and validation procedures. +# +####################################################################### + +data_CTMTNA +_chemical_name_common 1,3,5-trinitro-1,3,5-triazinane +_chemical_formula_moiety 'C3 H6 N6 O6' +_chemical_name_systematic Cyclotrimethylene-trinitramine +_symmetry_cell_setting orthorhombic +_symmetry_space_group_name_H-M 'P b c a' +_symmetry_Int_Tables_number 61 +_space_group_name_Hall '-P 2ac 2ab' +loop_ +_symmetry_equiv_pos_site_id +_symmetry_equiv_pos_as_xyz +1 x,y,z +2 1/2-x,-y,1/2+z +3 1/2+x,1/2-y,-z +4 -x,1/2+y,1/2-z +5 -x,-y,-z +6 1/2+x,y,1/2-z +7 1/2-x,1/2+y,z +8 x,1/2-y,1/2+z +_cell_length_a 13.182(2) +_cell_length_b 11.574(2) +_cell_length_c 10.709(2) +_cell_angle_alpha 90 +_cell_angle_beta 90 +_cell_angle_gamma 90 +_cell_volume 1633.86 +_chemical_melting_point '478 K' +_cell_formula_units_Z 8 +_chemical_properties_physical explosive +loop_ +_atom_site_label +_atom_site_type_symbol +_atom_site_fract_x +_atom_site_fract_y +_atom_site_fract_z +C1 C 0.18390 0.35780 0.44000 +C2 C 0.05030 0.24400 0.33950 +C3 C 0.14870 0.38130 0.21590 +H1 H 0.24010 0.29440 0.42260 +H2 H 0.20130 0.40680 0.52440 +H3 H -0.02610 0.21170 0.35400 +H4 H 0.10150 0.17280 0.31920 +H5 H 0.20520 0.31660 0.19170 +H6 H 0.14400 0.44320 0.14130 +N1 N 0.17610 0.43600 0.33300 +N2 N 0.08770 0.29960 0.45370 +N3 N 0.05360 0.32220 0.23290 +N4 N 0.22600 0.53790 0.33460 +N5 N 0.01550 0.35250 0.52940 +N6 N -0.03330 0.38750 0.20780 +O1 O 0.22700 0.59320 0.23880 +O2 O 0.26490 0.56870 0.43380 +O3 O -0.06930 0.31420 0.52620 +O4 O 0.04540 0.42710 0.59900 +O5 O -0.11210 0.35340 0.25040 +O6 O -0.02360 0.46910 0.13900 +loop_ +_geom_bond_atom_site_label_1 +_geom_bond_atom_site_label_2 +_geom_bond_site_symmetry_1 +_geom_bond_site_symmetry_2 +C1 H1 1_555 1_555 +C2 H3 1_555 1_555 +C3 H5 1_555 1_555 +H2 C1 1_555 1_555 +H4 C2 1_555 1_555 +H6 C3 1_555 1_555 +N1 C1 1_555 1_555 +N2 C1 1_555 1_555 +N3 C2 1_555 1_555 +N4 N1 1_555 1_555 +N5 N2 1_555 1_555 +N6 N3 1_555 1_555 +O1 N4 1_555 1_555 +O2 N4 1_555 1_555 +O3 N5 1_555 1_555 +O4 N5 1_555 1_555 +O5 N6 1_555 1_555 +O6 N6 1_555 1_555 +C2 N2 1_555 1_555 +C3 N1 1_555 1_555 +C3 N3 1_555 1_555 + +#END diff --git a/CTMTNA.xyz b/CTMTNA.xyz new file mode 100644 index 00000000..818744bb --- /dev/null +++ b/CTMTNA.xyz @@ -0,0 +1,23 @@ +21 +Cyclotrimethylene-trinitramine +C 2.42417 4.14118 4.71196 +C 0.66305 2.82406 3.63571 +C 1.96016 4.41317 2.31207 +H 3.16500 3.40739 4.52562 +H 2.65354 4.70830 5.61580 +H -0.34405 2.45022 3.79099 +H 1.33797 1.99999 3.41831 +H 2.70495 3.66433 2.05292 +H 1.89821 5.12960 1.51318 +N 2.32135 5.04626 3.56610 +N 1.15606 3.46757 4.85867 +N 0.70656 3.72914 2.49413 +N 2.97913 6.22565 3.58323 +N 0.20432 4.07984 5.66934 +N -0.43896 4.48493 2.22533 +O 2.99231 6.86570 2.55731 +O 3.49191 6.58213 4.64556 +O -0.91351 3.63655 5.63508 +O 0.59846 4.94326 6.41469 +O -1.47770 4.09025 2.68153 +O -0.31110 5.42936 1.48855 diff --git a/csp_xyz.py b/csp_xyz.py new file mode 100644 index 00000000..f6f83562 --- /dev/null +++ b/csp_xyz.py @@ -0,0 +1,184 @@ +""" +This is an example to perform CSP based on a reference crystal. +The structures with good matches will be output to *-matched.cif. +Supports molecule input as .xyz or .smi. +""" +from pyxtal import pyxtal +from pyxtal.optimize import WFS, DFS, QRS +from pyxtal.molecule import pyxtal_molecule, compare_mol_connectivity +import argparse +import os + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("-g", "--gen", dest="gen", type=int, default=1, + help="Number of generation, default: 1") + parser.add_argument("-p", "--pop", dest="pop", type=int, default=10, + help="Population size, default: 10") + parser.add_argument("-n", "--ncpu", dest="ncpu", type=int, default=1, + help="cpu number, default: 1") + parser.add_argument("-a", "--algo", dest="algo", default="WFS", + help="algorithm, default: WFS") + parser.add_argument("--mlp", dest="mlp", default="MACE", + help="MLP backend for xyz-only relaxation (MACE/ANI/UMA), default: MACE") + parser.add_argument("--preopt", dest="preopt", action="store_true", + help="preoptimize the lattice and rotation") + parser.add_argument("--parameters", dest="parameters", default="parameters.xml", + help="forcefield parameter xml file, default: parameters.xml") + parser.add_argument("--ffstyle", dest="ffstyle", default="gaff", + help="forcefield style, default: gaff") + + # New: molecule + reference inputs + parser.add_argument("--mol", dest="mol", default="CTMTNA.xyz", + help="Molecule input (.xyz or .smi), default: CTMTNA.xyz") + parser.add_argument("--smiles", dest="smiles", default=None, + help="Optional SMILES for force-field mode; not needed for .xyz MLP-only runs") + parser.add_argument("--xyz-only", dest="xyz_only", action="store_true", + help="Force MLP-only mode (selected automatically for .xyz without --smiles)") + parser.add_argument("--nconf", dest="nconf", type=int, default=1, + help="Number of conformers generated from --smiles, default: 1") + parser.add_argument("--niter-conf", dest="niter_conf", type=int, default=5, + help="Embedding iterations for conformer generation, default: 5") + parser.add_argument("--conf-tol", dest="conf_tol", type=float, default=0.5, + help="RMSD tolerance for unique conformers, default: 0.5") + parser.add_argument("--uff", dest="use_uff", action="store_true", + help="Use UFF (instead of MMFF) in conformer generation") + parser.add_argument("--seed", dest="seed", default=None, + help="Optional reference crystal CIF used only for match checking") + parser.add_argument("--wdir", dest="wdir", default="ctmtna-simple", + help="Working directory, default: ctmtna-simple") + parser.add_argument("--sg", dest="sg", type=int, nargs="+", default=[61], + help="Space group list, default: 61") + # add CLI arg + parser.add_argument( + "--active-sites", + dest="active_sites", + type=int, + nargs=3, + metavar=("DONOR", "ACCEPTOR", "H"), + default=None, + help="Optional atom indices for active sites, e.g. --active-sites 11 12 20", + ) + + options = parser.parse_args() + + # build active_sites only if provided + active_sites = None + if options.active_sites is not None: + d, a, h = options.active_sites + active_sites = [[d], [a], [h]] + + mol_paths = [x.strip() for x in options.mol.split(",") if len(x.strip()) > 0] + if len(mol_paths) == 0: + raise ValueError("Please provide at least one molecule path via --mol") + mol_ext = os.path.splitext(mol_paths[0])[1].lower() + for mpath in mol_paths: + ext = os.path.splitext(mpath)[1].lower() + if ext != ".smi" and not os.path.exists(mpath): + raise FileNotFoundError(f"Cannot find molecule file: {mpath}") + if options.seed is not None and not os.path.exists(options.seed): + raise FileNotFoundError(f"Cannot find reference CIF: {options.seed}") + + xyz_only = options.xyz_only or ( + options.smiles is None + and all(os.path.splitext(path)[1].lower() == ".xyz" for path in mol_paths) + ) + + # Optimizer currently requires a valid SMILES string internally + if xyz_only: + if options.algo != "WFS": + raise ValueError("xyz-only mode currently supports --algo WFS only") + smiles_opt = options.smiles if options.smiles is not None else "xyz_only" + elif options.smiles is not None: + smiles_opt = options.smiles + elif mol_ext == ".smi": + smiles_opt = os.path.splitext(os.path.basename(mol_paths[0]))[0] + else: + raise ValueError( + "For .xyz input, please also provide --smiles '' " + "so optimizer torsion/FF initialization can proceed." + ) + + # Build molecule pool: + # - single geometry from --mol + # - or multiple conformers generated from --smiles + if xyz_only: + mol_objs = [pyxtal_molecule(mpath, active_sites=active_sites) for mpath in mol_paths] + molecules_for_opt = [mol_objs] + seed_molecules = [mol_objs[0]] + elif options.nconf > 1: + if options.smiles is None: + raise ValueError("Please provide --smiles when --nconf > 1") + confs = pyxtal_molecule.get_conformers_from_smiles( + options.smiles, + N_iter=options.niter_conf, + N_conf=options.nconf, + tol=options.conf_tol, + use_uff=options.use_uff, + ) + if len(confs) == 0: + raise RuntimeError("No conformers were generated from --smiles") + if active_sites is not None: + for m in confs: + m.active_sites = active_sites + molecules_for_opt = [confs] + seed_molecules = [confs[0]] + else: + m1 = pyxtal_molecule(mol_paths[0], active_sites=active_sites) + # For xyz input, verify topology matches the SMILES-based template used + # by optimizer internals (torsion/FF typing). + if mol_ext == ".xyz": + m_smi = pyxtal_molecule(smiles_opt + ".smi") + ok, _ = compare_mol_connectivity(m1.mol, m_smi.mol, ignore_HH=True) + if not ok: + raise ValueError( + "Input .xyz connectivity does not match --smiles template. " + "HTOCSP force-field/torsion setup is SMILES-driven, so xyz-only " + "input is not currently sufficient for robust optimization. " + "Use --mol '.smi' (or --nconf from SMILES), or provide " + "an xyz generated with the same atom/bond topology convention." + ) + molecules_for_opt = [[m1]] + seed_molecules = [m1] + + # A reference CIF is optional. It is used for match checking, not for + # defining the molecule; molecular geometry comes from --mol. + pmg = None + if options.seed is not None: + xtal = pyxtal(molecular=True) + xtal.from_seed(options.seed, molecules=seed_molecules) + pmg = xtal.to_pymatgen() + + # Sampling + fun = globals().get(options.algo) + if fun is None: + raise ValueError(f"Unknown algorithm: {options.algo}. Choose from WFS, DFS, QRS.") + + run_kwargs = dict( + tag="csp_run", + N_gen=options.gen, + N_pop=options.pop, + N_cpu=options.ncpu, + mlp=options.mlp, + skip_mlp=False if xyz_only else True, + ff_style=options.ffstyle, + ff_parameters=options.parameters, + molecules=molecules_for_opt, + xyz_only=xyz_only, + ) + if options.algo != "QRS": + run_kwargs["pre_opt"] = options.preopt + if xyz_only and options.algo == "WFS": + run_kwargs["fracs"] = [1.0, 0.0] + + go = fun( + smiles_opt, + options.wdir, + options.sg, + **run_kwargs, + ) + + go.run(ref_pmg=pmg) + if pmg is not None: + go.print_matches(header="Ref_match") + go.plot_results() diff --git a/ctmtna-simple/WFS-gaff.cif b/ctmtna-simple/WFS-gaff.cif new file mode 100644 index 00000000..605198d3 --- /dev/null +++ b/ctmtna-simple/WFS-gaff.cif @@ -0,0 +1,366 @@ + +-------Global Crystal Structure Prediction------ +smile : xyz_only +Zprime : [1] +N_torsion : 0 +N_conformers: [1] (total 1) +sg : [61] +ncpu : 1 +directory : ctmtna-simple +opt_lat : True +usp_mpi : False + +mlp : MACE +Mode : Sampling +cif : ctmtna-simple/WFS-gaff.cif +forcefield: Predefined +############################################################# +# ______ _ _ _ # +# (_____ \ \ \ / / | | # +# _____) ) _ \ \/ / |_ ____| | # +# | ____/ | | | ) (| _)/ _ | | # +# | | | |_| |/ /\ \ |_( (_| | |___ # +# |_| \__ /_/ \_\___)__|_|_____) # +# (____/ # +#---------------------(version 1.1.4)--------------------# +# A Python package for random crystal generation # +# url: https://github.com/qzhu2017/pyxtal # +# @Zhu's group at U. North Carolina at Charlotte # +############################################################# +data_csp_run-g0-p0-Random-d0.845-spg61-e129.605 +#Energy: -129.60504699253545 eV/cell + +_symmetry_space_group_name_H-M 'Pbca' +_symmetry_Int_Tables_number 61 +_symmetry_cell_setting orthorhombic +_cell_length_a 9.249750 +_cell_length_b 12.204630 +_cell_length_c 30.947582 +_cell_angle_alpha 90.000000 +_cell_angle_beta 90.000000 +_cell_angle_gamma 90.000000 +_cell_volume 3493.665639 + +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz +1 'x, y, z' +2 '-x+1/2, -y, z+1/2' +3 '-x, y+1/2, -z+1/2' +4 'x+1/2, -y+1/2, -z' +5 '-x, -y, -z' +6 'x+1/2, y, -z+1/2' +7 'x, -y+1/2, z+1/2' +8 '-x+1/2, y+1/2, z' + +loop_ + _atom_site_label + _atom_site_type_symbol + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy +C C 8 0.960364 0.188337 0.367088 1 +C C 8 1.018551 0.359933 0.400314 1 +C C 8 0.786755 0.274869 0.414629 1 +H H 8 0.913448 0.239085 0.340526 1 +H H 8 1.003795 0.110130 0.355708 1 +H H 8 0.968847 0.398510 0.371079 1 +H H 8 1.105446 0.409293 0.414351 1 +H H 8 0.704313 0.260602 0.439385 1 +H H 8 0.742834 0.318787 0.385988 1 +N N 8 0.840975 0.174469 0.396420 1 +N N 8 1.068198 0.253551 0.387855 1 +N N 8 0.898379 0.346707 0.429319 1 +N N 8 0.846279 0.079659 0.424676 1 +N N 8 1.223239 0.238413 0.376092 1 +N N 8 0.933217 0.344615 0.475569 1 +O O 8 0.773376 0.084900 0.457698 1 +O O 8 0.921633 0.002583 0.411659 1 +O O 8 1.250220 0.151897 0.357575 1 +O O 8 1.303350 0.312136 0.388250 1 +O O 8 0.837868 0.310473 0.499628 1 +O O 8 1.054177 0.379455 0.484823 1 +#END + +############################################################# +# ______ _ _ _ # +# (_____ \ \ \ / / | | # +# _____) ) _ \ \/ / |_ ____| | # +# | ____/ | | | ) (| _)/ _ | | # +# | | | |_| |/ /\ \ |_( (_| | |___ # +# |_| \__ /_/ \_\___)__|_|_____) # +# (____/ # +#---------------------(version 1.1.4)--------------------# +# A Python package for random crystal generation # +# url: https://github.com/qzhu2017/pyxtal # +# @Zhu's group at U. North Carolina at Charlotte # +############################################################# +data_csp_run-g0-p1-Random-d0.844-spg61-e129.461 +#Energy: -129.4614084555035 eV/cell + +_symmetry_space_group_name_H-M 'Pbca' +_symmetry_Int_Tables_number 61 +_symmetry_cell_setting orthorhombic +_cell_length_a 13.991248 +_cell_length_b 15.818844 +_cell_length_c 15.803296 +_cell_angle_alpha 90.000000 +_cell_angle_beta 90.000000 +_cell_angle_gamma 90.000000 +_cell_volume 3497.670250 + +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz +1 'x, y, z' +2 '-x+1/2, -y, z+1/2' +3 '-x, y+1/2, -z+1/2' +4 'x+1/2, -y+1/2, -z' +5 '-x, -y, -z' +6 'x+1/2, y, -z+1/2' +7 'x, -y+1/2, z+1/2' +8 '-x+1/2, y+1/2, z' + +loop_ + _atom_site_label + _atom_site_type_symbol + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy +C C 8 0.549054 0.260871 0.729851 1 +C C 8 0.652539 0.366685 0.788438 1 +C C 8 0.568471 0.271106 0.880423 1 +H H 8 0.538009 0.218967 0.675775 1 +H H 8 0.492092 0.310005 0.735859 1 +H H 8 0.588462 0.408494 0.789810 1 +H H 8 0.719164 0.401616 0.779096 1 +H H 8 0.508333 0.317220 0.879248 1 +H H 8 0.570005 0.236535 0.940435 1 +N N 8 0.547298 0.217802 0.809825 1 +N N 8 0.637874 0.304525 0.724116 1 +N N 8 0.651429 0.324636 0.869684 1 +N N 8 0.579533 0.130101 0.810752 1 +N N 8 0.681943 0.312982 0.638053 1 +N N 8 0.744137 0.285611 0.888792 1 +O O 8 0.589038 0.097214 0.740130 1 +O O 8 0.591453 0.097257 0.880368 1 +O O 8 0.647572 0.264171 0.585846 1 +O O 8 0.747862 0.363461 0.632946 1 +O O 8 0.744785 0.219803 0.929822 1 +O O 8 0.813948 0.326054 0.862420 1 +#END + +############################################################# +# ______ _ _ _ # +# (_____ \ \ \ / / | | # +# _____) ) _ \ \/ / |_ ____| | # +# | ____/ | | | ) (| _)/ _ | | # +# | | | |_| |/ /\ \ |_( (_| | |___ # +# |_| \__ /_/ \_\___)__|_|_____) # +# (____/ # +#---------------------(version 1.1.4)--------------------# +# A Python package for random crystal generation # +# url: https://github.com/qzhu2017/pyxtal # +# @Zhu's group at U. North Carolina at Charlotte # +############################################################# +data_csp_run-g0-p2-Random-d0.844-spg61-e129.367 +#Energy: -129.3671866574466 eV/cell + +_symmetry_space_group_name_H-M 'Pbca' +_symmetry_Int_Tables_number 61 +_symmetry_cell_setting orthorhombic +_cell_length_a 12.909257 +_cell_length_b 16.342832 +_cell_length_c 16.575213 +_cell_angle_alpha 90.000000 +_cell_angle_beta 90.000000 +_cell_angle_gamma 90.000000 +_cell_volume 3496.935886 + +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz +1 'x, y, z' +2 '-x+1/2, -y, z+1/2' +3 '-x, y+1/2, -z+1/2' +4 'x+1/2, -y+1/2, -z' +5 '-x, -y, -z' +6 'x+1/2, y, -z+1/2' +7 'x, -y+1/2, z+1/2' +8 '-x+1/2, y+1/2, z' + +loop_ + _atom_site_label + _atom_site_type_symbol + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy +C C 8 0.558781 0.757843 0.046161 1 +C C 8 0.525916 0.612580 0.053500 1 +C C 8 0.406500 0.707075 0.115588 1 +H H 8 0.512544 0.763282 -0.010699 1 +H H 8 0.620089 0.803886 0.049616 1 +H H 8 0.481705 0.614472 -0.004332 1 +H H 8 0.563930 0.553229 0.062012 1 +H H 8 0.360360 0.713018 0.058692 1 +H H 8 0.358937 0.716905 0.169366 1 +N N 8 0.489885 0.764249 0.112996 1 +N N 8 0.601127 0.676402 0.044856 1 +N N 8 0.448430 0.625450 0.114011 1 +N N 8 0.477914 0.845265 0.154423 1 +N N 8 0.697650 0.665876 0.090578 1 +N N 8 0.472501 0.590716 0.194517 1 +O O 8 0.405138 0.848763 0.201561 1 +O O 8 0.545258 0.895131 0.137632 1 +O O 8 0.722281 0.595429 0.107902 1 +O O 8 0.746248 0.729701 0.104710 1 +O O 8 0.428635 0.623612 0.251882 1 +O O 8 0.531538 0.531761 0.195293 1 +#END + +############################################################# +# ______ _ _ _ # +# (_____ \ \ \ / / | | # +# _____) ) _ \ \/ / |_ ____| | # +# | ____/ | | | ) (| _)/ _ | | # +# | | | |_| |/ /\ \ |_( (_| | |___ # +# |_| \__ /_/ \_\___)__|_|_____) # +# (____/ # +#---------------------(version 1.1.4)--------------------# +# A Python package for random crystal generation # +# url: https://github.com/qzhu2017/pyxtal # +# @Zhu's group at U. North Carolina at Charlotte # +############################################################# +data_csp_run-g0-p3-Random-d0.844-spg61-e129.512 +#Energy: -129.5121074253237 eV/cell + +_symmetry_space_group_name_H-M 'Pbca' +_symmetry_Int_Tables_number 61 +_symmetry_cell_setting orthorhombic +_cell_length_a 14.043938 +_cell_length_b 16.470765 +_cell_length_c 15.115903 +_cell_angle_alpha 90.000000 +_cell_angle_beta 90.000000 +_cell_angle_gamma 90.000000 +_cell_volume 3496.525946 + +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz +1 'x, y, z' +2 '-x+1/2, -y, z+1/2' +3 '-x, y+1/2, -z+1/2' +4 'x+1/2, -y+1/2, -z' +5 '-x, -y, -z' +6 'x+1/2, y, -z+1/2' +7 'x, -y+1/2, z+1/2' +8 '-x+1/2, y+1/2, z' + +loop_ + _atom_site_label + _atom_site_type_symbol + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy +C C 8 0.391046 0.685066 -0.003245 1 +C C 8 0.253247 0.765395 0.037717 1 +C C 8 0.351793 0.704371 0.149862 1 +H H 8 0.418089 0.641120 -0.051400 1 +H H 8 0.436306 0.740956 -0.000116 1 +H H 8 0.180218 0.781558 0.019450 1 +H H 8 0.300398 0.819771 0.039804 1 +H H 8 0.351199 0.675249 0.214945 1 +H H 8 0.397726 0.759999 0.148331 1 +N N 8 0.385651 0.649865 0.083354 1 +N N 8 0.297686 0.714411 -0.026955 1 +N N 8 0.258924 0.733606 0.125772 1 +N N 8 0.458790 0.587723 0.109484 1 +N N 8 0.236754 0.660514 -0.077888 1 +N N 8 0.178196 0.685417 0.156624 1 +O O 8 0.453240 0.565299 0.186551 1 +O O 8 0.510920 0.565182 0.049221 1 +O O 8 0.151592 0.678932 -0.081251 1 +O O 8 0.276731 0.602613 -0.114050 1 +O O 8 0.101042 0.698605 0.120256 1 +O O 8 0.195179 0.637727 0.217566 1 +#END + +############################################################# +# ______ _ _ _ # +# (_____ \ \ \ / / | | # +# _____) ) _ \ \/ / |_ ____| | # +# | ____/ | | | ) (| _)/ _ | | # +# | | | |_| |/ /\ \ |_( (_| | |___ # +# |_| \__ /_/ \_\___)__|_|_____) # +# (____/ # +#---------------------(version 1.1.4)--------------------# +# A Python package for random crystal generation # +# url: https://github.com/qzhu2017/pyxtal # +# @Zhu's group at U. North Carolina at Charlotte # +############################################################# +data_csp_run-g0-p4-Random-d0.843-spg61-e129.335 +#Energy: -129.33471430092806 eV/cell + +_symmetry_space_group_name_H-M 'Pbca' +_symmetry_Int_Tables_number 61 +_symmetry_cell_setting orthorhombic +_cell_length_a 11.655539 +_cell_length_b 17.867695 +_cell_length_c 16.805304 +_cell_angle_alpha 90.000000 +_cell_angle_beta 90.000000 +_cell_angle_gamma 90.000000 +_cell_volume 3499.832491 + +loop_ + _symmetry_equiv_pos_site_id + _symmetry_equiv_pos_as_xyz +1 'x, y, z' +2 '-x+1/2, -y, z+1/2' +3 '-x, y+1/2, -z+1/2' +4 'x+1/2, -y+1/2, -z' +5 '-x, -y, -z' +6 'x+1/2, y, -z+1/2' +7 'x, -y+1/2, z+1/2' +8 '-x+1/2, y+1/2, z' + +loop_ + _atom_site_label + _atom_site_type_symbol + _atom_site_symmetry_multiplicity + _atom_site_fract_x + _atom_site_fract_y + _atom_site_fract_z + _atom_site_occupancy +C C 8 0.049160 0.815216 0.565852 1 +C C 8 0.235707 0.866983 0.589791 1 +C C 8 0.079044 0.948536 0.555687 1 +H H 8 -0.011834 0.771862 0.583649 1 +H H 8 0.075025 0.810586 0.501989 1 +H H 8 0.250404 0.860069 0.524447 1 +H H 8 0.314378 0.861278 0.624734 1 +H H 8 0.041250 1.003602 0.566872 1 +H H 8 0.102616 0.940649 0.491983 1 +N N 8 0.000503 0.888952 0.570822 1 +N N 8 0.151338 0.813141 0.612282 1 +N N 8 0.186111 0.940310 0.595589 1 +N N 8 -0.084998 0.901468 0.632681 1 +N N 8 0.189259 0.740732 0.648585 1 +N N 8 0.199591 0.980001 0.670825 1 +O O 8 -0.125973 0.844460 0.662709 1 +O O 8 -0.108230 0.967468 0.646009 1 +O O 8 0.113412 0.693452 0.653650 1 +O O 8 0.288895 0.740252 0.671235 1 +O O 8 0.132803 1.032013 0.683076 1 +O O 8 0.278947 0.957745 0.712868 1 +#END + diff --git a/ctmtna-simple/calc/ase.log b/ctmtna-simple/calc/ase.log new file mode 100644 index 00000000..85b5b292 --- /dev/null +++ b/ctmtna-simple/calc/ase.log @@ -0,0 +1,264 @@ + Step Time Energy fmax +FIRE: 0 00:53:30 -1032.139609 3.008829 +FIRE: 1 00:53:32 -1034.923890 1.189966 +FIRE: 2 00:53:33 -1035.411831 1.131558 +FIRE: 3 00:53:34 -1035.550928 0.999608 +FIRE: 4 00:53:35 -1035.754856 0.768615 +FIRE: 5 00:53:36 -1035.921324 0.490754 +FIRE: 6 00:53:37 -1035.989694 0.457416 +FIRE: 7 00:53:37 -1035.996481 0.692688 +FIRE: 8 00:53:38 -1036.008642 0.661424 +FIRE: 9 00:53:39 -1036.030886 0.601129 +FIRE: 10 00:53:40 -1036.059667 0.516390 +FIRE: 11 00:53:41 -1036.090221 0.413962 +FIRE: 12 00:53:42 -1036.118627 0.302866 +FIRE: 13 00:53:43 -1036.141819 0.212459 +FIRE: 14 00:53:44 -1036.158801 0.198694 +FIRE: 15 00:53:45 -1036.171819 0.220723 +FIRE: 16 00:53:46 -1036.183539 0.248098 +FIRE: 17 00:53:47 -1036.198586 0.288511 +FIRE: 18 00:53:48 -1036.221467 0.321951 +FIRE: 19 00:53:49 -1036.254490 0.307566 +FIRE: 20 00:53:50 -1036.294113 0.238104 +FIRE: 21 00:53:51 -1036.331207 0.133611 +FIRE: 22 00:53:52 -1036.357195 0.180999 +FIRE: 23 00:53:53 -1036.377553 0.259332 +FIRE: 24 00:53:54 -1036.406520 0.271858 +FIRE: 25 00:53:55 -1036.443167 0.153301 +FIRE: 26 00:53:57 -1036.466389 0.160857 +FIRE: 27 00:53:57 -1036.483428 0.264531 +FIRE: 28 00:53:58 -1036.518744 0.165645 +FIRE: 29 00:53:59 -1036.549514 0.172840 +FIRE: 30 00:54:00 -1036.584175 0.234965 +FIRE: 31 00:54:01 -1036.638639 0.119968 +FIRE: 32 00:54:02 -1036.683057 0.202043 +FIRE: 33 00:54:03 -1036.741094 0.150852 +FIRE: 34 00:54:04 -1036.776687 0.277669 +FIRE: 35 00:54:05 -1036.779922 0.709551 +FIRE: 36 00:54:06 -1036.826092 0.125049 +FIRE: 37 00:54:07 -1036.806058 0.670873 +FIRE: 38 00:54:08 -1036.819765 0.494862 +FIRE: 39 00:54:09 -1036.834717 0.190691 +FIRE: 40 00:54:10 -1036.838565 0.152389 +FIRE: 41 00:54:11 -1036.838928 0.142657 +FIRE: 42 00:54:12 -1036.839532 0.123776 +FIRE: 43 00:54:13 -1036.840376 0.097111 + Step Time Energy fmax +FIRE: 0 00:54:15 -1030.433247 3.096500 +FIRE: 1 00:54:16 -1033.135122 1.067020 +FIRE: 2 00:54:17 -1033.490145 1.211089 +FIRE: 3 00:54:17 -1033.644472 1.060927 +FIRE: 4 00:54:18 -1033.869218 0.783714 +FIRE: 5 00:54:19 -1034.047559 0.430436 +FIRE: 6 00:54:20 -1034.113107 0.484919 +FIRE: 7 00:54:21 -1034.119711 0.475954 +FIRE: 8 00:54:22 -1034.132308 0.459305 +FIRE: 9 00:54:23 -1034.149555 0.437619 +FIRE: 10 00:54:24 -1034.170107 0.414519 +FIRE: 11 00:54:25 -1034.192376 0.394137 +FIRE: 12 00:54:26 -1034.215380 0.380037 +FIRE: 13 00:54:27 -1034.238145 0.373796 +FIRE: 14 00:54:28 -1034.263379 0.374509 +FIRE: 15 00:54:29 -1034.291659 0.379402 +FIRE: 16 00:54:29 -1034.324423 0.382426 +FIRE: 17 00:54:31 -1034.363483 0.376601 +FIRE: 18 00:54:31 -1034.409439 0.357336 +FIRE: 19 00:54:32 -1034.460958 0.326499 +FIRE: 20 00:54:33 -1034.515157 0.295294 +FIRE: 21 00:54:34 -1034.570200 0.275733 +FIRE: 22 00:54:35 -1034.628828 0.260119 +FIRE: 23 00:54:36 -1034.694415 0.234914 +FIRE: 24 00:54:37 -1034.762992 0.218923 +FIRE: 25 00:54:38 -1034.829537 0.227101 +FIRE: 26 00:54:39 -1034.900647 0.215726 +FIRE: 27 00:54:40 -1034.979497 0.187554 +FIRE: 28 00:54:41 -1035.061564 0.181999 +FIRE: 29 00:54:42 -1035.154973 0.168311 +FIRE: 30 00:54:43 -1035.247353 0.198179 +FIRE: 31 00:54:44 -1035.347065 0.133424 +FIRE: 32 00:54:45 -1035.438630 0.150841 +FIRE: 33 00:54:46 -1035.513327 0.179578 +FIRE: 34 00:54:47 -1035.587139 0.231187 +FIRE: 35 00:54:47 -1035.644660 0.469475 +FIRE: 36 00:54:48 -1035.671762 0.113960 +FIRE: 37 00:54:49 -1035.662586 0.433501 +FIRE: 38 00:54:50 -1035.672666 0.312856 +FIRE: 39 00:54:51 -1035.683432 0.116834 +FIRE: 40 00:54:52 -1035.686468 0.128552 +FIRE: 41 00:54:53 -1035.686829 0.121905 +FIRE: 42 00:54:54 -1035.687674 0.109160 +FIRE: 43 00:54:55 -1035.688756 0.101524 +FIRE: 44 00:54:56 -1035.689955 0.100789 +FIRE: 45 00:54:57 -1035.691268 0.099949 + Step Time Energy fmax +FIRE: 0 00:54:58 -1030.589054 3.015561 +FIRE: 1 00:54:59 -1033.386259 1.268123 +FIRE: 2 00:55:00 -1033.895942 1.177016 +FIRE: 3 00:55:01 -1034.035406 1.031063 +FIRE: 4 00:55:02 -1034.239680 0.761492 +FIRE: 5 00:55:03 -1034.405698 0.527988 +FIRE: 6 00:55:04 -1034.473579 0.427359 +FIRE: 7 00:55:05 -1034.479151 0.676207 +FIRE: 8 00:55:06 -1034.491142 0.644791 +FIRE: 9 00:55:07 -1034.513170 0.584352 +FIRE: 10 00:55:08 -1034.541695 0.500439 +FIRE: 11 00:55:09 -1034.572073 0.398362 +FIRE: 12 00:55:10 -1034.600271 0.285959 +FIRE: 13 00:55:11 -1034.623221 0.206584 +FIRE: 14 00:55:12 -1034.640055 0.220470 +FIRE: 15 00:55:13 -1034.652879 0.242413 +FIRE: 16 00:55:14 -1034.664247 0.251131 +FIRE: 17 00:55:15 -1034.679041 0.278400 +FIRE: 18 00:55:16 -1034.701654 0.308054 +FIRE: 19 00:55:17 -1034.734400 0.287974 +FIRE: 20 00:55:18 -1034.773977 0.211056 +FIRE: 21 00:55:18 -1034.810854 0.123629 +FIRE: 22 00:55:19 -1034.835902 0.161147 +FIRE: 23 00:55:20 -1034.854398 0.235801 +FIRE: 24 00:55:21 -1034.880916 0.246182 +FIRE: 25 00:55:22 -1034.912918 0.126921 +FIRE: 26 00:55:23 -1034.928509 0.144418 +FIRE: 27 00:55:24 -1034.930394 0.130684 +FIRE: 28 00:55:25 -1034.933673 0.106090 +FIRE: 29 00:55:26 -1034.937493 0.084088 + Step Time Energy fmax +FIRE: 0 00:55:27 -1029.817985 3.029686 +FIRE: 1 00:55:28 -1032.585159 1.083591 +FIRE: 2 00:55:29 -1033.146444 1.222535 +FIRE: 3 00:55:30 -1033.313660 1.067315 +FIRE: 4 00:55:31 -1033.565614 0.811955 +FIRE: 5 00:55:32 -1033.792034 0.790889 +FIRE: 6 00:55:33 -1033.933439 0.733337 +FIRE: 7 00:55:34 -1034.022630 0.758522 +FIRE: 8 00:55:35 -1034.135798 0.817256 +FIRE: 9 00:55:36 -1034.300786 0.656038 +FIRE: 10 00:55:37 -1034.492341 0.514669 +FIRE: 11 00:55:38 -1034.626551 0.525296 +FIRE: 12 00:55:39 -1034.697175 0.526557 +FIRE: 13 00:55:40 -1034.809538 0.592375 +FIRE: 14 00:55:41 -1035.005014 0.433206 +FIRE: 15 00:55:41 -1035.146842 0.405008 +FIRE: 16 00:55:42 -1035.223166 0.593477 +FIRE: 17 00:55:44 -1035.408972 0.262429 +FIRE: 18 00:55:45 -1035.512469 0.492090 +FIRE: 19 00:55:45 -1035.541724 0.383799 +FIRE: 20 00:55:46 -1035.579510 0.199329 +FIRE: 21 00:55:47 -1035.603297 0.191982 +FIRE: 22 00:55:48 -1035.613661 0.251257 +FIRE: 23 00:55:49 -1035.629198 0.297807 +FIRE: 24 00:55:50 -1035.659072 0.244234 +FIRE: 25 00:55:51 -1035.693022 0.170308 +FIRE: 26 00:55:52 -1035.719019 0.180777 +FIRE: 27 00:55:53 -1035.735897 0.259091 +FIRE: 28 00:55:54 -1035.762418 0.231859 +FIRE: 29 00:55:55 -1035.801360 0.147440 +FIRE: 30 00:55:56 -1035.824329 0.170635 +FIRE: 31 00:55:57 -1035.847108 0.250231 +FIRE: 32 00:55:58 -1035.886716 0.153002 +FIRE: 33 00:55:59 -1035.913723 0.199565 +FIRE: 34 00:56:00 -1035.963497 0.118209 +FIRE: 35 00:56:01 -1035.993607 0.222516 +FIRE: 36 00:56:02 -1036.045101 0.276293 +FIRE: 37 00:56:03 -1036.061448 0.701259 +FIRE: 38 00:56:04 -1036.096859 0.091935 + Step Time Energy fmax +FIRE: 0 00:56:05 -1029.796493 2.918761 +FIRE: 1 00:56:06 -1032.576223 1.252341 +FIRE: 2 00:56:07 -1033.077941 1.150856 +FIRE: 3 00:56:08 -1033.222144 1.007523 +FIRE: 4 00:56:09 -1033.431865 0.748596 +FIRE: 5 00:56:10 -1033.602049 0.527934 +FIRE: 6 00:56:11 -1033.674640 0.464933 +FIRE: 7 00:56:12 -1033.687779 0.732784 +FIRE: 8 00:56:13 -1033.700364 0.699367 +FIRE: 9 00:56:14 -1033.723582 0.635040 +FIRE: 10 00:56:15 -1033.753647 0.544752 +FIRE: 11 00:56:16 -1033.785791 0.435689 +FIRE: 12 00:56:16 -1033.815980 0.316919 +FIRE: 13 00:56:17 -1033.841152 0.236210 +FIRE: 14 00:56:18 -1033.860196 0.232403 +FIRE: 15 00:56:19 -1033.875813 0.257641 +FIRE: 16 00:56:20 -1033.890548 0.269353 +FIRE: 17 00:56:21 -1033.909037 0.285736 +FIRE: 18 00:56:22 -1033.936278 0.307477 +FIRE: 19 00:56:23 -1033.974332 0.290965 +FIRE: 20 00:56:24 -1034.019636 0.229025 +FIRE: 21 00:56:25 -1034.062405 0.159277 +FIRE: 22 00:56:26 -1034.093730 0.170241 +FIRE: 23 00:56:27 -1034.119384 0.232665 +FIRE: 24 00:56:28 -1034.153223 0.210991 +FIRE: 25 00:56:29 -1034.192355 0.121932 +FIRE: 26 00:56:30 -1034.215093 0.158884 +FIRE: 27 00:56:31 -1034.232351 0.254306 +FIRE: 28 00:56:32 -1034.268443 0.166164 +FIRE: 29 00:56:33 -1034.300982 0.183351 +FIRE: 30 00:56:34 -1034.342232 0.208387 +FIRE: 31 00:56:35 -1034.406406 0.123195 +FIRE: 32 00:56:36 -1034.463294 0.218217 +FIRE: 33 00:56:37 -1034.532852 0.186010 +FIRE: 34 00:56:38 -1034.580025 0.385720 +FIRE: 35 00:56:39 -1034.580034 0.995429 +FIRE: 36 00:56:40 -1034.650405 0.121339 +FIRE: 37 00:56:41 -1034.613404 0.928033 +FIRE: 38 00:56:42 -1034.636488 0.686534 +FIRE: 39 00:56:43 -1034.661533 0.266798 +FIRE: 40 00:56:43 -1034.666783 0.220853 +FIRE: 41 00:56:44 -1034.667368 0.206701 +FIRE: 42 00:56:46 -1034.668413 0.179375 +FIRE: 43 00:56:47 -1034.669796 0.140939 +FIRE: 44 00:56:48 -1034.671396 0.101202 +FIRE: 45 00:56:49 -1034.672845 0.100874 +FIRE: 46 00:56:51 -1034.674383 0.100534 +FIRE: 47 00:56:52 -1034.675893 0.100191 +FIRE: 48 00:56:53 -1034.677714 0.099838 + Step Time Energy fmax +FIRE: 0 00:56:54 -1026.851822 3.508514 +FIRE: 1 00:56:56 -1030.693990 2.483101 +FIRE: 2 00:56:57 -1032.436075 1.736868 +FIRE: 3 00:56:58 -1032.913648 1.265873 +FIRE: 4 00:56:59 -1033.167002 1.131773 +FIRE: 5 00:57:01 -1033.546046 1.068363 +FIRE: 6 00:57:02 -1033.871256 0.994219 +FIRE: 7 00:57:03 -1034.033799 0.920608 +FIRE: 8 00:57:05 -1034.090923 0.857902 +FIRE: 9 00:57:06 -1034.114543 0.844516 +FIRE: 10 00:57:07 -1034.158116 0.827120 +FIRE: 11 00:57:08 -1034.214796 0.802221 +FIRE: 12 00:57:10 -1034.276507 0.771122 +FIRE: 13 00:57:11 -1034.335783 0.735454 +FIRE: 14 00:57:12 -1034.387225 0.697133 +FIRE: 15 00:57:14 -1034.429088 0.658403 +FIRE: 16 00:57:15 -1034.466856 0.617957 +FIRE: 17 00:57:16 -1034.504847 0.578549 +FIRE: 18 00:57:17 -1034.551660 0.541388 +FIRE: 19 00:57:19 -1034.615518 0.504563 +FIRE: 20 00:57:20 -1034.700001 0.463186 +FIRE: 21 00:57:21 -1034.797680 0.410876 +FIRE: 22 00:57:22 -1034.890352 0.342747 +FIRE: 23 00:57:24 -1034.962511 0.266882 +FIRE: 24 00:57:25 -1035.024528 0.357181 +FIRE: 25 00:57:26 -1035.099054 0.300854 +FIRE: 26 00:57:28 -1035.175631 0.241518 +FIRE: 27 00:57:29 -1035.222939 0.232398 +FIRE: 28 00:57:30 -1035.265862 0.291787 +FIRE: 29 00:57:31 -1035.322507 0.206295 +FIRE: 30 00:57:33 -1035.355369 0.269586 +FIRE: 31 00:57:34 -1035.415175 0.205460 +FIRE: 32 00:57:35 -1035.490089 0.221240 +FIRE: 33 00:57:37 -1035.568998 0.196714 +FIRE: 34 00:57:38 -1035.627153 0.259857 +FIRE: 35 00:57:39 -1035.640617 0.161692 +FIRE: 36 00:57:40 -1035.650437 0.083307 + Step Time Energy fmax +FIRE: 0 00:57:42 -1031.741620 3.362738 +FIRE: 1 00:57:43 -1034.463122 1.160088 +FIRE: 2 00:57:45 -1034.799433 1.228235 +FIRE: 3 00:57:46 -1034.956617 1.069988 +FIRE: 4 00:57:47 -1035.186860 0.771827 +FIRE: 5 00:57:48 -1035.372409 0.506982 +FIRE: 6 00:57:50 -1035.447555 0.534894 +FIRE: 7 00:57:51 -1035.462495 0.807972 +FIRE: 8 00:57:52 -1035.477803 0.770688 +FIRE: 9 00:57:53 -1035.505976 0.699236 +FIRE: 10 00:57:55 -1035.542734 0.599317 +FIRE: 11 00:57:56 -1035.582812 0.480789 diff --git a/ctmtna-simple/loginfo b/ctmtna-simple/loginfo new file mode 100644 index 00000000..3b05b8e8 --- /dev/null +++ b/ctmtna-simple/loginfo @@ -0,0 +1,53 @@ +2026-08-08 00:52:20,722| +-------Global Crystal Structure Prediction------ +smile : xyz_only +Zprime : [1] +N_torsion : 0 +N_conformers: [1] (total 1) +sg : [61] +ncpu : 1 +directory : ctmtna-simple +opt_lat : True +usp_mpi : False + +mlp : MACE +Mode : Sampling +cif : ctmtna-simple/WFS-gaff.cif +forcefield: Predefined + +Method : Stochastic Width First Sampling +Generation: 4 +Population: 5 +Fraction : 1.00 0.00 +2026-08-08 00:52:20,722| Generation 0 starts +2026-08-08 00:53:26,685| +-------Global Crystal Structure Prediction------ +smile : xyz_only +Zprime : [1] +N_torsion : 0 +N_conformers: [1] (total 1) +sg : [61] +ncpu : 1 +directory : ctmtna-simple +opt_lat : True +usp_mpi : False + +mlp : MACE +Mode : Sampling +cif : ctmtna-simple/WFS-gaff.cif +forcefield: Predefined + +Method : Stochastic Width First Sampling +Generation: 4 +Population: 5 +Fraction : 1.00 0.00 +2026-08-08 00:53:26,685| Generation 0 starts +2026-08-08 00:53:29,572| Using CPU +2026-08-08 00:53:29,572| Using head Default out of ['Default'] +2026-08-08 00:53:29,572| Default dtype float32 does not match model dtype float64, converting models to float32. +2026-08-08 00:53:29,700| Using CPU +2026-08-08 00:53:29,700| Using head Default out of ['Default'] +2026-08-08 00:53:29,700| Default dtype float32 does not match model dtype float64, converting models to float32. +2026-08-08 00:56:53,522| Generation-0 finishes 5/5 strucs +2026-08-08 00:56:53,526| Success rate @ Gen 0: 0.0000% +2026-08-08 00:56:53,526| Generation 1 starts From 022703b68bd91a291bb438c0cc4e8aeb89dd166c Mon Sep 17 00:00:00 2001 From: Musiha Mukta Date: Sat, 8 Aug 2026 01:35:57 -0400 Subject: [PATCH 3/5] remove unused ctmtna files --- ctmtna-simple/WFS-gaff.cif | 366 ------------------------------------- ctmtna-simple/calc/ase.log | 264 -------------------------- ctmtna-simple/loginfo | 53 ------ 3 files changed, 683 deletions(-) delete mode 100644 ctmtna-simple/WFS-gaff.cif delete mode 100644 ctmtna-simple/calc/ase.log delete mode 100644 ctmtna-simple/loginfo diff --git a/ctmtna-simple/WFS-gaff.cif b/ctmtna-simple/WFS-gaff.cif deleted file mode 100644 index 605198d3..00000000 --- a/ctmtna-simple/WFS-gaff.cif +++ /dev/null @@ -1,366 +0,0 @@ - --------Global Crystal Structure Prediction------ -smile : xyz_only -Zprime : [1] -N_torsion : 0 -N_conformers: [1] (total 1) -sg : [61] -ncpu : 1 -directory : ctmtna-simple -opt_lat : True -usp_mpi : False - -mlp : MACE -Mode : Sampling -cif : ctmtna-simple/WFS-gaff.cif -forcefield: Predefined -############################################################# -# ______ _ _ _ # -# (_____ \ \ \ / / | | # -# _____) ) _ \ \/ / |_ ____| | # -# | ____/ | | | ) (| _)/ _ | | # -# | | | |_| |/ /\ \ |_( (_| | |___ # -# |_| \__ /_/ \_\___)__|_|_____) # -# (____/ # -#---------------------(version 1.1.4)--------------------# -# A Python package for random crystal generation # -# url: https://github.com/qzhu2017/pyxtal # -# @Zhu's group at U. North Carolina at Charlotte # -############################################################# -data_csp_run-g0-p0-Random-d0.845-spg61-e129.605 -#Energy: -129.60504699253545 eV/cell - -_symmetry_space_group_name_H-M 'Pbca' -_symmetry_Int_Tables_number 61 -_symmetry_cell_setting orthorhombic -_cell_length_a 9.249750 -_cell_length_b 12.204630 -_cell_length_c 30.947582 -_cell_angle_alpha 90.000000 -_cell_angle_beta 90.000000 -_cell_angle_gamma 90.000000 -_cell_volume 3493.665639 - -loop_ - _symmetry_equiv_pos_site_id - _symmetry_equiv_pos_as_xyz -1 'x, y, z' -2 '-x+1/2, -y, z+1/2' -3 '-x, y+1/2, -z+1/2' -4 'x+1/2, -y+1/2, -z' -5 '-x, -y, -z' -6 'x+1/2, y, -z+1/2' -7 'x, -y+1/2, z+1/2' -8 '-x+1/2, y+1/2, z' - -loop_ - _atom_site_label - _atom_site_type_symbol - _atom_site_symmetry_multiplicity - _atom_site_fract_x - _atom_site_fract_y - _atom_site_fract_z - _atom_site_occupancy -C C 8 0.960364 0.188337 0.367088 1 -C C 8 1.018551 0.359933 0.400314 1 -C C 8 0.786755 0.274869 0.414629 1 -H H 8 0.913448 0.239085 0.340526 1 -H H 8 1.003795 0.110130 0.355708 1 -H H 8 0.968847 0.398510 0.371079 1 -H H 8 1.105446 0.409293 0.414351 1 -H H 8 0.704313 0.260602 0.439385 1 -H H 8 0.742834 0.318787 0.385988 1 -N N 8 0.840975 0.174469 0.396420 1 -N N 8 1.068198 0.253551 0.387855 1 -N N 8 0.898379 0.346707 0.429319 1 -N N 8 0.846279 0.079659 0.424676 1 -N N 8 1.223239 0.238413 0.376092 1 -N N 8 0.933217 0.344615 0.475569 1 -O O 8 0.773376 0.084900 0.457698 1 -O O 8 0.921633 0.002583 0.411659 1 -O O 8 1.250220 0.151897 0.357575 1 -O O 8 1.303350 0.312136 0.388250 1 -O O 8 0.837868 0.310473 0.499628 1 -O O 8 1.054177 0.379455 0.484823 1 -#END - -############################################################# -# ______ _ _ _ # -# (_____ \ \ \ / / | | # -# _____) ) _ \ \/ / |_ ____| | # -# | ____/ | | | ) (| _)/ _ | | # -# | | | |_| |/ /\ \ |_( (_| | |___ # -# |_| \__ /_/ \_\___)__|_|_____) # -# (____/ # -#---------------------(version 1.1.4)--------------------# -# A Python package for random crystal generation # -# url: https://github.com/qzhu2017/pyxtal # -# @Zhu's group at U. North Carolina at Charlotte # -############################################################# -data_csp_run-g0-p1-Random-d0.844-spg61-e129.461 -#Energy: -129.4614084555035 eV/cell - -_symmetry_space_group_name_H-M 'Pbca' -_symmetry_Int_Tables_number 61 -_symmetry_cell_setting orthorhombic -_cell_length_a 13.991248 -_cell_length_b 15.818844 -_cell_length_c 15.803296 -_cell_angle_alpha 90.000000 -_cell_angle_beta 90.000000 -_cell_angle_gamma 90.000000 -_cell_volume 3497.670250 - -loop_ - _symmetry_equiv_pos_site_id - _symmetry_equiv_pos_as_xyz -1 'x, y, z' -2 '-x+1/2, -y, z+1/2' -3 '-x, y+1/2, -z+1/2' -4 'x+1/2, -y+1/2, -z' -5 '-x, -y, -z' -6 'x+1/2, y, -z+1/2' -7 'x, -y+1/2, z+1/2' -8 '-x+1/2, y+1/2, z' - -loop_ - _atom_site_label - _atom_site_type_symbol - _atom_site_symmetry_multiplicity - _atom_site_fract_x - _atom_site_fract_y - _atom_site_fract_z - _atom_site_occupancy -C C 8 0.549054 0.260871 0.729851 1 -C C 8 0.652539 0.366685 0.788438 1 -C C 8 0.568471 0.271106 0.880423 1 -H H 8 0.538009 0.218967 0.675775 1 -H H 8 0.492092 0.310005 0.735859 1 -H H 8 0.588462 0.408494 0.789810 1 -H H 8 0.719164 0.401616 0.779096 1 -H H 8 0.508333 0.317220 0.879248 1 -H H 8 0.570005 0.236535 0.940435 1 -N N 8 0.547298 0.217802 0.809825 1 -N N 8 0.637874 0.304525 0.724116 1 -N N 8 0.651429 0.324636 0.869684 1 -N N 8 0.579533 0.130101 0.810752 1 -N N 8 0.681943 0.312982 0.638053 1 -N N 8 0.744137 0.285611 0.888792 1 -O O 8 0.589038 0.097214 0.740130 1 -O O 8 0.591453 0.097257 0.880368 1 -O O 8 0.647572 0.264171 0.585846 1 -O O 8 0.747862 0.363461 0.632946 1 -O O 8 0.744785 0.219803 0.929822 1 -O O 8 0.813948 0.326054 0.862420 1 -#END - -############################################################# -# ______ _ _ _ # -# (_____ \ \ \ / / | | # -# _____) ) _ \ \/ / |_ ____| | # -# | ____/ | | | ) (| _)/ _ | | # -# | | | |_| |/ /\ \ |_( (_| | |___ # -# |_| \__ /_/ \_\___)__|_|_____) # -# (____/ # -#---------------------(version 1.1.4)--------------------# -# A Python package for random crystal generation # -# url: https://github.com/qzhu2017/pyxtal # -# @Zhu's group at U. North Carolina at Charlotte # -############################################################# -data_csp_run-g0-p2-Random-d0.844-spg61-e129.367 -#Energy: -129.3671866574466 eV/cell - -_symmetry_space_group_name_H-M 'Pbca' -_symmetry_Int_Tables_number 61 -_symmetry_cell_setting orthorhombic -_cell_length_a 12.909257 -_cell_length_b 16.342832 -_cell_length_c 16.575213 -_cell_angle_alpha 90.000000 -_cell_angle_beta 90.000000 -_cell_angle_gamma 90.000000 -_cell_volume 3496.935886 - -loop_ - _symmetry_equiv_pos_site_id - _symmetry_equiv_pos_as_xyz -1 'x, y, z' -2 '-x+1/2, -y, z+1/2' -3 '-x, y+1/2, -z+1/2' -4 'x+1/2, -y+1/2, -z' -5 '-x, -y, -z' -6 'x+1/2, y, -z+1/2' -7 'x, -y+1/2, z+1/2' -8 '-x+1/2, y+1/2, z' - -loop_ - _atom_site_label - _atom_site_type_symbol - _atom_site_symmetry_multiplicity - _atom_site_fract_x - _atom_site_fract_y - _atom_site_fract_z - _atom_site_occupancy -C C 8 0.558781 0.757843 0.046161 1 -C C 8 0.525916 0.612580 0.053500 1 -C C 8 0.406500 0.707075 0.115588 1 -H H 8 0.512544 0.763282 -0.010699 1 -H H 8 0.620089 0.803886 0.049616 1 -H H 8 0.481705 0.614472 -0.004332 1 -H H 8 0.563930 0.553229 0.062012 1 -H H 8 0.360360 0.713018 0.058692 1 -H H 8 0.358937 0.716905 0.169366 1 -N N 8 0.489885 0.764249 0.112996 1 -N N 8 0.601127 0.676402 0.044856 1 -N N 8 0.448430 0.625450 0.114011 1 -N N 8 0.477914 0.845265 0.154423 1 -N N 8 0.697650 0.665876 0.090578 1 -N N 8 0.472501 0.590716 0.194517 1 -O O 8 0.405138 0.848763 0.201561 1 -O O 8 0.545258 0.895131 0.137632 1 -O O 8 0.722281 0.595429 0.107902 1 -O O 8 0.746248 0.729701 0.104710 1 -O O 8 0.428635 0.623612 0.251882 1 -O O 8 0.531538 0.531761 0.195293 1 -#END - -############################################################# -# ______ _ _ _ # -# (_____ \ \ \ / / | | # -# _____) ) _ \ \/ / |_ ____| | # -# | ____/ | | | ) (| _)/ _ | | # -# | | | |_| |/ /\ \ |_( (_| | |___ # -# |_| \__ /_/ \_\___)__|_|_____) # -# (____/ # -#---------------------(version 1.1.4)--------------------# -# A Python package for random crystal generation # -# url: https://github.com/qzhu2017/pyxtal # -# @Zhu's group at U. North Carolina at Charlotte # -############################################################# -data_csp_run-g0-p3-Random-d0.844-spg61-e129.512 -#Energy: -129.5121074253237 eV/cell - -_symmetry_space_group_name_H-M 'Pbca' -_symmetry_Int_Tables_number 61 -_symmetry_cell_setting orthorhombic -_cell_length_a 14.043938 -_cell_length_b 16.470765 -_cell_length_c 15.115903 -_cell_angle_alpha 90.000000 -_cell_angle_beta 90.000000 -_cell_angle_gamma 90.000000 -_cell_volume 3496.525946 - -loop_ - _symmetry_equiv_pos_site_id - _symmetry_equiv_pos_as_xyz -1 'x, y, z' -2 '-x+1/2, -y, z+1/2' -3 '-x, y+1/2, -z+1/2' -4 'x+1/2, -y+1/2, -z' -5 '-x, -y, -z' -6 'x+1/2, y, -z+1/2' -7 'x, -y+1/2, z+1/2' -8 '-x+1/2, y+1/2, z' - -loop_ - _atom_site_label - _atom_site_type_symbol - _atom_site_symmetry_multiplicity - _atom_site_fract_x - _atom_site_fract_y - _atom_site_fract_z - _atom_site_occupancy -C C 8 0.391046 0.685066 -0.003245 1 -C C 8 0.253247 0.765395 0.037717 1 -C C 8 0.351793 0.704371 0.149862 1 -H H 8 0.418089 0.641120 -0.051400 1 -H H 8 0.436306 0.740956 -0.000116 1 -H H 8 0.180218 0.781558 0.019450 1 -H H 8 0.300398 0.819771 0.039804 1 -H H 8 0.351199 0.675249 0.214945 1 -H H 8 0.397726 0.759999 0.148331 1 -N N 8 0.385651 0.649865 0.083354 1 -N N 8 0.297686 0.714411 -0.026955 1 -N N 8 0.258924 0.733606 0.125772 1 -N N 8 0.458790 0.587723 0.109484 1 -N N 8 0.236754 0.660514 -0.077888 1 -N N 8 0.178196 0.685417 0.156624 1 -O O 8 0.453240 0.565299 0.186551 1 -O O 8 0.510920 0.565182 0.049221 1 -O O 8 0.151592 0.678932 -0.081251 1 -O O 8 0.276731 0.602613 -0.114050 1 -O O 8 0.101042 0.698605 0.120256 1 -O O 8 0.195179 0.637727 0.217566 1 -#END - -############################################################# -# ______ _ _ _ # -# (_____ \ \ \ / / | | # -# _____) ) _ \ \/ / |_ ____| | # -# | ____/ | | | ) (| _)/ _ | | # -# | | | |_| |/ /\ \ |_( (_| | |___ # -# |_| \__ /_/ \_\___)__|_|_____) # -# (____/ # -#---------------------(version 1.1.4)--------------------# -# A Python package for random crystal generation # -# url: https://github.com/qzhu2017/pyxtal # -# @Zhu's group at U. North Carolina at Charlotte # -############################################################# -data_csp_run-g0-p4-Random-d0.843-spg61-e129.335 -#Energy: -129.33471430092806 eV/cell - -_symmetry_space_group_name_H-M 'Pbca' -_symmetry_Int_Tables_number 61 -_symmetry_cell_setting orthorhombic -_cell_length_a 11.655539 -_cell_length_b 17.867695 -_cell_length_c 16.805304 -_cell_angle_alpha 90.000000 -_cell_angle_beta 90.000000 -_cell_angle_gamma 90.000000 -_cell_volume 3499.832491 - -loop_ - _symmetry_equiv_pos_site_id - _symmetry_equiv_pos_as_xyz -1 'x, y, z' -2 '-x+1/2, -y, z+1/2' -3 '-x, y+1/2, -z+1/2' -4 'x+1/2, -y+1/2, -z' -5 '-x, -y, -z' -6 'x+1/2, y, -z+1/2' -7 'x, -y+1/2, z+1/2' -8 '-x+1/2, y+1/2, z' - -loop_ - _atom_site_label - _atom_site_type_symbol - _atom_site_symmetry_multiplicity - _atom_site_fract_x - _atom_site_fract_y - _atom_site_fract_z - _atom_site_occupancy -C C 8 0.049160 0.815216 0.565852 1 -C C 8 0.235707 0.866983 0.589791 1 -C C 8 0.079044 0.948536 0.555687 1 -H H 8 -0.011834 0.771862 0.583649 1 -H H 8 0.075025 0.810586 0.501989 1 -H H 8 0.250404 0.860069 0.524447 1 -H H 8 0.314378 0.861278 0.624734 1 -H H 8 0.041250 1.003602 0.566872 1 -H H 8 0.102616 0.940649 0.491983 1 -N N 8 0.000503 0.888952 0.570822 1 -N N 8 0.151338 0.813141 0.612282 1 -N N 8 0.186111 0.940310 0.595589 1 -N N 8 -0.084998 0.901468 0.632681 1 -N N 8 0.189259 0.740732 0.648585 1 -N N 8 0.199591 0.980001 0.670825 1 -O O 8 -0.125973 0.844460 0.662709 1 -O O 8 -0.108230 0.967468 0.646009 1 -O O 8 0.113412 0.693452 0.653650 1 -O O 8 0.288895 0.740252 0.671235 1 -O O 8 0.132803 1.032013 0.683076 1 -O O 8 0.278947 0.957745 0.712868 1 -#END - diff --git a/ctmtna-simple/calc/ase.log b/ctmtna-simple/calc/ase.log deleted file mode 100644 index 85b5b292..00000000 --- a/ctmtna-simple/calc/ase.log +++ /dev/null @@ -1,264 +0,0 @@ - Step Time Energy fmax -FIRE: 0 00:53:30 -1032.139609 3.008829 -FIRE: 1 00:53:32 -1034.923890 1.189966 -FIRE: 2 00:53:33 -1035.411831 1.131558 -FIRE: 3 00:53:34 -1035.550928 0.999608 -FIRE: 4 00:53:35 -1035.754856 0.768615 -FIRE: 5 00:53:36 -1035.921324 0.490754 -FIRE: 6 00:53:37 -1035.989694 0.457416 -FIRE: 7 00:53:37 -1035.996481 0.692688 -FIRE: 8 00:53:38 -1036.008642 0.661424 -FIRE: 9 00:53:39 -1036.030886 0.601129 -FIRE: 10 00:53:40 -1036.059667 0.516390 -FIRE: 11 00:53:41 -1036.090221 0.413962 -FIRE: 12 00:53:42 -1036.118627 0.302866 -FIRE: 13 00:53:43 -1036.141819 0.212459 -FIRE: 14 00:53:44 -1036.158801 0.198694 -FIRE: 15 00:53:45 -1036.171819 0.220723 -FIRE: 16 00:53:46 -1036.183539 0.248098 -FIRE: 17 00:53:47 -1036.198586 0.288511 -FIRE: 18 00:53:48 -1036.221467 0.321951 -FIRE: 19 00:53:49 -1036.254490 0.307566 -FIRE: 20 00:53:50 -1036.294113 0.238104 -FIRE: 21 00:53:51 -1036.331207 0.133611 -FIRE: 22 00:53:52 -1036.357195 0.180999 -FIRE: 23 00:53:53 -1036.377553 0.259332 -FIRE: 24 00:53:54 -1036.406520 0.271858 -FIRE: 25 00:53:55 -1036.443167 0.153301 -FIRE: 26 00:53:57 -1036.466389 0.160857 -FIRE: 27 00:53:57 -1036.483428 0.264531 -FIRE: 28 00:53:58 -1036.518744 0.165645 -FIRE: 29 00:53:59 -1036.549514 0.172840 -FIRE: 30 00:54:00 -1036.584175 0.234965 -FIRE: 31 00:54:01 -1036.638639 0.119968 -FIRE: 32 00:54:02 -1036.683057 0.202043 -FIRE: 33 00:54:03 -1036.741094 0.150852 -FIRE: 34 00:54:04 -1036.776687 0.277669 -FIRE: 35 00:54:05 -1036.779922 0.709551 -FIRE: 36 00:54:06 -1036.826092 0.125049 -FIRE: 37 00:54:07 -1036.806058 0.670873 -FIRE: 38 00:54:08 -1036.819765 0.494862 -FIRE: 39 00:54:09 -1036.834717 0.190691 -FIRE: 40 00:54:10 -1036.838565 0.152389 -FIRE: 41 00:54:11 -1036.838928 0.142657 -FIRE: 42 00:54:12 -1036.839532 0.123776 -FIRE: 43 00:54:13 -1036.840376 0.097111 - Step Time Energy fmax -FIRE: 0 00:54:15 -1030.433247 3.096500 -FIRE: 1 00:54:16 -1033.135122 1.067020 -FIRE: 2 00:54:17 -1033.490145 1.211089 -FIRE: 3 00:54:17 -1033.644472 1.060927 -FIRE: 4 00:54:18 -1033.869218 0.783714 -FIRE: 5 00:54:19 -1034.047559 0.430436 -FIRE: 6 00:54:20 -1034.113107 0.484919 -FIRE: 7 00:54:21 -1034.119711 0.475954 -FIRE: 8 00:54:22 -1034.132308 0.459305 -FIRE: 9 00:54:23 -1034.149555 0.437619 -FIRE: 10 00:54:24 -1034.170107 0.414519 -FIRE: 11 00:54:25 -1034.192376 0.394137 -FIRE: 12 00:54:26 -1034.215380 0.380037 -FIRE: 13 00:54:27 -1034.238145 0.373796 -FIRE: 14 00:54:28 -1034.263379 0.374509 -FIRE: 15 00:54:29 -1034.291659 0.379402 -FIRE: 16 00:54:29 -1034.324423 0.382426 -FIRE: 17 00:54:31 -1034.363483 0.376601 -FIRE: 18 00:54:31 -1034.409439 0.357336 -FIRE: 19 00:54:32 -1034.460958 0.326499 -FIRE: 20 00:54:33 -1034.515157 0.295294 -FIRE: 21 00:54:34 -1034.570200 0.275733 -FIRE: 22 00:54:35 -1034.628828 0.260119 -FIRE: 23 00:54:36 -1034.694415 0.234914 -FIRE: 24 00:54:37 -1034.762992 0.218923 -FIRE: 25 00:54:38 -1034.829537 0.227101 -FIRE: 26 00:54:39 -1034.900647 0.215726 -FIRE: 27 00:54:40 -1034.979497 0.187554 -FIRE: 28 00:54:41 -1035.061564 0.181999 -FIRE: 29 00:54:42 -1035.154973 0.168311 -FIRE: 30 00:54:43 -1035.247353 0.198179 -FIRE: 31 00:54:44 -1035.347065 0.133424 -FIRE: 32 00:54:45 -1035.438630 0.150841 -FIRE: 33 00:54:46 -1035.513327 0.179578 -FIRE: 34 00:54:47 -1035.587139 0.231187 -FIRE: 35 00:54:47 -1035.644660 0.469475 -FIRE: 36 00:54:48 -1035.671762 0.113960 -FIRE: 37 00:54:49 -1035.662586 0.433501 -FIRE: 38 00:54:50 -1035.672666 0.312856 -FIRE: 39 00:54:51 -1035.683432 0.116834 -FIRE: 40 00:54:52 -1035.686468 0.128552 -FIRE: 41 00:54:53 -1035.686829 0.121905 -FIRE: 42 00:54:54 -1035.687674 0.109160 -FIRE: 43 00:54:55 -1035.688756 0.101524 -FIRE: 44 00:54:56 -1035.689955 0.100789 -FIRE: 45 00:54:57 -1035.691268 0.099949 - Step Time Energy fmax -FIRE: 0 00:54:58 -1030.589054 3.015561 -FIRE: 1 00:54:59 -1033.386259 1.268123 -FIRE: 2 00:55:00 -1033.895942 1.177016 -FIRE: 3 00:55:01 -1034.035406 1.031063 -FIRE: 4 00:55:02 -1034.239680 0.761492 -FIRE: 5 00:55:03 -1034.405698 0.527988 -FIRE: 6 00:55:04 -1034.473579 0.427359 -FIRE: 7 00:55:05 -1034.479151 0.676207 -FIRE: 8 00:55:06 -1034.491142 0.644791 -FIRE: 9 00:55:07 -1034.513170 0.584352 -FIRE: 10 00:55:08 -1034.541695 0.500439 -FIRE: 11 00:55:09 -1034.572073 0.398362 -FIRE: 12 00:55:10 -1034.600271 0.285959 -FIRE: 13 00:55:11 -1034.623221 0.206584 -FIRE: 14 00:55:12 -1034.640055 0.220470 -FIRE: 15 00:55:13 -1034.652879 0.242413 -FIRE: 16 00:55:14 -1034.664247 0.251131 -FIRE: 17 00:55:15 -1034.679041 0.278400 -FIRE: 18 00:55:16 -1034.701654 0.308054 -FIRE: 19 00:55:17 -1034.734400 0.287974 -FIRE: 20 00:55:18 -1034.773977 0.211056 -FIRE: 21 00:55:18 -1034.810854 0.123629 -FIRE: 22 00:55:19 -1034.835902 0.161147 -FIRE: 23 00:55:20 -1034.854398 0.235801 -FIRE: 24 00:55:21 -1034.880916 0.246182 -FIRE: 25 00:55:22 -1034.912918 0.126921 -FIRE: 26 00:55:23 -1034.928509 0.144418 -FIRE: 27 00:55:24 -1034.930394 0.130684 -FIRE: 28 00:55:25 -1034.933673 0.106090 -FIRE: 29 00:55:26 -1034.937493 0.084088 - Step Time Energy fmax -FIRE: 0 00:55:27 -1029.817985 3.029686 -FIRE: 1 00:55:28 -1032.585159 1.083591 -FIRE: 2 00:55:29 -1033.146444 1.222535 -FIRE: 3 00:55:30 -1033.313660 1.067315 -FIRE: 4 00:55:31 -1033.565614 0.811955 -FIRE: 5 00:55:32 -1033.792034 0.790889 -FIRE: 6 00:55:33 -1033.933439 0.733337 -FIRE: 7 00:55:34 -1034.022630 0.758522 -FIRE: 8 00:55:35 -1034.135798 0.817256 -FIRE: 9 00:55:36 -1034.300786 0.656038 -FIRE: 10 00:55:37 -1034.492341 0.514669 -FIRE: 11 00:55:38 -1034.626551 0.525296 -FIRE: 12 00:55:39 -1034.697175 0.526557 -FIRE: 13 00:55:40 -1034.809538 0.592375 -FIRE: 14 00:55:41 -1035.005014 0.433206 -FIRE: 15 00:55:41 -1035.146842 0.405008 -FIRE: 16 00:55:42 -1035.223166 0.593477 -FIRE: 17 00:55:44 -1035.408972 0.262429 -FIRE: 18 00:55:45 -1035.512469 0.492090 -FIRE: 19 00:55:45 -1035.541724 0.383799 -FIRE: 20 00:55:46 -1035.579510 0.199329 -FIRE: 21 00:55:47 -1035.603297 0.191982 -FIRE: 22 00:55:48 -1035.613661 0.251257 -FIRE: 23 00:55:49 -1035.629198 0.297807 -FIRE: 24 00:55:50 -1035.659072 0.244234 -FIRE: 25 00:55:51 -1035.693022 0.170308 -FIRE: 26 00:55:52 -1035.719019 0.180777 -FIRE: 27 00:55:53 -1035.735897 0.259091 -FIRE: 28 00:55:54 -1035.762418 0.231859 -FIRE: 29 00:55:55 -1035.801360 0.147440 -FIRE: 30 00:55:56 -1035.824329 0.170635 -FIRE: 31 00:55:57 -1035.847108 0.250231 -FIRE: 32 00:55:58 -1035.886716 0.153002 -FIRE: 33 00:55:59 -1035.913723 0.199565 -FIRE: 34 00:56:00 -1035.963497 0.118209 -FIRE: 35 00:56:01 -1035.993607 0.222516 -FIRE: 36 00:56:02 -1036.045101 0.276293 -FIRE: 37 00:56:03 -1036.061448 0.701259 -FIRE: 38 00:56:04 -1036.096859 0.091935 - Step Time Energy fmax -FIRE: 0 00:56:05 -1029.796493 2.918761 -FIRE: 1 00:56:06 -1032.576223 1.252341 -FIRE: 2 00:56:07 -1033.077941 1.150856 -FIRE: 3 00:56:08 -1033.222144 1.007523 -FIRE: 4 00:56:09 -1033.431865 0.748596 -FIRE: 5 00:56:10 -1033.602049 0.527934 -FIRE: 6 00:56:11 -1033.674640 0.464933 -FIRE: 7 00:56:12 -1033.687779 0.732784 -FIRE: 8 00:56:13 -1033.700364 0.699367 -FIRE: 9 00:56:14 -1033.723582 0.635040 -FIRE: 10 00:56:15 -1033.753647 0.544752 -FIRE: 11 00:56:16 -1033.785791 0.435689 -FIRE: 12 00:56:16 -1033.815980 0.316919 -FIRE: 13 00:56:17 -1033.841152 0.236210 -FIRE: 14 00:56:18 -1033.860196 0.232403 -FIRE: 15 00:56:19 -1033.875813 0.257641 -FIRE: 16 00:56:20 -1033.890548 0.269353 -FIRE: 17 00:56:21 -1033.909037 0.285736 -FIRE: 18 00:56:22 -1033.936278 0.307477 -FIRE: 19 00:56:23 -1033.974332 0.290965 -FIRE: 20 00:56:24 -1034.019636 0.229025 -FIRE: 21 00:56:25 -1034.062405 0.159277 -FIRE: 22 00:56:26 -1034.093730 0.170241 -FIRE: 23 00:56:27 -1034.119384 0.232665 -FIRE: 24 00:56:28 -1034.153223 0.210991 -FIRE: 25 00:56:29 -1034.192355 0.121932 -FIRE: 26 00:56:30 -1034.215093 0.158884 -FIRE: 27 00:56:31 -1034.232351 0.254306 -FIRE: 28 00:56:32 -1034.268443 0.166164 -FIRE: 29 00:56:33 -1034.300982 0.183351 -FIRE: 30 00:56:34 -1034.342232 0.208387 -FIRE: 31 00:56:35 -1034.406406 0.123195 -FIRE: 32 00:56:36 -1034.463294 0.218217 -FIRE: 33 00:56:37 -1034.532852 0.186010 -FIRE: 34 00:56:38 -1034.580025 0.385720 -FIRE: 35 00:56:39 -1034.580034 0.995429 -FIRE: 36 00:56:40 -1034.650405 0.121339 -FIRE: 37 00:56:41 -1034.613404 0.928033 -FIRE: 38 00:56:42 -1034.636488 0.686534 -FIRE: 39 00:56:43 -1034.661533 0.266798 -FIRE: 40 00:56:43 -1034.666783 0.220853 -FIRE: 41 00:56:44 -1034.667368 0.206701 -FIRE: 42 00:56:46 -1034.668413 0.179375 -FIRE: 43 00:56:47 -1034.669796 0.140939 -FIRE: 44 00:56:48 -1034.671396 0.101202 -FIRE: 45 00:56:49 -1034.672845 0.100874 -FIRE: 46 00:56:51 -1034.674383 0.100534 -FIRE: 47 00:56:52 -1034.675893 0.100191 -FIRE: 48 00:56:53 -1034.677714 0.099838 - Step Time Energy fmax -FIRE: 0 00:56:54 -1026.851822 3.508514 -FIRE: 1 00:56:56 -1030.693990 2.483101 -FIRE: 2 00:56:57 -1032.436075 1.736868 -FIRE: 3 00:56:58 -1032.913648 1.265873 -FIRE: 4 00:56:59 -1033.167002 1.131773 -FIRE: 5 00:57:01 -1033.546046 1.068363 -FIRE: 6 00:57:02 -1033.871256 0.994219 -FIRE: 7 00:57:03 -1034.033799 0.920608 -FIRE: 8 00:57:05 -1034.090923 0.857902 -FIRE: 9 00:57:06 -1034.114543 0.844516 -FIRE: 10 00:57:07 -1034.158116 0.827120 -FIRE: 11 00:57:08 -1034.214796 0.802221 -FIRE: 12 00:57:10 -1034.276507 0.771122 -FIRE: 13 00:57:11 -1034.335783 0.735454 -FIRE: 14 00:57:12 -1034.387225 0.697133 -FIRE: 15 00:57:14 -1034.429088 0.658403 -FIRE: 16 00:57:15 -1034.466856 0.617957 -FIRE: 17 00:57:16 -1034.504847 0.578549 -FIRE: 18 00:57:17 -1034.551660 0.541388 -FIRE: 19 00:57:19 -1034.615518 0.504563 -FIRE: 20 00:57:20 -1034.700001 0.463186 -FIRE: 21 00:57:21 -1034.797680 0.410876 -FIRE: 22 00:57:22 -1034.890352 0.342747 -FIRE: 23 00:57:24 -1034.962511 0.266882 -FIRE: 24 00:57:25 -1035.024528 0.357181 -FIRE: 25 00:57:26 -1035.099054 0.300854 -FIRE: 26 00:57:28 -1035.175631 0.241518 -FIRE: 27 00:57:29 -1035.222939 0.232398 -FIRE: 28 00:57:30 -1035.265862 0.291787 -FIRE: 29 00:57:31 -1035.322507 0.206295 -FIRE: 30 00:57:33 -1035.355369 0.269586 -FIRE: 31 00:57:34 -1035.415175 0.205460 -FIRE: 32 00:57:35 -1035.490089 0.221240 -FIRE: 33 00:57:37 -1035.568998 0.196714 -FIRE: 34 00:57:38 -1035.627153 0.259857 -FIRE: 35 00:57:39 -1035.640617 0.161692 -FIRE: 36 00:57:40 -1035.650437 0.083307 - Step Time Energy fmax -FIRE: 0 00:57:42 -1031.741620 3.362738 -FIRE: 1 00:57:43 -1034.463122 1.160088 -FIRE: 2 00:57:45 -1034.799433 1.228235 -FIRE: 3 00:57:46 -1034.956617 1.069988 -FIRE: 4 00:57:47 -1035.186860 0.771827 -FIRE: 5 00:57:48 -1035.372409 0.506982 -FIRE: 6 00:57:50 -1035.447555 0.534894 -FIRE: 7 00:57:51 -1035.462495 0.807972 -FIRE: 8 00:57:52 -1035.477803 0.770688 -FIRE: 9 00:57:53 -1035.505976 0.699236 -FIRE: 10 00:57:55 -1035.542734 0.599317 -FIRE: 11 00:57:56 -1035.582812 0.480789 diff --git a/ctmtna-simple/loginfo b/ctmtna-simple/loginfo deleted file mode 100644 index 3b05b8e8..00000000 --- a/ctmtna-simple/loginfo +++ /dev/null @@ -1,53 +0,0 @@ -2026-08-08 00:52:20,722| --------Global Crystal Structure Prediction------ -smile : xyz_only -Zprime : [1] -N_torsion : 0 -N_conformers: [1] (total 1) -sg : [61] -ncpu : 1 -directory : ctmtna-simple -opt_lat : True -usp_mpi : False - -mlp : MACE -Mode : Sampling -cif : ctmtna-simple/WFS-gaff.cif -forcefield: Predefined - -Method : Stochastic Width First Sampling -Generation: 4 -Population: 5 -Fraction : 1.00 0.00 -2026-08-08 00:52:20,722| Generation 0 starts -2026-08-08 00:53:26,685| --------Global Crystal Structure Prediction------ -smile : xyz_only -Zprime : [1] -N_torsion : 0 -N_conformers: [1] (total 1) -sg : [61] -ncpu : 1 -directory : ctmtna-simple -opt_lat : True -usp_mpi : False - -mlp : MACE -Mode : Sampling -cif : ctmtna-simple/WFS-gaff.cif -forcefield: Predefined - -Method : Stochastic Width First Sampling -Generation: 4 -Population: 5 -Fraction : 1.00 0.00 -2026-08-08 00:53:26,685| Generation 0 starts -2026-08-08 00:53:29,572| Using CPU -2026-08-08 00:53:29,572| Using head Default out of ['Default'] -2026-08-08 00:53:29,572| Default dtype float32 does not match model dtype float64, converting models to float32. -2026-08-08 00:53:29,700| Using CPU -2026-08-08 00:53:29,700| Using head Default out of ['Default'] -2026-08-08 00:53:29,700| Default dtype float32 does not match model dtype float64, converting models to float32. -2026-08-08 00:56:53,522| Generation-0 finishes 5/5 strucs -2026-08-08 00:56:53,526| Success rate @ Gen 0: 0.0000% -2026-08-08 00:56:53,526| Generation 1 starts From 74e511100a727938ed994cba635771ea58c700e9 Mon Sep 17 00:00:00 2001 From: Musiha Mukta Date: Sat, 8 Aug 2026 01:40:24 -0400 Subject: [PATCH 4/5] enable xyz format --- pyxtal/optimize/base.py | 47 +++++++++++++++++++++++++++++++++-------- 1 file changed, 38 insertions(+), 9 deletions(-) diff --git a/pyxtal/optimize/base.py b/pyxtal/optimize/base.py index 74c3d8a9..bc8d817f 100644 --- a/pyxtal/optimize/base.py +++ b/pyxtal/optimize/base.py @@ -176,6 +176,7 @@ def __init__( use_mpi: bool = False, pre_opt: bool = False, N_min_matches: int = 10, + xyz_only: bool = False, ): self.ncpu = N_cpu @@ -198,6 +199,7 @@ def __init__( # Molecular information self.smile = smiles self.smiles = self.smile.split(".") # list + self.xyz_only = xyz_only self.torsions = torsions self.molecules = molecules self.block = block @@ -205,9 +207,15 @@ def __init__( self.composition = [ 1] * len(self.smiles) if composition is None else composition self.N_torsion = 0 - for smi, comp in zip(self.smiles, self.composition): - self.N_torsion += len(find_rotor_from_smile(smi) - ) * int(max([comp, 1])) + if self.xyz_only and self.molecules is not None: + for pool, comp in zip(self.molecules, self.composition): + molecule = pool[0] if isinstance(pool, (list, tuple)) else pool + torsionlist = getattr(molecule, "torsionlist", None) or [] + self.N_torsion += len(torsionlist) * int(max([comp, 1])) + else: + for smi, comp in zip(self.smiles, self.composition): + self.N_torsion += len(find_rotor_from_smile(smi) + ) * int(max([comp, 1])) # Crystal information self.pre_opt = pre_opt @@ -259,7 +267,15 @@ def __init__( filename=self.log_file, level=logging.INFO) self.logging = logging - if info is not None: + if self.xyz_only: + if self.skip_mlp: + raise ValueError("xyz_only requires skip_mlp=False") + if self.molecules is None: + raise ValueError("xyz_only requires pre-built molecular geometries") + self.atom_info = {} + self.parameters = None + self.ff_opt = False + elif info is not None: self.atom_info = info self.parameters = None self.ff_opt = False @@ -461,8 +477,9 @@ def run(self, ref_pmg=None, ref_pxrd=None, max_rmsd=None): results = self._run(pool) except (EOFError, OSError) as e: print(f"Error in running the optimizer: {e}") - pool.terminate() - pool.join() + if pool is not None: + pool.terminate() + pool.join() return None if self.rank == 0: @@ -796,11 +813,22 @@ def _apply_gaussian(self, reps, engs, h1=0.1, h2=0.1, w1=0.2, w2=3): g1 = h1 * np.exp(-0.5 * diff1) # cell # Torsion g2 = 0 - if len(tor1) > 0: + # Relaxation may discover higher symmetry, so a Z'>1 + # candidate and a saved Z'=1 structure can have different + # numbers (or layouts) of molecular-site records. Their + # torsion vectors are not directly comparable. Keep the + # lattice Gaussian, but only compare torsions when the + # representation layouts match. + same_layout = ( + len(ref) == len(rep) + and all(len(ref[j]) == len(rep[j]) + for j in range(1, len(rep))) + ) + if len(tor1) > 0 and same_layout: tor2 = np.zeros(self.N_torsion) count = 0 - for j in range(1, len(rep)): - if len(rep[j]) > N_id: # for Cl- + for j in range(1, len(ref)): + if len(ref[j]) > N_id: # for Cl- tor2[count: count + len(ref[j]) - N_id - 1] = ref[j][N_id:-1] count += len(ref[j]) - N_id @@ -900,6 +928,7 @@ def _get_local_optimization_args(self): self.opt_lat, getattr(self, 'delta_length', 1.0), getattr(self, 'delta_angle', 15.0), + self.xyz_only, ] return args From 2b76048109b82a71b3ab68d2bda22edf77e4d8c2 Mon Sep 17 00:00:00 2001 From: Musiha Mukta Date: Sat, 8 Aug 2026 01:41:06 -0400 Subject: [PATCH 5/5] enable xyz format --- pyxtal/optimize/common.py | 59 ++++++++++++++++++++++++++++++--------- 1 file changed, 46 insertions(+), 13 deletions(-) diff --git a/pyxtal/optimize/common.py b/pyxtal/optimize/common.py index cfffa1db..2f07365d 100644 --- a/pyxtal/optimize/common.py +++ b/pyxtal/optimize/common.py @@ -553,6 +553,7 @@ def optimizer( skip_mlp = False, output_mlp = True, pre_opt = False, + xyz_only = False, ): """ Structural relaxation for each individual pyxtal structure. @@ -577,6 +578,33 @@ def optimizer( if pre_opt: struc.optimize_lattice_and_rotation() + if xyz_only: + cwd = os.getcwd() + t0 = time() + os.makedirs(workdir, exist_ok=True) + os.chdir(workdir) + try: + s = ASE_relax( + struc, + mlp, + opt_lat=opt_lat, + step=200 if opt_lat else 50, + fmax=0.1, + logfile="ase.log", + ) + if s is None: + return None + eng = s.get_potential_energy() + stress = max(abs(s.get_stress())) / units.GPa + if stress > 30.0: + return None + + xtal = pyxtal(molecular=True) + xtal.from_seed(ase2pymatgen(s), molecules=struc.molecules) + return {"xtal": xtal, "energy": eng, "time": time() - t0} + finally: + os.chdir(cwd) + if calculators is None: calculators = ["CHARMM"] @@ -654,7 +682,7 @@ def optimizer( struc.energy < 9999 and struc.lattice.is_valid_matrix() # and struc.check_distance() - and 0.25 < struc.get_density() < 3.0 + and 1.25 < struc.get_density() < 3.0 ): s = struc.to_ase() step = 50 if mlp in ['MACE', 'ANI'] else 25 @@ -665,14 +693,13 @@ def optimizer( t = time() - t0 if t > max_time: - try: - print("!!!Long time in ani calculation", t) - print(struc.get_1D_representation().to_string()) - struc.optimize_lattice() - except: - print("Trouble in optLat") - return None - elif stress < stress_tol: + # The relaxation has already completed successfully. Do not + # discard it merely because it exceeded this advisory target; + # the worker-level SIGALRM enforces the actual timeout. + print(f"MLP relaxation exceeded advisory time: {t:.1f} s " + f"(target {max_time:.1f} s)") + + if stress < stress_tol: results = {} if output_mlp: xtal = pyxtal(molecular=True) @@ -732,6 +759,7 @@ def optimizer_par( opt_lat=True, delta_length=1.0, delta_angle=15.0, + xyz_only=False, ): """ A routine used for parallel structure optimization @@ -777,6 +805,7 @@ def optimizer_par( opt_lat=opt_lat, delta_length=delta_length, delta_angle=delta_angle, + xyz_only=xyz_only, label=labels[i] if labels is not None else None, ) results.append((id, xtal, match, stable)) @@ -814,6 +843,7 @@ def optimizer_single( opt_lat=True, delta_length=1.0, delta_angle=15.0, + xyz_only=False, label=None, ): """ @@ -859,7 +889,7 @@ def optimizer_single( else: res = optimizer(xtal, atom_info, workdir, job_tag, opt_lat, mlp=mlp, skip_mlp=skip_mlp, output_mlp=output_mlp, - pre_opt=pre_opt) + pre_opt=pre_opt, xyz_only=xyz_only) match = False # used for matching with reference stable = True # used for tagging if the structure is stable @@ -917,8 +947,11 @@ def optimizer_single( tag += 'Stable' else: tag += 'Shallow' - rep = xtal.get_1D_representation() - strs = rep.to_string(None, eng / N, tag) + try: + rep = xtal.get_1D_representation() + strs = rep.to_string(None, eng / N, tag) + except Exception: + strs = f"{tag:8s} E={eng / N:12.3f}" # 3. Check match w.r.t the reference if ref_pmg is not None: @@ -933,7 +966,7 @@ def optimizer_single( # Further refine the structure match = True str1 = f"Match {rmsd[0]:6.2f} {rmsd[1]:6.2f} {eng / N:12.3f} " - if not skip_mlp: + if not skip_mlp and not xyz_only: xtal, eng1 = refine_struc(xtal, smiles, ASE_relax, mlp) str1 += f"Full Relax -> {eng1 / N:12.3f}" eng = eng1