{"id":22901352,"url":"https://github.com/mooerslab/dsd4xtals","last_synced_at":"2026-03-19T23:57:36.012Z","repository":{"id":165234121,"uuid":"617968005","full_name":"MooersLab/dsd4xtals","owner":"MooersLab","description":"Crystal improvement with Definitive Screening Designs (DSDs)","archived":false,"fork":false,"pushed_at":"2025-04-07T20:37:52.000Z","size":2306,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-19T14:24:16.036Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MooersLab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-23T13:39:53.000Z","updated_at":"2025-04-07T20:37:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"7fd7003f-424b-4057-8c83-ed5c1f106923","html_url":"https://github.com/MooersLab/dsd4xtals","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MooersLab/dsd4xtals","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MooersLab%2Fdsd4xtals","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MooersLab%2Fdsd4xtals/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MooersLab%2Fdsd4xtals/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MooersLab%2Fdsd4xtals/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MooersLab","download_url":"https://codeload.github.com/MooersLab/dsd4xtals/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MooersLab%2Fdsd4xtals/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29179565,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T22:12:24.066Z","status":"ssl_error","status_checked_at":"2026-02-06T22:12:09.859Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-14T01:33:03.486Z","updated_at":"2026-02-06T23:01:45.470Z","avatar_url":"https://github.com/MooersLab.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"![Version](https://img.shields.io/static/v1?label=dsd4xtals\u0026message=0.3\u0026color=brightcolor)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\n\n# Crystal improvement with Definitive Screening Designs (DSDs)\n\n## Purpose\nThis repository contains Excel spreadsheets for applying Definitive Screening Designs (DSDs) to the size optimization of crystals of biological macromolecules (proteins and nucleic acids).\nBradley Jones and Christopher Nachtscheim developed DSDs ([Jones and Nachtscheim 2011](https://doi.org/10.1080/00224065.2011.11917841)).\nCrystal size is generally proportional to its diffraction power, provided it is not internally disordered and is properly cryoprotected. \nCrystallographers seek large crystals to obtain high-resolution data for high-quality structures.\n\nIt takes about 3 minutes to edit a spreadsheet to customize it for a new crystallization experiment.\nThese spreadsheets ease the application of DSDs in laboratory experiments.\nThese spreadsheets could also be adapted to other laboratory and field experiments.\nIf you need a design with a run configuration different from a 4 x 6 array, please post an issue.\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/composite1.png\" style=\"width: 90vw; min-width: 330px;\"\u003e\u003c/p\u003e\n\n\n## Why DSDs?\n\nDSDs are efficient designs for identifying the critical experimental factors that influence crystal size and other factors with little or no influence.\nThese designs are orthogonal and can detect the main effects and quadratic effects. \nThese designs cannot detect higher-order interactions. \n\nDSDs are part of experimental screening designs, including the widely known fractional factorial designs.\nInstead, we foresee DSDs being used after crystal leads have been found using sparse matrix crystallization screens or prior knowledge of the crystallization conditions for closely related proteins.\nReducing the number of factors to the vital few makes more efficient use of material and time during subsequent experiments.\nThese follow-up experiments optimize the levels of each vital factor to find the combination of factor levels that leads to the largest crystals.\n\n\n## Contents of design library\n\nThis first set of designs is limited to testing three to 11 factors.\nThese designs can fit in a 24-well crystallization tray format.\nWe plan to make designs for a 96-well format for use with liquid-handling robots and crystallization robots.\nRobots have the advantage of reduced experimental error due to more precise liquid handling.\n\nThere is one spreadsheet per design.\nThe user enters the factors' names, their central factor level, and the delta to set the low and high levels to be tested.\nThe user also enters the stock concentrations for chemical components; the spreadsheet autogenerates the volumes of each stock solution and water to be added to the crystallization solution.\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/FactorLevelInput.png\" style=\"min-width: 110px;\"\u003e\u003c/p\u003e\n\nA specific combination of factor levels are assigned to a particular crystallization well (an experimental `run' or `treatment' ) through the design matrix.\nThe design matrix is represented by the columns of codings (see below).\nThese codings have values of -1, 0, and +1 for continuous variables and -1 and 1 for categorical variables.\nIt is best to minimize the number of categorical variables because their presence complicates the analysis and weakens the power of the experiment. \n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/codings.png\" style=\"min-width: 110px;\"\u003e\u003c/p\u003e\n\nThe assignment of the runs to the wells (see below) should be randomized upon each new use of the experimental design. \nInstructions on randomizing the runs' assignment to the wells are included in the spreadsheet.\nA column of random numbers is used to randomize the assignment of treatments to wells.\nAfter the rows are sorted based on the random numbers, a new set of random numbers is automatically generated and ready for use in another round of randomization.\n\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/wellsA.png\" style=\"width: 90vw; min-width: 110px;\"\u003e\u003c/p\u003e\n\nThe results response that we seek to maximize is crystal size.\nIn my lab, we use the most extended length of the longest crystal.\nThis crystal is the one that is most apt to be cryo-protected successfully.\nWe record this information on a score sheet (see below) by date.\n\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/Scoresheet.png\" style=\"min-width: 110px;\"\u003e\u003c/p\u003e\n\n\n\nAlternatively, a 21-level scoring system can be used.\nThis scoring system does not require precise crystal length measurements and accounts for results that do not include crystals larger enough to have their lengths measured.\nAn example is shown below and is included in the spreadsheets.\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"images/Scores.png\" style=\"min-width: 110px;\"\u003e\u003c/p\u003e\n\n\nThe spreadsheets are named according to the following key: \n\n- DSD code for the experimental design type\n- r  number of runs\n- C number of chemical factors\n- P number of physical factors\n- c number of categorical factors\n\nTo download the spreadsheets, git clone the repo or click on `code` in the green button in the upper right and select `Download zip` to download all of the files. Downloading a single Excel file is problematic. \n\n## Analysis of the results\n\nBecause the continuous factors have three levels, non-linear effects can be approximated with linear models that contain quadratic terms. \nThese linear models can be applied using the response surface methodology.\nThese analysis tools are available through the R package `rsm` by Lenth (2009).\n\n\n## References\nJones, B. and Nachtsheim, C. J. (2011) A Class of Three-Level Designs for Definitive Screening in the Presence of Second-Order Effects. Journal of Quality Technology, 43, 1-15.\n\nLenth, R.V. (2009) Response-Surface Methods in R, using rsm. Journal of Statistical Software, 32, 1–17.\n\n## Update History\n\n|Version      | Changes                                         | Date                 |\n|:-----------:|:-----------------------------------------------:|:--------------------:|\n| Version 0.2 |  Fixed typos in README.md                       | 2024 April 10        |\n| Version 0.3 |  Fixed wording in README.md                       | 2025 April 7        |\n\n## Sources of funding\n\n- NIH: R01 CA242845\n- NIH: R01 AI088011\n- NIH: P30 CA225520 (PI: R. Mannel)\n- NIH P20GM103640 and P30GM145423 (PI: A. West)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmooerslab%2Fdsd4xtals","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmooerslab%2Fdsd4xtals","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmooerslab%2Fdsd4xtals/lists"}