mxtaltools.common.mol_classifier_utils

mxtaltools.common.mol_classifier_utils.classifier_reporting(true_labels, true_defects, probs, class_names, ordered_class_names, wandb, epoch_type)[source]
mxtaltools.common.mol_classifier_utils.compute_mol_radii(cluster_coords, pare_fragmented)[source]
mxtaltools.common.mol_classifier_utils.convert_box_to_cell_params(box_params)[source]
mxtaltools.common.mol_classifier_utils.convert_box_to_cell_vectors(box_params)[source]

LAMMPS periodic box style ITEM: BOX BOUNDS xy xz yz xlo_bound xhi_bound xy ylo_bound yhi_bound xz zlo_bound zhi_bound yz

a = xhi-xlo, 0, 0 b = xy, yhi-ylo, 0 c = xz, yz, zhi-zlo

xlo = xlo_bound - MIN(0, xy, xz, xy+xz) xhi = xhi_bound - MAX(0, xy, xz, xy+xz) ylo = ylo_bound - MIN(0, yz) yhi = yhi_bound - MAX(0, yz) zlo = zlo_bound zhi = zhi_bound

mxtaltools.common.mol_classifier_utils.delete_pandas_dataframe_rows(df: DataFrame, inds)[source]
mxtaltools.common.mol_classifier_utils.force_molecules_into_box(T_fc_list, cluster_coords, i, periodic)[source]

will fail on fragmented molecules or molecules otherwise wrapped

mxtaltools.common.mol_classifier_utils.get_loss(output, sample, num_forms)[source]
mxtaltools.common.mol_classifier_utils.identify_surface_molecules(cluster_coords, cluster_targets, conv_cutoff, good_mols, mol_num_atoms, mol_radii)[source]
mxtaltools.common.mol_classifier_utils.pare_cluster_radius(cluster_atoms, cluster_coords, cluster_targets, max_cluster_radius)[source]
mxtaltools.common.mol_classifier_utils.pare_fragmented_molecules(cluster_atoms, cluster_coords, cluster_targets, pare_fragmented)[source]

Identify molecules which are fragmented, or split across a periodic boundary, and delete them.

Fragmented molecules are identified as having significanly larger molecular radii than normal. :param cluster_atoms: :param cluster_coords: :param cluster_targets: :param pare_fragmented:

Returns:

mxtaltools.common.mol_classifier_utils.process_trajectory_results_dict(results_dict, loader, mol_num_atoms)[source]
mxtaltools.common.mol_classifier_utils.record_step_results(results_dict, output, sample, data, latents, embeddings, step, config, index_offset=0)[source]
mxtaltools.common.mol_classifier_utils.reindex_molecules(atomic_numbers, i, mol_ind, num_molecules, ref_coords, targets)[source]
mxtaltools.common.mol_classifier_utils.reindex_mols(dataset, i, mol_num_atoms)[source]
mxtaltools.common.mol_classifier_utils.reload_model(model, device, optimizer, path, reload_optimizer=False)[source]

load model and state dict from path includes fix for potential dataparallel issue