besmarts.core.clusters module

besmarts.core.clusters

Associates a SMARTS hierarchy to a dataset group (of assignments)

besmarts.core.clusters.check_lbls_data_selections_equal(lbls: smiles_assignment_group, data: smiles_assignment_group)[source]
besmarts.core.clusters.clustering_assign(ph: smarts_clustering, gcd: graph_codec, assign: smarts_hierarchy_assignment)[source]
besmarts.core.clusters.clustering_build_assignment_mappings(hierarchy: smarts_hierarchy, assns: smiles_assignment_group) Dict[str, List[List[Sequence[int]]]][source]
besmarts.core.clusters.clustering_build_label_mappings(initial_conditions: smarts_clustering, stuag)[source]
besmarts.core.clusters.clustering_build_ordinal_mappings(initial_conditions: smarts_clustering, stuag, select=None)[source]

parameter:data mapping

class besmarts.core.clusters.clustering_collect_split_candidates_ctx[source]

Bases: object

assn = None
backmap = None
ret = None
besmarts.core.clusters.clustering_collect_split_candidates_serial(S, ret, step, operation)[source]
besmarts.core.clusters.clustering_collect_split_candidates_single(j)[source]
besmarts.core.clusters.clustering_collect_split_candidates_single_distributed(j, matched, shm=None)[source]
besmarts.core.clusters.clustering_collect_structures(A, matches, topo, extend)[source]
besmarts.core.clusters.clustering_initial_conditions(gcd, sag: smiles_assignment_group, hidx=None, labeler=None, prefix='p')[source]
besmarts.core.clusters.clustering_node_remove_by_name(ph: smarts_clustering, gcd: graph_codec, assign: smarts_hierarchy_assignment, name: str)[source]

removes the nodes and reassigns tree

class besmarts.core.clusters.clustering_objective[source]

Bases: object

is_discrete() bool[source]
merge(A, B) float[source]
report(A) str[source]
single(A) float[source]
split(A, B) float[source]
sum() bool[source]
besmarts.core.clusters.clustering_update_assignments(group: structure_assignment_group, match) structure_assignment_group[source]
besmarts.core.clusters.find_successful_candidates_distributed(S, Sj, operation, edits, shm=None)[source]
besmarts.core.clusters.get_assns(assignments, topo)[source]
besmarts.core.clusters.get_objective(cst, assn, objfn, edits, splitting=True)[source]
besmarts.core.clusters.match_group_assignments(assignments, topo) Dict[str, List[Tuple[int, Sequence[int]]]][source]
besmarts.core.clusters.objective_total(hidx, groups, objective)[source]
besmarts.core.clusters.perform_operations(hidx: structure_hierarchy, candidates, keys, group_number, Sj_sma, strategy, prefix='p')[source]
class besmarts.core.clusters.smarts_clustering(structure_hierarchy, assign_group, mappings)[source]

Bases: object

group: smiles_assignment_group
group_prefix_str
hierarchy: structure_hierarchy
mappings: Dict[str, List[List[Sequence[int]]]]
besmarts.core.clusters.smarts_clustering_find_max_depth(group: structure_assignment_group, maxdepth, gcd=None) int[source]
besmarts.core.clusters.smarts_clustering_optimize(gcd: graph_codec, labeler: smarts_hierarchy_assignment, sag: smiles_assignment_group, objective: clustering_objective, strategy: optimization_strategy, initial_conditions: smarts_clustering) smarts_clustering[source]
besmarts.core.clusters.smarts_filter_bond_lengths(gcd: graph_codec, labeler: smarts_hierarchy_assignment, sag: smiles_assignment_group, hierarchy: smarts_hierarchy, cutoffs: Dict[str, float]) List[int][source]
besmarts.core.clusters.smarts_filter_data(gcd: graph_codec, labeler: smarts_hierarchy_assignment, sag: smiles_assignment_group, hierarchy: smarts_hierarchy, bounds: Dict[str, Tuple[float, float]]) List[int][source]