Polarized Resonant Soft X-ray scattering (P-RSoXS) has emerged as a powerful synchrotron-based tool to measure structure in complex, chemically heterogeneous systems. P-RSoXS combines principles of X-ray scattering and X-ray spectroscopy; this combination provides unique sensitivity to molecular orientation and chemical heterogeneity in soft materials such as polymers and biomaterials. Quantitative extraction of orientation information from the P-RSoXS pattern data is challenging because the scattering processes depend on properties that are represented as three-dimensional tensors with heterogeneities at nanometer to sub-nanometer length scales. We overcome this challenge by developing an open-source virtual instrument that uses Graphical Processing Units (GPUs) to simulate P-RSoXS patterns from real-space material representations with nanoscale resolution. Our computational framework -- called CyRSoXS -- is designed to maximize GPU performance, including algorithms that minimize both communication and memory footprints. We demonstrate the accuracy and robustness of our approach by validating against an extensive set of test cases, which include both analytical solutions and numerical comparisons, demonstrating a speedup of over three orders to the current state-of-the-art P-RSoXS simulation software. Such fast simulations open up a variety of applications that were previously computationally infeasible, including (a) pattern fitting, (b) co-simulation with the physical instrument for operando analytics, data exploration, and decision support, (c) data creation and integration into machine learning workflows, and (d) utilization in multi-modal data assimilation approaches. Finally, we abstract away the complexity of the computational framework from the end-user by exposing CyRSoXS to Python using Pybind. This democratizes usage by enabling seamless integration with various Python libraries, and also eliminates I/O requirements for large-scale parameter exploration and inverse design.
About this Dataset
Title | CyRSoXS: A GPU-accelerated virtual instrument for Polarized Resonant Soft X-ray Scattering (P-RSoXS) |
---|---|
Description | Polarized Resonant Soft X-ray scattering (P-RSoXS) has emerged as a powerful synchrotron-based tool to measure structure in complex, chemically heterogeneous systems. P-RSoXS combines principles of X-ray scattering and X-ray spectroscopy; this combination provides unique sensitivity to molecular orientation and chemical heterogeneity in soft materials such as polymers and biomaterials. Quantitative extraction of orientation information from the P-RSoXS pattern data is challenging because the scattering processes depend on properties that are represented as three-dimensional tensors with heterogeneities at nanometer to sub-nanometer length scales. We overcome this challenge by developing an open-source virtual instrument that uses Graphical Processing Units (GPUs) to simulate P-RSoXS patterns from real-space material representations with nanoscale resolution. Our computational framework -- called CyRSoXS -- is designed to maximize GPU performance, including algorithms that minimize both communication and memory footprints. We demonstrate the accuracy and robustness of our approach by validating against an extensive set of test cases, which include both analytical solutions and numerical comparisons, demonstrating a speedup of over three orders to the current state-of-the-art P-RSoXS simulation software. Such fast simulations open up a variety of applications that were previously computationally infeasible, including (a) pattern fitting, (b) co-simulation with the physical instrument for operando analytics, data exploration, and decision support, (c) data creation and integration into machine learning workflows, and (d) utilization in multi-modal data assimilation approaches. Finally, we abstract away the complexity of the computational framework from the end-user by exposing CyRSoXS to Python using Pybind. This democratizes usage by enabling seamless integration with various Python libraries, and also eliminates I/O requirements for large-scale parameter exploration and inverse design. |
Modified | 2022-09-19 00:00:00 |
Publisher Name | National Institute of Standards and Technology |
Contact | mailto:[email protected] |
Keywords | polymer , Python , C++ , CUDA , polymer nanocomposite , polymer solution , X-ray scattering , software , tool , computation |
{ "identifier": "ark:\/88434\/mds2-2788", "accessLevel": "public", "contactPoint": { "hasEmail": "mailto:[email protected]", "fn": "Dean DeLongchamp" }, "programCode": [ "006:045" ], "landingPage": "https:\/\/data.nist.gov\/od\/id\/mds2-2788", "title": "CyRSoXS: A GPU-accelerated virtual instrument for Polarized Resonant Soft X-ray Scattering (P-RSoXS)", "description": "Polarized Resonant Soft X-ray scattering (P-RSoXS) has emerged as a powerful synchrotron-based tool to measure structure in complex, chemically heterogeneous systems. P-RSoXS combines principles of X-ray scattering and X-ray spectroscopy; this combination provides unique sensitivity to molecular orientation and chemical heterogeneity in soft materials such as polymers and biomaterials. Quantitative extraction of orientation information from the P-RSoXS pattern data is challenging because the scattering processes depend on properties that are represented as three-dimensional tensors with heterogeneities at nanometer to sub-nanometer length scales. We overcome this challenge by developing an open-source virtual instrument that uses Graphical Processing Units (GPUs) to simulate P-RSoXS patterns from real-space material representations with nanoscale resolution. Our computational framework -- called CyRSoXS -- is designed to maximize GPU performance, including algorithms that minimize both communication and memory footprints. We demonstrate the accuracy and robustness of our approach by validating against an extensive set of test cases, which include both analytical solutions and numerical comparisons, demonstrating a speedup of over three orders to the current state-of-the-art P-RSoXS simulation software. Such fast simulations open up a variety of applications that were previously computationally infeasible, including (a) pattern fitting, (b) co-simulation with the physical instrument for operando analytics, data exploration, and decision support, (c) data creation and integration into machine learning workflows, and (d) utilization in multi-modal data assimilation approaches. Finally, we abstract away the complexity of the computational framework from the end-user by exposing CyRSoXS to Python using Pybind. This democratizes usage by enabling seamless integration with various Python libraries, and also eliminates I\/O requirements for large-scale parameter exploration and inverse design.", "language": [ "en" ], "distribution": [ { "accessURL": "https:\/\/github.com\/usnistgov\/cyrsoxs", "format": "Github Repository", "description": "A github repository containing the CyRSoXS C++\/CUDA source code and documentation", "title": "CyRSoXS Github Repository" } ], "bureauCode": [ "006:55" ], "modified": "2022-09-19 00:00:00", "publisher": { "@type": "org:Organization", "name": "National Institute of Standards and Technology" }, "theme": [ "Physics:Condensed matter", "Mathematics and Statistics:Numerical methods and software", "Materials:Modeling and computational material science", "Materials:Materials characterization", "Materials:Polymers", "Materials:Composites", "Chemistry:Molecular characterization", "Electronics:Organic electronics" ], "keyword": [ "polymer", "Python", "C++", "CUDA", "polymer nanocomposite", "polymer solution", "X-ray scattering", "software", "tool", "computation" ] }