{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/manifold-constrained-nucleus-level-denoising","title":"Manifold-Constrained Nucleus-Level Denoising Diffusion Model for Structure-Based Drug Design","arxiv_id":"2409.10584","date":"2024-09-16","proceeding":null,"authors":["Shengchao Liu","Divin Yan","Weitao Du","Weiyang Liu","Zhuoxinran Li","Hongyu Guo","Christian Borgs","Jennifer Chayes","Anima Anandkumar"],"abstract":"Artificial intelligence models have shown great potential in structure-based drug design, generating ligands with high binding affinities. However, existing models have often overlooked a crucial physical constraint: atoms must maintain a minimum pairwise distance to avoid separation violation, a phenomenon governed by the balance of attractive and repulsive forces. To mitigate such separation violations, we propose NucleusDiff. It models the interactions between atomic nuclei and their surrounding electron clouds by enforcing the distance constraint between the nuclei and manifolds. We quantitatively evaluate NucleusDiff using the CrossDocked2020 dataset and a COVID-19 therapeutic target, demonstrating that NucleusDiff reduces violation rate by up to 100.00% and enhances binding affinity by up to 22.16%, surpassing state-of-the-art models for structure-based drug design. We also provide qualitative analysis through manifold sampling, visually confirming the effectiveness of NucleusDiff in reducing separation violations and improving binding affinities.","url_abs":"https://arxiv.org/abs/2409.10584v2","url_pdf":"https://arxiv.org/pdf/2409.10584v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"manifold-constrained-nucleus-level-denoising","repo_url":"https://github.com/yanliang3612/nucleusdiff","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"denoising","task_name":"Denoising"},{"task_slug":"drug-design","task_name":"Drug Design"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2409.10584","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2409.10584"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yanliang3612/nucleusdiff","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":2,"ran":3,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":10,"ran":6,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"c92a02b48d8fb1c4","entry":"cosine_beta_schedule","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"models/molopt_score_model.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/models/molopt_score_model.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c92a02b48d8fb1c4"}},{"code_sha256_prefix":"ca0cea1ca1eeec89","entry":"get_beta_schedule","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"models/molopt_score_model.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/models/molopt_score_model.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ca0cea1ca1eeec89"}},{"code_sha256_prefix":"db0bb8e0f8592e87","entry":"get_chain_name","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"crossdock_data_preparation/step3_split_pl_dataset.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/crossdock_data_preparation/step3_split_pl_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"db0bb8e0f8592e87"}},{"code_sha256_prefix":"268ff98cf7c8ced1","entry":"get_pdb_name","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"crossdock_data_preparation/step3_split_pl_dataset.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/crossdock_data_preparation/step3_split_pl_dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"268ff98cf7c8ced1"}},{"code_sha256_prefix":"07c92d5dea063963","entry":"load_item","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"covid_19_data_preparation/extract_pockets_for_real_world.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/covid_19_data_preparation/extract_pockets_for_real_world.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"07c92d5dea063963"}},{"code_sha256_prefix":"47ce9e33fa6b180f","entry":"unbatch_v_traj","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"sample_for_crossdock.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/sample_for_crossdock.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"47ce9e33fa6b180f"}},{"code_sha256_prefix":"413b017b3368ab8d","entry":"compose_context","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/models/common.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"413b017b3368ab8d"}},{"code_sha256_prefix":"3c6858db01947fd5","entry":"get_h_dist","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/models/common.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3c6858db01947fd5"}},{"code_sha256_prefix":"27af771ab4cfc179","entry":"get_r_feat","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/models/common.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"27af771ab4cfc179"}},{"code_sha256_prefix":"8d23e6700459799f","entry":"get_unique_pockets","repo":"yanliang3612/nucleusdiff","repo_kind":"official","path":"crossdock_data_preparation/step3_split_pl_dataset.py","file_url":"https://github.com/yanliang3612/nucleusdiff/blob/HEAD/crossdock_data_preparation/step3_split_pl_dataset.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8d23e6700459799f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}