Click here to go to the corresponding page for the latest version of DIALS
dials.cosym¶
Introduction¶
This program implements the methods of Gildea, R. J. & Winter, G. (2018). Acta Cryst. D74, 405-410 for determination of Patterson group symmetry from sparse multi-crystal data sets in the presence of an indexing ambiguity.
The program takes as input a set of integrated experiments and reflections, either in one file per experiment, or with all experiments combined in a single experiments.json and reflections.pickle file. It will perform analysis of the symmetry elements present in the datasets and, if necessary, reindex experiments and reflections as necessary to ensure that all output experiments and reflections are indexed consistently.
Examples:
dials.cosym experiments.json reflections.pickle
dials.cosym experiments.json reflections.pickle space_group=I23
dials.cosym experiments.json reflections.pickle space_group=I23 lattice_group=I23
Basic parameters¶
space_group = None
partiality_threshold = 0.99
unit_cell_clustering {
threshold = 5000
log = False
}
normalisation = kernel quasi *ml_iso ml_aniso
d_min = Auto
min_i_mean_over_sigma_mean = 4
min_cc_half = 0.6
lattice_group = None
dimensions = None
use_curvatures = True
weights = count standard_error
min_pairs = 3
save_plot = True
plot_prefix = ''
termination_params {
max_iterations = 100
max_calls = None
traditional_convergence_test = True
traditional_convergence_test_eps = 1
drop_convergence_test_n_test_points = 5
drop_convergence_test_max_drop_eps = 1.e-5
drop_convergence_test_iteration_coefficient = 2
}
cluster {
method = dbscan bisect minimize_divide agglomerative *seed
dbscan {
eps = 0.5
min_samples = 5
}
bisect {
axis = 0
}
agglomerative {
n_clusters = 2
}
seed {
min_silhouette_score = 0.2
n_clusters = auto
}
}
nproc = 1
seed = 230
output {
suffix = "_reindexed"
log = dials.cosym.log
debug_log = dials.cosym.debug.log
experiments = "reindexed_experiments.json"
reflections = "reindexed_reflections.pickle"
}
verbosity = 1
Full parameter definitions¶
space_group = None
.type = space_group
partiality_threshold = 0.99
.help = "Use reflections with a partiality above the threshold."
.type = float(allow_none=True)
unit_cell_clustering {
threshold = 5000
.help = "Threshold value for the clustering"
.type = float(value_min=0, allow_none=True)
log = False
.help = "Display the dendrogram with a log scale"
.type = bool
}
normalisation = kernel quasi *ml_iso ml_aniso
.type = choice
d_min = Auto
.type = float(value_min=0, allow_none=True)
min_i_mean_over_sigma_mean = 4
.type = float(value_min=0, allow_none=True)
min_cc_half = 0.6
.type = float(value_min=0, value_max=1, allow_none=True)
lattice_group = None
.type = space_group
dimensions = None
.type = int(value_min=2, allow_none=True)
use_curvatures = True
.type = bool
weights = count standard_error
.type = choice
min_pairs = 3
.help = "Minimum number of pairs for inclusion of correlation coefficient in"
"calculation of Rij matrix."
.type = int(value_min=1, allow_none=True)
save_plot = True
.type = bool
plot_prefix = ''
.type = str
termination_params {
max_iterations = 100
.type = int(value_min=0, allow_none=True)
max_calls = None
.type = int(value_min=0, allow_none=True)
traditional_convergence_test = True
.type = bool
traditional_convergence_test_eps = 1
.type = float(allow_none=True)
drop_convergence_test_n_test_points = 5
.type = int(value_min=2, allow_none=True)
drop_convergence_test_max_drop_eps = 1.e-5
.type = float(value_min=0, allow_none=True)
drop_convergence_test_iteration_coefficient = 2
.type = float(value_min=1, allow_none=True)
}
cluster {
method = dbscan bisect minimize_divide agglomerative *seed
.type = choice
dbscan {
eps = 0.5
.type = float(value_min=0, allow_none=True)
min_samples = 5
.type = int(value_min=1, allow_none=True)
}
bisect {
axis = 0
.type = int(value_min=0, allow_none=True)
}
agglomerative {
n_clusters = 2
.type = int(value_min=1, allow_none=True)
}
seed {
min_silhouette_score = 0.2
.type = float(value_min=-1, value_max=1, allow_none=True)
n_clusters = auto
.type = int(value_min=1, allow_none=True)
}
}
nproc = 1
.help = "The number of processes to use."
.type = int(value_min=1, allow_none=True)
seed = 230
.type = int(value_min=0, allow_none=True)
output {
suffix = "_reindexed"
.type = str
log = dials.cosym.log
.type = str
debug_log = dials.cosym.debug.log
.type = str
experiments = "reindexed_experiments.json"
.type = path
reflections = "reindexed_reflections.pickle"
.type = path
}
verbosity = 1
.help = "The verbosity level"
.type = int(value_min=0, allow_none=True)