diff --git a/README.md b/README.md index 3954b3c..f2f642a 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,18 @@ # dw-examples -Examples of merging crystallographic intensities with a bivariate prior +This folder contains four examples of merging crystallographic intensities with a bivariate prior: -## Setup +- [time-resolved Laue crystallography of the photoactive yellow protein](pyp/README.md) +- [anomalous diffraction from serial XFEL crystallography of thermolysin](thermolysin_xfel/README.md) +- [anomalous diffraction from Laue crystallography of NaI-soaked lysozyme](lysozyme/README.md) +- [fragment screening monochromatic data of Nsp3 Mac1](dfs/README.md) + +Every example includes scripts to run `careless` as well as to analyze the outputs in order to reproduce the figures in the double-Wilson manuscript. For every example, there is a `README.md` that describes the contents of each example folder. + +## requirements -To run much of the scripts and notebooks in this repository, [Careless](https://github.com/rs-station/careless) and [rs-booster](https://github.com/rs-station/rs-booster) must be installed. Many scripts activate a conda environment with Careless installed, e.g.: +To run much of the scripts and notebooks in this repository, [Careless](https://github.com/rs-station/careless) and [rs-booster](https://github.com/rs-station/rs-booster) must be installed. See both repositories for installation instructions. Many scripts activate a conda environment with Careless installed, e.g. [run_ccs.sh](pyp/run_ccs.sh) in the `pyp` folder: -[run_ccs.sh](pyp/run_ccs.sh) ``` #please indicate your desired careless environment here! eval "$(conda shell.bash hook)" @@ -14,21 +20,16 @@ conda activate careless ``` Please change the name of the conda environment as needed. -Additionally, some scripts require sourcing Phenix, e.g.: -[run_ccs.sh](thermolysin_xfel/scripts/run_ccs.sh) +Additionally, some scripts require sourcing Phenix, e.g. [launch_refinement.sh](thermolysin_xfel/scripts/launch_refinement.sh) in the `thermolysin_xfel` folder: + ``` # source your copy of phenix here! -source /n/holylfs05/LABS/hekstra_lab/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh ``` Please change the path of the phenix environment file as needed. Finally, all jobs were run on a computing cluster, so certain Careless scripts require `slurm` to run. -## Examples -For every example, there is a `README.md` that describes the contents of each example folder. Additionally, every example includes scripts to run `careless` as well as to analyze the outputs in order to reproduce the figures in the double-Wilson manuscript. The examples are: -- [time-resolved Laue crystallography of the photoactive yellow protein](pyp/README.md) -- [anomalous diffraction from serial XFEL crystallography of thermolysin](thermolysin_xfel/README.md) -- [anomalous diffraction from Laue crystallography of NaI-soaked lysozyme](lysozyme/README.md) -- [fragment screening monochromatic data of Nsp3 Mac1](dfs/README.md) + diff --git a/dfs/CCs.svg b/dfs/CCs.svg index 5b845de..ef2c687 100644 --- a/dfs/CCs.svg +++ b/dfs/CCs.svg @@ -6,7 +6,7 @@ - 2024-04-26T14:14:39.732384 + 2024-05-02T14:21:20.224728 image/svg+xml @@ -42,16 +42,16 @@ z +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - - + @@ -62,11 +62,11 @@ L 0 3.5 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -77,11 +77,11 @@ L 226.433792 27.789 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -92,11 +92,11 @@ L 117.056346 27.789 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -118,16 +118,16 @@ L 83.914981 27.789 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - - + @@ -138,11 +138,11 @@ L -3.5 0 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -153,11 +153,11 @@ L 395.36 169.158823 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -168,11 +168,11 @@ L 395.36 98.473911 +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 2.96,1.28; stroke-dashoffset: 0; stroke: #b0b0b0; stroke-width: 0.8"/> - + @@ -194,9 +194,9 @@ L 281.685806 108.773877 L 314.626901 122.759821 L 347.492009 137.24783 L 380.539545 155.68861 -" clip-path="url(#p2365604e7b)" style="fill: none; stroke-dasharray: 5.55,2.4; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 5.55,2.4; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -232,18 +232,18 @@ L 281.685806 139.54172 L 314.626901 150.384271 L 347.492009 157.224623 L 380.539545 171.870543 -" clip-path="url(#p2365604e7b)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> - - - - - - - - - - - +" clip-path="url(#p62c375646e)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> + + + + + + + + + + + @@ -289,7 +289,7 @@ L 270.24 189.766234 L 286.24 189.766234 " style="fill: none; stroke-dasharray: 5.55,2.4; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> - + @@ -307,7 +307,7 @@ L 270.24 214.883734 L 286.24 214.883734 " style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #808080; stroke-width: 1.5"/> - + @@ -323,7 +323,7 @@ L 286.24 214.883734 - + diff --git a/dfs/Inspect_Careless_param_grid-DFS.ipynb b/dfs/Inspect_Careless_param_grid-DFS.ipynb index cc920ad..43915ab 100644 --- a/dfs/Inspect_Careless_param_grid-DFS.ipynb +++ b/dfs/Inspect_Careless_param_grid-DFS.ipynb @@ -906,7 +906,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -974,7 +974,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -1040,7 +1040,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 16, "metadata": {}, "outputs": [ { @@ -1083,7 +1083,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 17, "metadata": {}, "outputs": [ { @@ -1138,12 +1138,21 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Correlate the grid_ids with 1-BDC" + "## Correlate the grid_ids with 1-BDC and refined occupancy" ] }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "result[\"occ\"] = [0.6,0.66,0.63,1,0.64,0.72,0.72,0.62,0.87,0.6,0.8,0.82,0.84,0.67,0.6,0.89]" + ] + }, + { + "cell_type": "code", + "execution_count": 19, "metadata": {}, "outputs": [], "source": [ @@ -1154,7 +1163,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -1168,7 +1177,7 @@ }, { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] @@ -1189,6 +1198,77 @@ "plt.savefig(\"../bdc_rdw_corr_new.svg\", bbox_inches=\"tight\")" ] }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " log_dw occ\n", + "log_dw 1.000000 -0.022081\n", + "occ -0.022081 1.000000\n" + ] + }, + { + "data": { + "image/png": "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CVdccUWbXtzBrF69Gk8++WRIx6Tw8/l8sNvtsNvtbZapVKpAc2GDwdDlZt6R0Nk4ZjExMWhoaEBtbW0vl0y+vF4v6urqWD0lA7KswuoJVVVVmDRpEp577jk8/fTTOH78OJqamrB3716MHTsWTz75JCZPnhwIr/asWLECFosl8JJzc9lo4x+O4syZMygtLUVZWRlqampgt9tl28v43HHMgnE4HNBqtVH9bM7j8QSej506dQrHjx9neMiELO9ATCYTgLPN79rjn8A+1L4XCxYswL59+7BmzRo8+uijgffHjx+PTz/9FGPHjsWhQ4fw7LPPdniHodPp2v22SPLir25saGiAQqGAXq8PdGaUyzk8fxyzc6uxhBCor69Hbm4u8vLyIljK3udwONDY2IimpiY+/5ExWd6BZGVlAUCH3+79y/zrdqSiogKff/45AODWW29ts1yj0eDmm28GAHzxxRddLC31BUII2O121NTUoKysDMePH8fp06dhtVojWn/uH8fMZDKhoqICdrs9UE1XUVGBuLg4LF++PCr6gwghYLVaUV5ejvLyclitVoaHzMnyt9L/bauurq7dh+T79+8HgFZ9RNpTXl4e+Hd7dyz+h+fnt9Ci/snj8cBqteL06dM4fvw4Tpw4gZqaGjQ3N/d6Cx7/OGa5ublobm5GVVUVmpubkZubiw0bNiA/P79Xy9PbPB4PamtrA6EeLc23+wPJAbJ9+3bk5+d32EZ9586dyM/PD3z7D9WQIUMwfvx4AMDGjRvbLN+1axdOnjwJnU6HWbNmdbq/cx+Of//990HX+e677wCg3WbD1L+5XC40NDSgoqICx44dw4kTJ1BdXQ2r1dor4ybl5+dj+/bt+PDDD/Hmm2/iww8/DPyN9UdOpxONjY2orKzE8ePHObBhHyU5QN544w3s3bs3cKEP5tJLL8X333+PN998s8v7X7lyJQCgoKAgMFYVcPauZPHixQCA+++/v1Wz2y1btmDYsGGYMWNGq31lZGQEyvnggw/ixIkTrZa/8847ePfddwEE77hI0cflcsFiseD06dMoLS3F8ePHUVlZifr6etjt9h652CmVSowdOxZXX301xo4d22+qrYQQcLlcsNlsOH36NI4dO4aysjKcOXMm8CyT+ibJD9H379+P0aNHBx54B2MymZCXl4e9e/d2ef833HADlixZgvXr12PChAmY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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(figsize=[4,4])\n", + "result[\"log_dw\"] = np.log10(1-result[\"rDW\"])\n", + "sns.regplot(data=result, x=\"log_dw\", y=\"occ\",ax=ax, color=\"k\")\n", + "plt.ylabel(r\"occ\")\n", + "plt.xlabel(r\"double-Wilson $r$\")\n", + "print(result[[\"log_dw\",\"occ\"]].corr())\n", + "plt.xticks(ticks=[-2,-1,0],labels=[\"0.99\",\"0.9\",\"0\"])\n", + "plt.gca().invert_xaxis()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 1-BDC occ\n", + "1-BDC 1.000000 0.489527\n", + "occ 0.489527 1.000000\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(figsize=[4,4])\n", + "sns.regplot(data=result, x=\"1-BDC\", y=\"occ\",ax=ax, color=\"k\")\n", + "plt.ylabel(r\"occ\")\n", + "plt.xlabel(r\"1-BDC\")\n", + "print(result[[\"1-BDC\",\"occ\"]].corr())\n", + "#plt.xticks(ticks=[-2,-1,0],labels=[\"0.99\",\"0.9\",\"0\"])\n", + "plt.gca().invert_xaxis()" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/dfs/README.md b/dfs/README.md index 98b4cc5..27f6a6f 100644 --- a/dfs/README.md +++ b/dfs/README.md @@ -5,7 +5,7 @@ This folder contains instructions and scripts for processing an Nsp3 Mac1 fragme 2. inspect CCpred and difference map peak heights. -We start with MTZ files found in `./20221007_unscaled_unmerged`. These were converted from unmerged `.hkl` files generously gifted by Galen Correy, for (Schuller et al. 2021). +We start with MTZ files found in `./20221007_unscaled_unmerged`. These were converted from unmerged `.hkl` files provided by Galen Correy, for (Schuller et al. *Sci. Adv.* 2021, DOI: 10.1126/sciadv.abf8711). To run `careless`, we use the script `careless_runs/slurm-dw-array-grid.sh`, which starts a `slurm` batch array job. This job requires `careless_runs/slurm_params.txt`, in which we vary the double-Wilson `r` value across the individual `careless` runs. To call using slurm: @@ -31,4 +31,6 @@ Then, we evaluate the quality of the `careless` results in the jupyter notebook - `hkl2mtz.sh`: a script that uses careless to convert `.hkl` files to `.mtz` files. - `make_diffmap_all.sh`: A script that uses `rs-booster` to compute difference maps given a folder with `careless` runs in it. - `make_diffmap_indiv.sh`: A script that uses `rs-booster` to computes difference maps of a single `careless` run. - - `run_ccs_all.sh`: A script that computes CCpred given a folder with `careless` runs in it. \ No newline at end of file + - `run_ccs_all.sh`: A script that computes CCpred given a folder with `careless` runs in it. +- `Inspect_Careless_param_grid-DFS.ipynb`: a notebook for evaluating the quality of the `careless` results. +- `compute_pandda_peak_height.ipynb`: a notebook for peak height calculation of the Z-maps. \ No newline at end of file diff --git a/dfs/bdc_rdw_corr_new.svg b/dfs/bdc_rdw_corr_new.svg index 9097930..b445976 100644 --- a/dfs/bdc_rdw_corr_new.svg +++ b/dfs/bdc_rdw_corr_new.svg @@ -6,7 +6,7 @@ - 2024-03-22T13:37:52.522279 + 2024-05-02T14:21:36.301057 image/svg+xml @@ -39,7 +39,7 @@ z - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - +" clip-path="url(#p7dff7cee32)" style="fill-opacity: 0.15"/> - - + @@ -295,7 +295,7 @@ L 0 3.5 - + @@ -305,7 +305,7 @@ L 0 3.5 - + @@ -326,36 +326,36 @@ L 0 3.5 - - + - 0.1 + 0.1 - + - 0.2 + 0.2 - + - 0.3 + 0.3 @@ -363,107 +363,107 @@ L -3.5 0 - + + diff --git a/dfs/compute_pandda_ph.ipynb b/dfs/compute_pandda_ph.ipynb deleted file mode 100644 index c01a864..0000000 --- a/dfs/compute_pandda_ph.ipynb +++ /dev/null @@ -1,86 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "id": "cf5ad767-7da5-444a-8204-403cdef0bad9", - "metadata": {}, - "outputs": [], - "source": [ - "import reciprocalspaceship as rs\n", - "import gemmi as gm\n", - "import os\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "6012c13b-c3a5-475c-b44b-9cf4333ed145", - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "base_dir = \"/n/home01/hwang6/Storelab/projects/dw-examples/dfs/20221007_unscaled_unmerged/\"\n", - "for dataset in [\"P0115\", \"P0116\", \"P0123\" ,\"P0124\",\n", - " \"P0131\", \"P0132\", \"P0137\", \"P0138\",\n", - " \"P0139\", \"P0142\", \"P0148\", \"P0159\",\n", - " \"P0161\", \"P0163\", \"P0178\", \"P0179\"]:\n", - " os.chdir(base_dir+f\"UCSF-{dataset}\")\n", - " a = gm.read_ccp4_map(f\"UCSF-{dataset}-z_map.native.ccp4\")\n", - " array = a.grid.array\n", - " gridsize = array.shape[::-1]\n", - " grid = gm.FloatGrid(*gridsize)\n", - " grid.set_unit_cell(a.grid.unit_cell)\n", - " grid.spacegroup=gm.SpaceGroup(\"P43\")\n", - " temp = np.array(grid,copy=False)\n", - " temp[:,:,:]= array.T[:,:,:]\n", - " rs.io.write_ccp4_map(\n", - " grid.array, \n", - " f\"UCSF-{dataset}-z_map.native_T.ccp4\",\n", - " cell=grid.unit_cell, \n", - " spacegroup=grid.spacegroup)\n", - "\n", - " " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "55938d86-a9cf-46e0-9518-6c3502886ea7", - "metadata": {}, - "outputs": [], - "source": [ - "%%bash \n", - "cd ..\n", - "for dataset in \"P0115\" \"P0116\" \"P0123\" \"P0124\" \"P0131\" \"P0132\" \"P0137\" \"P0138\" \"P0139\" \"P0142\" \"P0148\" \"P0159\" \"P0161\" \"P0163\" \"P0178\" \"P0179\"\n", - "do\n", - " cd UCSF-${dataset}\n", - " rs.find_difference_peaks ./UCSF-${dataset}-pandda-model.pdb -z 5 -c UCSF-${dataset}-z_map.native_T.ccp4 -o out_${dataset}_pandda.csv\n", - " cd ..\n", - "done\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [conda env:anaconda-careless]", - "language": "python", - "name": "conda-env-anaconda-careless-py" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.13" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/dfs/peak_heights_scaled.svg b/dfs/peak_heights_scaled.svg index 5c68852..954f3a9 100644 --- a/dfs/peak_heights_scaled.svg +++ b/dfs/peak_heights_scaled.svg @@ -6,7 +6,7 @@ - 2024-04-26T14:02:30.429306 + 2024-05-02T14:21:22.897207 image/svg+xml @@ -43,972 +43,972 @@ L 136.405298 13.27875 L 136.405298 36.447171 L 101.503433 36.447171 L 101.503433 13.27875 -" clip-path="url(#p37431f4944)" style="fill: #3b5698"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3b5698"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3a599a"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3499aa"/> +" clip-path="url(#p8ea83a120d)" style="fill: #88d9b1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b0e4c1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d4f1dc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a1dfb9"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3e4d93"/> +" clip-path="url(#p8ea83a120d)" style="fill: #414488"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3485a5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #35a1ab"/> +" clip-path="url(#p8ea83a120d)" style="fill: #57cbad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #65d0ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #5ecdad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a6e1bc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #6dd3ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #347fa4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #357da3"/> +" clip-path="url(#p8ea83a120d)" style="fill: #43baad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b0e4c1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b5e5c4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d4f1dc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d6f1de"/> +" clip-path="url(#p8ea83a120d)" style="fill: #0b0405"/> +" clip-path="url(#p8ea83a120d)" style="fill: #221425"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3e356b"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3573a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #38a9ac"/> +" clip-path="url(#p8ea83a120d)" style="fill: #4dc4ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a4e0bb"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d4f1dc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #348da7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3488a6"/> +" clip-path="url(#p8ea83a120d)" style="fill: #4fc5ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #9cdeb7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #94dcb5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #44bcad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3cb1ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #348ca7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #4fc5ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #42b9ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #91dbb4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #8edbb3"/> +" clip-path="url(#p8ea83a120d)" style="fill: #88d9b1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a1dfb9"/> +" clip-path="url(#p8ea83a120d)" style="fill: #8bdab2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #48c0ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #44bcad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #47bfad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #91dbb4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #ccedd6"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #bee8ca"/> +" clip-path="url(#p8ea83a120d)" style="fill: #abe2be"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3a5b9b"/> +" clip-path="url(#p8ea83a120d)" style="fill: #40468a"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3aadac"/> +" clip-path="url(#p8ea83a120d)" style="fill: #91dbb4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d8f2e0"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a4e0bb"/> +" clip-path="url(#p8ea83a120d)" style="fill: #7fd7af"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3cb1ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #35a0ab"/> +" clip-path="url(#p8ea83a120d)" style="fill: #37a5ac"/> +" clip-path="url(#p8ea83a120d)" style="fill: #39abac"/> +" clip-path="url(#p8ea83a120d)" style="fill: #50c6ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #88d9b1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c4eacf"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d2f0db"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3574a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3574a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3574a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3574a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3574a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #5ecdad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b2e4c2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b5e5c4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #9cdeb7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #357ba3"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3573a1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3fb6ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #76d5ae"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a4e0bb"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c0e9cc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #caedd4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #7fd7af"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #bbe7c8"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #daf3e1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #ceeed7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #abe2be"/> +" clip-path="url(#p8ea83a120d)" style="fill: #82d8b0"/> +" clip-path="url(#p8ea83a120d)" style="fill: #4bc2ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3cb1ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3498a9"/> +" clip-path="url(#p8ea83a120d)" style="fill: #349aaa"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3491a8"/> +" clip-path="url(#p8ea83a120d)" style="fill: #73d4ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #bee8ca"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d6f1de"/> +" clip-path="url(#p8ea83a120d)" style="fill: #caedd4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b0e4c1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #91dbb4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #50c6ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #413d7b"/> +" clip-path="url(#p8ea83a120d)" style="fill: #3a2c59"/> +" clip-path="url(#p8ea83a120d)" style="fill: #366b9f"/> +" clip-path="url(#p8ea83a120d)" style="fill: #40b7ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #46bead"/> +" clip-path="url(#p8ea83a120d)" style="fill: #65d0ad"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a6e1bc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c6ebd1"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d0efd9"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #366da0"/> +" clip-path="url(#p8ea83a120d)" style="fill: #37669e"/> +" clip-path="url(#p8ea83a120d)" style="fill: #46bead"/> +" clip-path="url(#p8ea83a120d)" style="fill: #8bdab2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b9e6c7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #caedd4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b5e5c4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #91dbb4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b9e6c7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b7e6c5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b2e4c2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #c8ecd2"/> +" clip-path="url(#p8ea83a120d)" style="fill: #caedd4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #d4f1dc"/> +" clip-path="url(#p8ea83a120d)" style="fill: #ceeed7"/> +" clip-path="url(#p8ea83a120d)" style="fill: #def5e5"/> +" clip-path="url(#p8ea83a120d)" style="fill: #b5e5c4"/> +" clip-path="url(#p8ea83a120d)" style="fill: #a6e1bc"/> - - + @@ -1018,7 +1018,7 @@ L 0 3.5 - + @@ -1028,7 +1028,7 @@ L 0 3.5 - + @@ -1038,7 +1038,7 @@ L 0 3.5 - + @@ -1048,7 +1048,7 @@ L 0 3.5 - + @@ -1063,12 +1063,12 @@ L 0 3.5 - - + @@ -1078,7 +1078,7 @@ L -3.5 0 - + @@ -1088,7 +1088,7 @@ L -3.5 0 - + @@ -1098,7 +1098,7 @@ L -3.5 0 - + @@ -1108,7 +1108,7 @@ L -3.5 0 - + @@ -1118,7 +1118,7 @@ L -3.5 0 - + @@ -1128,7 +1128,7 @@ L -3.5 0 - + @@ -1138,7 +1138,7 @@ L -3.5 0 - + @@ -1148,7 +1148,7 @@ L -3.5 0 - + @@ -1158,7 +1158,7 @@ L -3.5 0 - + @@ -1168,7 +1168,7 @@ L -3.5 0 - + @@ -1178,7 +1178,7 @@ L -3.5 0 - + @@ -1188,7 +1188,7 @@ L -3.5 0 - + @@ -1198,7 +1198,7 @@ L -3.5 0 - + @@ -1208,7 +1208,7 @@ L -3.5 0 - + @@ -1218,7 +1218,7 @@ L -3.5 0 - + @@ -1336,18 +1336,18 @@ z " style="fill: #ffffff"/> +iVBORw0KGgoAAAANSUhEUgAAABkAAAIDCAYAAADxO7W3AAACVklEQVR4nO2cwbHrMBDDZEf/9Puv168F4aA9YIAGdhiSWjnJ+Pm//33rMu/tAWuttd/1XB8yomTm43qe+3OmlEiM348lwqULkSeIeoKoJ4g8QeQJQnV2eZRo0uXxZGBOniDqCaKeIEye1BNAPUGULkTpQuzl8UTUE40S0dOvxhNN4yfmlC6EKF0eT0w9KV3npARhugtrGr806ersIrQZESZP6gkgJYi9+kYC0I5HiJR4bisiTzS3FZEn9QSQEoRpx4vOLkvjRelKCSAliBqPKF2INiOidCFUSkrXOXmC2N+bJ+fUE4TIk0+jxOOJpyeidL0SJZURsb/7QvKE0bGCqCcIUU88SkTp0jR+4J9X7ROGypP7Q2o8QpQuj5LOLkJKEKKzS7RPUgLoSQth8mRgTJ4gREq6dxFSglAp0fSkfQJICcLUE5En94eULkTP8Yg2I0LUE1G6UgKoJwiVJ/eHtE8Q9QSREoRKST05JyUIkxLN7/EiT1ICaJ8gRJ4MWJInjJ60EKULIVLS2UVICUL10sn7Q9qMiM4uRJ4g8gTRXRgh8mTgnS41nmFKV0oAqhft3B+S8YiUIFKCEF0kRJ6kBJAShEjJwL8X8oQhUlK6CHmCEN27PJ6khJASxP4NDJny5Ls+pHQh9k/zI81P44kpXfeHpAQh2iedXYSpdOXJOfUEYVIyMCRPECYlolPYokR0qy9dgKl0WZSY0nV/TulCiNIl8qSeAIaUaHpSughT6cqTc+oJYr8eJZpTWOSJSEnpOqfNiChdiJQgTOkSNd6jRJMukScSJX+cIBe7asVRgAAAAABJRU5ErkJggg==" id="image8f47b31698" transform="scale(1 -1) translate(0 -370.8)" x="473.76" y="-12.96" width="18" height="370.8"/> - - + @@ -1357,7 +1357,7 @@ L 3.5 0 - + @@ -1367,7 +1367,7 @@ L 3.5 0 - + @@ -1377,7 +1377,7 @@ L 3.5 0 - + @@ -1387,7 +1387,7 @@ L 3.5 0 - + @@ -1397,7 +1397,7 @@ L 3.5 0 - + @@ -1407,7 +1407,7 @@ L 3.5 0 - + @@ -1417,7 +1417,7 @@ L 3.5 0 - + @@ -1427,7 +1427,7 @@ L 3.5 0 - + @@ -1466,7 +1466,7 @@ L 664.765924 13.27875 L 664.765924 35.520434 L 579.080755 35.520434 z -" clip-path="url(#p3fa04e2e55)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> +" clip-path="url(#pf15c5108b0)" style="fill: #00204c"/> - + @@ -1602,7 +1602,7 @@ z - + @@ -1612,7 +1612,7 @@ z - + @@ -1622,7 +1622,7 @@ z - + @@ -1674,10 +1674,10 @@ L 693.6025 13.27875 - + - + diff --git a/dfs/peakheights.svg b/dfs/peakheights.svg index 27dd4d5..8d9132c 100644 --- a/dfs/peakheights.svg +++ b/dfs/peakheights.svg @@ -6,7 +6,7 @@ - 2024-03-22T13:37:45.360824 + 2024-05-02T14:21:23.328279 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -56,7 +56,7 @@ L 0 3.5 - + @@ -66,7 +66,7 @@ L 0 3.5 - + @@ -76,7 +76,7 @@ L 0 3.5 - + @@ -97,12 +97,12 @@ L 0 3.5 - - + @@ -112,7 +112,7 @@ L -3.5 0 - + @@ -122,7 +122,7 @@ L -3.5 0 - + @@ -132,7 +132,7 @@ L -3.5 0 - + @@ -142,7 +142,7 @@ L -3.5 0 - + @@ -164,9 +164,9 @@ L 210.771825 136.391785 L 233.321901 136.095385 L 255.819961 140.185716 L 278.442902 145.817332 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -202,9 +202,9 @@ L 210.771825 310.379083 L 233.321901 308.304277 L 255.819961 306.170191 L 278.442902 309.904841 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -240,9 +240,9 @@ L 210.771825 313.876613 L 233.321901 312.750289 L 255.819961 312.394608 L 278.442902 312.691009 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -278,9 +278,9 @@ L 210.771825 263.429188 L 233.321901 261.057982 L 255.819961 259.220296 L 278.442902 260.050219 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -316,9 +316,9 @@ L 210.771825 267.5788 L 233.321901 273.032576 L 255.819961 274.4553 L 278.442902 279.434834 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -354,9 +354,9 @@ L 210.771825 263.488469 L 233.321901 267.63808 L 255.819961 268.823684 L 278.442902 273.091856 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -392,9 +392,9 @@ L 210.771825 259.161016 L 233.321901 261.591503 L 255.819961 261.710064 L 278.442902 263.014227 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #e377c2; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #e377c2; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -430,9 +430,9 @@ L 210.771825 214.167368 L 233.321901 217.605618 L 255.819961 220.569626 L 278.442902 229.639492 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #7f7f7f; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #7f7f7f; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -468,9 +468,9 @@ L 210.771825 274.988821 L 233.321901 275.225942 L 255.819961 273.447537 L 278.442902 274.33674 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #bcbd22; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #bcbd22; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - - + + + + + + + + + + + @@ -501,9 +501,9 @@ L 210.771825 320.397431 L 233.321901 321.642315 L 255.819961 321.583035 L 278.442902 322.175836 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #17becf; stroke-width: 1.5; stroke-linecap: square"/> +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #17becf; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - + + + + + + @@ -534,18 +534,18 @@ L 210.771825 281.746761 L 233.321901 281.272519 L 255.819961 281.094679 L 278.442902 284.770049 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -559,18 +559,18 @@ L 210.771825 144.216768 L 233.321901 152.693832 L 255.819961 158.503289 L 278.442902 166.446831 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -584,18 +584,18 @@ L 210.771825 90.449654 L 233.321901 95.547749 L 255.819961 100.527283 L 278.442902 111.019873 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -609,18 +609,18 @@ L 210.771825 275.522343 L 233.321901 273.684658 L 255.819961 273.091856 L 278.442902 272.024813 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -634,18 +634,18 @@ L 210.771825 71.48 L 233.321901 76.755935 L 255.819961 80.431306 L 278.442902 86.833564 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -659,18 +659,18 @@ L 210.771825 230.765815 L 233.321901 228.98741 L 255.819961 233.137022 L 278.442902 234.263345 -" clip-path="url(#pb0e9a9d139)" style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> - - - - - - - - - - - +" clip-path="url(#p312c67368d)" style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> + + + + + + + + + + + @@ -713,7 +713,7 @@ L 318.988357 20.1575 L 334.988357 20.1575 " style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -725,7 +725,7 @@ L 318.988357 43.6425 L 334.988357 43.6425 " style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -737,7 +737,7 @@ L 318.988357 67.1275 L 334.988357 67.1275 " style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -749,7 +749,7 @@ L 318.988357 90.6125 L 334.988357 90.6125 " style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -761,7 +761,7 @@ L 318.988357 114.0975 L 334.988357 114.0975 " style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -773,7 +773,7 @@ L 318.988357 137.5825 L 334.988357 137.5825 " style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -785,7 +785,7 @@ L 318.988357 161.0675 L 334.988357 161.0675 " style="fill: none; stroke: #e377c2; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -797,7 +797,7 @@ L 318.988357 184.5525 L 334.988357 184.5525 " style="fill: none; stroke: #7f7f7f; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -809,7 +809,7 @@ L 318.988357 208.0375 L 334.988357 208.0375 " style="fill: none; stroke: #bcbd22; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -821,7 +821,7 @@ L 318.988357 231.5225 L 334.988357 231.5225 " style="fill: none; stroke: #17becf; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -833,7 +833,7 @@ L 318.988357 255.0075 L 334.988357 255.0075 " style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -845,7 +845,7 @@ L 318.988357 278.4925 L 334.988357 278.4925 " style="fill: none; stroke: #ff7f0e; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -857,7 +857,7 @@ L 318.988357 301.9775 L 334.988357 301.9775 " style="fill: none; stroke: #2ca02c; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -869,7 +869,7 @@ L 318.988357 325.4625 L 334.988357 325.4625 " style="fill: none; stroke: #d62728; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -881,7 +881,7 @@ L 318.988357 348.9475 L 334.988357 348.9475 " style="fill: none; stroke: #9467bd; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -893,7 +893,7 @@ L 318.988357 372.4325 L 334.988357 372.4325 " style="fill: none; stroke: #8c564b; stroke-width: 1.5; stroke-linecap: square"/> - + @@ -903,7 +903,7 @@ L 334.988357 372.4325 - + diff --git a/dfs/pymol_dfs/pymol_template.pml b/dfs/pymol_dfs/pymol_template.pml index b076e86..bf7c2c8 100644 --- a/dfs/pymol_dfs/pymol_template.pml +++ b/dfs/pymol_dfs/pymol_template.pml @@ -5,8 +5,8 @@ dataset="P0115" num=2 # ^^^^^ -#set your path here! -cd /Users/hwang/Documents/hekstra/dw/pymol_dfs/ +#set your path to this folder here! +cd dw/pymol_dfs/ #settings diff --git a/dfs/scripts/.ipynb_checkpoints/hkl2mtz-checkpoint.sh b/dfs/scripts/.ipynb_checkpoints/hkl2mtz-checkpoint.sh index 5d4ac18..a8fd5ec 100644 --- a/dfs/scripts/.ipynb_checkpoints/hkl2mtz-checkpoint.sh +++ b/dfs/scripts/.ipynb_checkpoints/hkl2mtz-checkpoint.sh @@ -3,10 +3,10 @@ conda activate careless #please source your careless-containing environment here #this script uses careless.xds2mtz for writing mtz files from XDS files. -cd ./20221007_unscaled_unmerged/reference/ +cd ../20221007_unscaled_unmerged/reference/ careless.xds2mtz als_20200708_FRS_017_P4_INTEGRATE.HKL out.mtz -for i in ./20221007_unscaled_unmerged/UCSF-P*/ +for i in ../20221007_unscaled_unmerged/UCSF-P*/ do cd $i careless.xds2mtz *.HKL out.mtz diff --git a/dfs/scripts/.ipynb_checkpoints/make_diffmap_all-checkpoint.sh b/dfs/scripts/.ipynb_checkpoints/make_diffmap_all-checkpoint.sh index 74b09b3..4926d34 100644 --- a/dfs/scripts/.ipynb_checkpoints/make_diffmap_all-checkpoint.sh +++ b/dfs/scripts/.ipynb_checkpoints/make_diffmap_all-checkpoint.sh @@ -2,7 +2,7 @@ eval "$(conda shell.bash hook)" conda activate laue #this is a conda environment with rs-booster in it. ##to run rs.scaleit, source ccp4 in this line! -source /n/hekstra_lab_tier0/Lab/garden/ccp4/ccp4-7.1/bin/ccp4.setup-sh +source ../../../../..//ccp4/ccp4-7.1/bin/ccp4.setup-sh dir_header=$1 for dir in careless_runs/${dir_header} diff --git a/dfs/scripts/hkl2mtz.sh b/dfs/scripts/hkl2mtz.sh index 5d4ac18..a8fd5ec 100644 --- a/dfs/scripts/hkl2mtz.sh +++ b/dfs/scripts/hkl2mtz.sh @@ -3,10 +3,10 @@ conda activate careless #please source your careless-containing environment here #this script uses careless.xds2mtz for writing mtz files from XDS files. -cd ./20221007_unscaled_unmerged/reference/ +cd ../20221007_unscaled_unmerged/reference/ careless.xds2mtz als_20200708_FRS_017_P4_INTEGRATE.HKL out.mtz -for i in ./20221007_unscaled_unmerged/UCSF-P*/ +for i in ../20221007_unscaled_unmerged/UCSF-P*/ do cd $i careless.xds2mtz *.HKL out.mtz diff --git a/dfs/scripts/make_diffmap_all.sh b/dfs/scripts/make_diffmap_all.sh index 74b09b3..4926d34 100644 --- a/dfs/scripts/make_diffmap_all.sh +++ b/dfs/scripts/make_diffmap_all.sh @@ -2,7 +2,7 @@ eval "$(conda shell.bash hook)" conda activate laue #this is a conda environment with rs-booster in it. ##to run rs.scaleit, source ccp4 in this line! -source /n/hekstra_lab_tier0/Lab/garden/ccp4/ccp4-7.1/bin/ccp4.setup-sh +source ../../../../..//ccp4/ccp4-7.1/bin/ccp4.setup-sh dir_header=$1 for dir in careless_runs/${dir_header} diff --git a/lysozyme/README.md b/lysozyme/README.md index 3c3446d..32b8556 100644 --- a/lysozyme/README.md +++ b/lysozyme/README.md @@ -19,11 +19,11 @@ After running `careless`, we postprocess the data and evaluate the quality of th ## Folders -- `unmerged_mtzs`: a folder where MTZ files from the Zenodo deposition belong. These files are too large to be added to github. `integrated_NaI_3_04_frame_0001_0999.mtz` contains unmerged intensities from NaI-soaked lysozyme diffraction images processed with laue-dials. `*_{plus,minus}.mtz` are the outputs of `scripts/friedelize.py`, which splits `unmerged.mtz` into anomalous half-datasets. +- `unmerged_mtzs`: a folder where MTZ files from the Zenodo deposition belong. These files are too large to be added to github. `integrated_NaI_3_04_frame_0001_0999.mtz` contains unmerged intensities from NaI-soaked lysozyme diffraction images processed with laue-dials. `*_{plus,minus}.mtz` are the outputs of `scripts/friedelize.py`, which splits `unmerged.mtz` into F+ and F- half-datasets. - `careless_runs`: a folder containing a script for running `careless` as a batch array, as well as the resultant subfolders containing outputs from individual runs of `careless`. - `pymol`: inputs to, and outputs from pymol for visualizing anomalous omit maps. - `scripts`: a folder containing various scripts that are used for postprocessing the output data. Included in `scripts` are: - - `1_HEWL_anom_unfriedelize.sh`: a script that converts output `careless` MTZ files into downstream readable files. This script relies on `unfriedelize.py` and `unfriedelize_xval.py`, two scripts that unsplit MTZ files that have been split into anomalous half-datasets by `friedelize.py`. This script is called in the main notebook, `Inspect_Careless_param_grid.ipynb`. + - `1_HEWL_anom_unfriedelize.sh`: a script that converts output `careless` MTZ files into downstream readable files. This script relies on `unfriedelize.py` and `unfriedelize_xval.py`, two scripts that unsplit MTZ files that have been split into F+ and F- half-datasets by `friedelize.py`. This script is called in the main notebook, `Inspect_Careless_param_grid.ipynb`. - `2_HEWL_anom_refine.sh`: a script that refines phases for the anomalous omit map. This script calls `sbatch_phenix_Refine.sh`, which relies on `custom_refinement_param_*.eff` and `HEWL_starting_model*.pdb`. This script is called in `Inspect_Careless_param_grid.ipynb`. - `3_HEWL_anom_peak_heights.sh`: a script that computes anomalous omit peak heights from anomalous omit maps. - `anomalous_peak_heights.py`: a script called by `run_ccs.sh` that computes the anomalous peak heights at the iodine and sulfur anomalous scattering positions. diff --git a/lysozyme/pymol/make_diffmap_lysozyme.txt b/lysozyme/pymol/make_diffmap_lysozyme.txt index 83b3143..fc7389d 100644 --- a/lysozyme/pymol/make_diffmap_lysozyme.txt +++ b/lysozyme/pymol/make_diffmap_lysozyme.txt @@ -1,4 +1,5 @@ -cd /Users/hwang/Documents/hekstra/dw/pymol/ +#set your path to this folder here! +cd dw/pymol/ #settings bg_color white diff --git a/lysozyme/scripts/.ipynb_checkpoints/sbatch_phenix_Refine-checkpoint.sh b/lysozyme/scripts/.ipynb_checkpoints/sbatch_phenix_Refine-checkpoint.sh index 732f5d2..ff39353 100644 --- a/lysozyme/scripts/.ipynb_checkpoints/sbatch_phenix_Refine-checkpoint.sh +++ b/lysozyme/scripts/.ipynb_checkpoints/sbatch_phenix_Refine-checkpoint.sh @@ -11,8 +11,8 @@ # 1: upper refinement directory # 2: number of frames -# source phenix -source /n/hekstra_lab_tier0/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +# your phenix source goes here! +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh # run refinement cd $1/Refine_1 diff --git a/lysozyme/scripts/sbatch_phenix_Refine.sh b/lysozyme/scripts/sbatch_phenix_Refine.sh index 732f5d2..ff39353 100644 --- a/lysozyme/scripts/sbatch_phenix_Refine.sh +++ b/lysozyme/scripts/sbatch_phenix_Refine.sh @@ -11,8 +11,8 @@ # 1: upper refinement directory # 2: number of frames -# source phenix -source /n/hekstra_lab_tier0/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +# your phenix source goes here! +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh # run refinement cd $1/Refine_1 diff --git a/pyp/README.md b/pyp/README.md index 7b502b0..174faa2 100644 --- a/pyp/README.md +++ b/pyp/README.md @@ -1,11 +1,11 @@ # PYP -This folder contains instructions and scripts for processing a time-resolved PYP dataset. Here, we +This folder contains instructions and scripts for processing a time-resolved photactive yellow protein (PYP) dataset. Here, we 1. run `careless` with a bivariate prior, for many values of the double-Wilson `r` parameter, and then 2. inspect merging statistics and time-resolved differences. -We start with MTZ files found in `./unmerged_mtzs`. These were converted from `precognition` files gifted by Vukica Srajer, for (Dalton et al. 2022). +We start with MTZ files found in `./unmerged_mtzs`. These were converted from `precognition` files provided by Vukica Srajer, for (Dalton et al. *Nat. Comm.* 2022, https://doi.org/10.1038/s41467-022-35280-8). To run `careless`, we use the script `careless_runs/slurm-dw-array-grid.sh`, which starts a `slurm` batch array job. This job requires `careless_runs/slurm_params.txt`, in which we vary the double-Wilson `r` value across the individual `careless` runs. To call using slurm: diff --git a/pyp/pymol/make_diffmap_pyp b/pyp/pymol/make_diffmap_pyp index 357a626..74d434d 100644 --- a/pyp/pymol/make_diffmap_pyp +++ b/pyp/pymol/make_diffmap_pyp @@ -1,5 +1,5 @@ -#set your directory here. -cd /Users/hwang/Documents/hekstra/dw/pymol/ +#set your path to this folder here! +cd dw/pymol/ #settings diff --git a/thermolysin_xfel/README.md b/thermolysin_xfel/README.md index 62d9171..97fd140 100644 --- a/thermolysin_xfel/README.md +++ b/thermolysin_xfel/README.md @@ -1,6 +1,6 @@ # Thermolysin -This folder contains instructions and scripts for analyzing anomalous signal from an XFEL dataset of thermolysin (CXIDB, entry 81; Dalton et al. 2022). Here, we +This folder contains instructions and scripts for analyzing anomalous signal from an XFEL dataset of thermolysin (CXIDB, entry 81; Dalton et al. 2022, *Nat. Comm.* 2022, https://doi.org/10.1038/s41467-022-35280-8). Here, we 1. run `careless` with a bivariate prior, for many values of the double-Wilson `r` parameter, and then 2. inspect merging statistics and anomalous difference peak heights. @@ -18,12 +18,12 @@ After running `careless`, we evaluate the quality of the `careless` results in t ## Folders -- `unmerged_mtzs`: a folder with three unmerged MTZ files. `unmerged.mtz` contains unmerged intensities from CXIDB entry 81. `friedel_{plus,minus}.mtz` are the outputs of `scripts/friedelize.py`, which splits `unmerged.mtz` into anomalous half-datasets. +- `unmerged_mtzs`: a folder with three unmerged MTZ files. `unmerged.mtz` contains unmerged intensities from CXIDB entry 81. `friedel_{plus,minus}.mtz` are the outputs of `scripts/friedelize.py`, which splits `unmerged.mtz` into F+ and F- half-datasets. - `careless_runs`: a folder containing a script for running `careless` as a batch array, as well as the resultant subfolders containing outputs from individual runs of `careless`. - `refinement`: a folder containing reference pdb files as well as `phenix` `.eff` files for refinement of `careless` outputs. Additionally, the folder contains an MTZ file with reference `R-free flags`. -- `scripts`: a folder containing various scripts that are used for processing the output data. Included in `scripts` are: - - `anomalous_peak_heights.py`: a script called by `run_ccs.sh` that computes the anomalous peak heights at the five anomalous scattering positions. This script is not explicitly called anywhere. - - `friedelize.py`: the script used for splitting `unmerged.mtz` into anomalous half-datasets. +- `scripts`: a folder containing scripts that are used for processing the output data. Included in `scripts` are: + - `anomalous_peak_heights.py`: a script called by `run_ccs.sh` that computes the anomalous peak heights at the five anomalous scattering positions. + - `friedelize.py`: the script used for splitting `unmerged.mtz` into F+ and F- half-datasets. - `launch_refinement_omit.sh`: a script for refining an omit model against `careless` outputs, where the model's anomalous scatterers have occupancy set to 0. This script is called in `unfriedelize_all.sh`. - `launch_refinement.sh`: a script for refining a model against against `careless` outputs. This script is called in `unfriedelize_all.sh`. - `run_ccs.sh`: a script for calculating CC$_\text{1/2}$, CC$_{\text{pred}}$, CC$_\text{anom}$, and anomalous peak heights for each careless output. This script is called in `Inspect_Careless_param_grid.ipynb`. diff --git a/thermolysin_xfel/pymol/.ipynb_checkpoints/make_diffmap_thermolys-checkpoint b/thermolysin_xfel/pymol/.ipynb_checkpoints/make_diffmap_thermolys-checkpoint index 6efb63d..f2fdd99 100644 --- a/thermolysin_xfel/pymol/.ipynb_checkpoints/make_diffmap_thermolys-checkpoint +++ b/thermolysin_xfel/pymol/.ipynb_checkpoints/make_diffmap_thermolys-checkpoint @@ -1,11 +1,11 @@ -#set your path here! -cd /Users/hwang/Documents/hekstra/dw/pymol/ +#set your path to this folder here! +cd dw/pymol/ #settings bg_color white set ray_opaque_background, true set map_auto_expand_sym, 1 -set mesh_width, 1.2 +set mesh_width, 2 set antialias, 1 set direct, 0.5 util.ray_shadows('none') @@ -32,7 +32,7 @@ map_double anom2 isomesh Fobs_mesh, Fobs, 2.0, THL, carve=1.5 color gray, Fobs_mesh isomesh anom_5s_11, anom11, 5.0, THL, carve=1.5 -color orange, anom_5s_11 +color hotpink, anom_5s_11 cmd.set_view((-0.05967680737376213, 0.8059329390525818, -0.5889742970466614, -0.7495788931846619, -0.425830602645874, -0.5067390203475952, -0.6592061519622803, 0.411245197057724, 0.6295291781425476, -0.0001335088163614273, -0.0005337415495887399, -29.431926727294922, 37.03370666503906, 44.79946517944336, -8.800368309020996, 26.789161682128906, 32.278690338134766, -20.0)) @@ -41,9 +41,8 @@ png png/multivariate_THL_Zn317.png,dpi=900 hide everything, anom_5s_11 isomesh anom_5s_2, anom2, 5.0, THL, carve=1.5 -color orange, anom_5s_2 +color hotpink, anom_5s_2 -png png/univariate_THL_Zn317.png,dpi=900 hide everything, anom_5s_2 hide everything, Fobs_mesh @@ -51,7 +50,7 @@ hide everything, Fobs_mesh isomesh Fobs_mesh1.5, Fobs, 1.5, THL, carve=1.5 color gray, Fobs_mesh1.5 isomesh anom_3s_11, anom11, 3.0, THL, carve=1.5 -color orange, anom_3s_11 +color hotpink, anom_3s_11 cmd.set_view((0.30357325077056885, 0.4838598072528839, -0.8207940459251404, -0.0008155615068972111, -0.8613159656524658, -0.508045494556427, -0.9527976512908936, 0.15490283071994781, -0.26108303666114807, 0.0013101790100336075, 0.0010656783124431968, -29.386842727661133, 42.21620559692383, 50.18017578125, 5.89509391784668, 26.687164306640625, 32.17668914794922, -20.0)) @@ -68,7 +67,7 @@ png png/multivariate_THL_Ca321.png,dpi=900 hide everything, anom_3s_11 isomesh anom_3s_2, anom2, 3.0, THL, carve=1.5 -color orange, anom_3s_2 +color hotpink, anom_3s_2 cmd.set_view((0.30357325077056885, 0.4838598072528839, -0.8207940459251404, -0.0008155615068972111, -0.8613159656524658, -0.508045494556427, -0.9527976512908936, 0.15490283071994781, -0.26108303666114807, 0.0013101790100336075, 0.0010656783124431968, -29.386842727661133, 42.21620559692383, 50.18017578125, 5.89509391784668, 26.687164306640625, 32.17668914794922, -20.0)) diff --git a/thermolysin_xfel/pymol/make_diffmap_thermolys b/thermolysin_xfel/pymol/make_diffmap_thermolys index b04b8c8..f2fdd99 100644 --- a/thermolysin_xfel/pymol/make_diffmap_thermolys +++ b/thermolysin_xfel/pymol/make_diffmap_thermolys @@ -1,4 +1,5 @@ -cd /Users/hwang/Documents/hekstra/dw/pymol/ +#set your path to this folder here! +cd dw/pymol/ #settings bg_color white diff --git a/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement-checkpoint.sh b/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement-checkpoint.sh index 69ea625..b01c7c3 100644 --- a/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement-checkpoint.sh +++ b/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement-checkpoint.sh @@ -6,7 +6,7 @@ #SBATCH -t 0-00:15 # time (D-HH:MM) # source your copy of phenix here! -source /n/holylfs05/LABS/hekstra_lab/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh REF="../../../refinement" # Setup run directory diff --git a/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement_omit-checkpoint.sh b/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement_omit-checkpoint.sh index 2cdf4b7..837b262 100644 --- a/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement_omit-checkpoint.sh +++ b/thermolysin_xfel/scripts/.ipynb_checkpoints/launch_refinement_omit-checkpoint.sh @@ -6,7 +6,7 @@ #SBATCH -t 0-00:15 # time (D-HH:MM) # source your copy of phenix here! -source /n/holylfs05/LABS/hekstra_lab/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh REF="../../../refinement" # Setup run directory diff --git a/thermolysin_xfel/scripts/launch_refinement.sh b/thermolysin_xfel/scripts/launch_refinement.sh index 69ea625..b01c7c3 100644 --- a/thermolysin_xfel/scripts/launch_refinement.sh +++ b/thermolysin_xfel/scripts/launch_refinement.sh @@ -6,7 +6,7 @@ #SBATCH -t 0-00:15 # time (D-HH:MM) # source your copy of phenix here! -source /n/holylfs05/LABS/hekstra_lab/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh REF="../../../refinement" # Setup run directory diff --git a/thermolysin_xfel/scripts/launch_refinement_omit.sh b/thermolysin_xfel/scripts/launch_refinement_omit.sh index 2cdf4b7..837b262 100644 --- a/thermolysin_xfel/scripts/launch_refinement_omit.sh +++ b/thermolysin_xfel/scripts/launch_refinement_omit.sh @@ -6,7 +6,7 @@ #SBATCH -t 0-00:15 # time (D-HH:MM) # source your copy of phenix here! -source /n/holylfs05/LABS/hekstra_lab/Lab/garden/phenix/phenix-1.20.1-4487/phenix_env.sh +source ../../../../../../phenix-1.20.1-4487/phenix_env.sh REF="../../../refinement" # Setup run directory