From 2cb17bb88c46d3e7ba50670fb9e7f0f076b88151 Mon Sep 17 00:00:00 2001 From: David Waterman Date: Fri, 14 Jan 2022 11:49:27 +0000 Subject: [PATCH 1/3] Add and update PHIL captions (#644) so that they can be read by the i2 GUI. Co-authored-by: Richard Gildea --- newsfragments/644.doc | 1 + .../Modules/MultiCrystal/ScaleAndMerge.py | 66 +++++++++++++++---- src/xia2/Modules/MultiCrystal/__init__.py | 3 + 3 files changed, 58 insertions(+), 12 deletions(-) create mode 100644 newsfragments/644.doc diff --git a/newsfragments/644.doc b/newsfragments/644.doc new file mode 100644 index 0000000000..48e6dd34e8 --- /dev/null +++ b/newsfragments/644.doc @@ -0,0 +1 @@ +``xia2.multiplex``: Add, and update, PHIL parameter descriptions. diff --git a/src/xia2/Modules/MultiCrystal/ScaleAndMerge.py b/src/xia2/Modules/MultiCrystal/ScaleAndMerge.py index ac66bac8b6..52fda1ace9 100644 --- a/src/xia2/Modules/MultiCrystal/ScaleAndMerge.py +++ b/src/xia2/Modules/MultiCrystal/ScaleAndMerge.py @@ -44,7 +44,9 @@ # The phil scope phil_scope = iotbx.phil.parse( """ -unit_cell_clustering { +unit_cell_clustering + .short_caption = "Unit cell clustering" +{ threshold = 5000 .type = float(value_min=0) .help = 'Threshold value for the clustering' @@ -54,6 +56,7 @@ } scaling + .short_caption = "Scaling" { anomalous = False .help = "Separate anomalous pairs in scaling and error model optimisation." @@ -74,22 +77,30 @@ share.absorption = False .type = bool .expert_level = 2 - .short_caption = "Apply a shared absorption correction between sweeps. Only" - "suitable for scaling measurements from a single crystal." + .short_caption = "Shared absorption correction" + .help = "Apply a shared absorption correction between sweeps. Only" + "suitable for scaling measurements from a single crystal." } absorption_level = low medium high .type = choice .expert_level = 2 - .short_caption = "Set the extent of absorption correction in scaling" + .help = "Set the extent of absorption correction in scaling" + .short_caption = "Absorption level" model = physical dose_decay array KB *auto .type = choice + .short_caption = "Scaling model" outlier_rejection = simple standard .type = choice + .short_caption = "Outlier rejection" min_partiality = None .type = float(value_min=0, value_max=1) + .short_caption = "Minimum partiality" partiality_cutoff = None .type = float(value_min=0, value_max=1) - reflection_selection { + .short_caption = "Partiality cutoff" + reflection_selection + .short_caption = "Reflection selection" + { method = quasi_random intensity_ranges use_all random .type = choice .help = "Method to use when choosing a reflection subset for scaling model" @@ -106,22 +117,31 @@ "slow for large datasets." Isigma_range = None .type = floats(size=2) + .short_caption = "I/σ range" + .help = "Minimum and maximum I/sigma values used to select a subset of" + "reflections for minimisation. A value of 0.0 for the maximum" + "indicates that no upper limit should be applied." } } -symmetry { +symmetry + .short_caption = "Symmetry" +{ resolve_indexing_ambiguity = True .type = bool + .short_caption = "Resolve indexing ambiguity" cosym { include scope dials.algorithms.symmetry.cosym.phil_scope } laue_group = None .type = space_group - .help = "Specify the Laue group. If None, then the Laue group will be determined " + .help = "Specify the Laue group. If None, then the Laue group will be determined" "by dials.cosym." + .short_caption = "Laue group" space_group = None .type = space_group - .help = "Specify the space group. If None, then the dials.symmetry will perform " + .help = "Specify the space group. If None, then the dials.symmetry will perform" "analysis of systematically absent reflections to determine the space group." + .short_caption = "Space group" } resolution @@ -141,21 +161,29 @@ rescale_after_resolution_cutoff = False .help = "Re-scale the data after application of a resolution cutoff" .type = bool + .short_caption = "Rescale after resolution cutoff" -filtering { +filtering + .short_caption = "Filtering" +{ method = None deltacchalf .type = choice .help = "Choice of whether to do any filtering cycles, default None." - deltacchalf { + deltacchalf + .short_caption = "ΔCC½" + { max_cycles = None .type = int(value_min=1) + .short_caption = "Maximum number of cycles" max_percent_removed = None .type = float + .short_caption = "Maximum percentage removed" min_completeness = None .type = float(value_min=0, value_max=100) .help = "Desired minimum completeness, as a percentage (0 - 100)." + .short_caption = "Minimum completeness" mode = dataset image_group .type = choice .help = "Perform analysis on whole datasets or batch groups" @@ -163,9 +191,11 @@ .type = int(value_min=1) .help = "The number of images to group together when calculating delta" "cchalf in image_group mode" + .short_caption = "Group size" stdcutoff = None .type = float .help = "Datasets with a ΔCC½ below (mean - stdcutoff*std) are removed" + .short_caption = "Standard deviation cutoff" } } @@ -173,30 +203,41 @@ include scope xia2.Modules.MultiCrystal.master_phil_scope } -unit_cell { +unit_cell + .short_caption = "Unit cell" +{ refine = *two_theta .type = choice(multi=True) } -two_theta_refine { +two_theta_refine + .short_caption = "2θ refinement" +{ combine_crystal_models = True .type = bool + .short_caption = "Combine crystal models" } min_completeness = None .type = float(value_min=0, value_max=1) + .short_caption = "Minimum completeness" min_multiplicity = None .type = float(value_min=0) + .short_caption = "Minimum multiplicity" max_clusters = None .type = int(value_min=1) + .short_caption = "Maximum number of clusters" cluster_method = *cos_angle correlation unit_cell .type = choice + .short_caption = "Metric on which to perform clustering" identifiers = None .type = strings + .short_caption = "Identifiers" dose = None .type = ints(size=2, value_min=0) + .short_caption = "Dose" nproc = Auto .type = int(value_min=1) @@ -204,6 +245,7 @@ .expert_level = 0 remove_profile_fitting_failures = True .type = bool + .short_caption = "Remove profile fitting failures" """, process_includes=True, diff --git a/src/xia2/Modules/MultiCrystal/__init__.py b/src/xia2/Modules/MultiCrystal/__init__.py index 11026fbcb3..3998e99ec1 100644 --- a/src/xia2/Modules/MultiCrystal/__init__.py +++ b/src/xia2/Modules/MultiCrystal/__init__.py @@ -27,10 +27,13 @@ """\ unit_cell = None .type = unit_cell + .short_caption = "Unit cell" n_bins = 20 .type = int(value_min=1) + .short_caption = "Number of bins" d_min = None .type = float(value_min=0) + .short_caption = "High resolution cutoff" %s """ % batch_phil_scope From 0581f9a4eb4f7803e4381711d098a57599622e6a Mon Sep 17 00:00:00 2001 From: DiamondLightSource-build-server Date: Tue, 25 Jan 2022 04:39:22 +0000 Subject: [PATCH 2/3] =?UTF-8?q?Bump=20version:=203.8.0=20=E2=86=92=203.8.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .bumpversion.cfg | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index ea0e35e584..e7f32af3de 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.8.0 +current_version = 3.8.1 commit = True tag = False parse = (?P\d+)\.(?P\d+)\.(?P[a-z]+)?(?P\d+)? diff --git a/setup.py b/setup.py index 50ee419024..bd127e81d8 100644 --- a/setup.py +++ b/setup.py @@ -4,7 +4,7 @@ # Version number is determined either by git revision (which takes precendence) # or a static version number which is updated by bump2version -__version_tag__ = "3.8.0" +__version_tag__ = "3.8.1" console_scripts = [ "dev.xia2.check_mosaic=xia2.cli.check_mosaic:run", From ca62a4d1c611713f9cdf1a99bb077a862656d535 Mon Sep 17 00:00:00 2001 From: DiamondLightSource-build-server Date: Tue, 25 Jan 2022 04:39:22 +0000 Subject: [PATCH 3/3] Towncrier for 3.8.1 towncrier --name "xia2" --version 3.8.1 --- CHANGELOG.rst | 9 +++++++++ newsfragments/644.doc | 1 - 2 files changed, 9 insertions(+), 1 deletion(-) delete mode 100644 newsfragments/644.doc diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 2536a7e62b..1d90f42958 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,3 +1,12 @@ +xia2 3.8.1 (2022-01-25) +======================= + +Improved Documentation +---------------------- + +- ``xia2.multiplex``: Add, and update, PHIL parameter descriptions. (`#644 `_) + + xia2 3.8.0 (2022-01-11) ======================= diff --git a/newsfragments/644.doc b/newsfragments/644.doc deleted file mode 100644 index 48e6dd34e8..0000000000 --- a/newsfragments/644.doc +++ /dev/null @@ -1 +0,0 @@ -``xia2.multiplex``: Add, and update, PHIL parameter descriptions.