2017-08-Iucr Computing School-Favre-Nicolin

Total Page:16

File Type:pdf, Size:1020Kb

2017-08-Iucr Computing School-Favre-Nicolin High-performance computing using Python, GPUs & Modular approach to crystallographic software development Vincent Favre-Nicolin X-ray NanoProbe group, ESRF 1 l 66TH MEETING OF THE ESRF l 30-31 May 2014 l Author 26/07/2013 OUTLINE OF MY TALK • Modular, object-oriented programming • Efficient programming in Python • GPU computing from Python • A few words about Cloud computing Page 2 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 MAIN COMPUTING PROJECTS • Ab initio structure solution from powder diffraction: FOX: http://fox.vincefn.net • Coherent diffraction Imaging using GPU PyNX: • https://software.pan-data.eu/software/102/pynx • http://ftp.esrf.fr/pub/scisoft/PyNX/ Page 3 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 PROGRAMMING STYLES: FLAT import numpy as np As simple as it gets # Linear programming l, k, h = np.mgrid[-10:11, -10:11, -10:11] n_atoms = 1000 x = np.random.uniform(0, 1, size=n_atoms) y = np.random.uniform(0, 1, size=n_atoms) z = np.random.uniform(0, 1, size=n_atoms) fhkl = np.empty(h.shape, dtype=np.complex) for i in range(h.size): fhkl[i] = np.exp(2j * np.pi * (h.flat[i] * x + k.flat[i] * y + l.flat[i] * z)).sum() Page 4 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 PROGRAMMING STYLES: FUNCTIONS … # Function def calc_f_hkl(x, y, z, h, k, l): assert (x.shape == y.shape == z.shape) fhkl = np.empty(h.shape, dtype=np.complex) for i in range(h.size): fhkl[i] = np.exp(2j * np.pi * (h.flat[i] * x + k.flat[i] * y + l.flat[i] * z)).sum() return fhkl You can: fhkl = calc_f_hkl(x, y, z, h, k, l) • Re-use the function • Optimize it Page 5 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 PROGRAMMING STYLES: OBJECT-ORIENTED class reCiproCal_spaCe: def __init__(self, h, k, l): You can: assert (h.shape == k.shape == k.shape) self.h = h • Re-use the class self.k = k self.l = l self._fhkl = None • Optimize it def get_f_hkl(self): • Use instance as return self._fhkl storage for result def calc_f_hkl(self, x, y, z): self._fhkl = np.empty(h.shape, dtype=np.Complex) for i in range(self.h.size): self._fhkl[i] = np.exp(2j * np.pi * (self.h.flat[i] * x + self.k.flat[i] * y + self.l.flat[i] * z)).sum() reC = reCiproCal_spaCe(h, k, l) reC.CalC_f_hkl(x, y, z) fhkl = reC.get_f_hkl() Page 6 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 OBJECT-ORIENTED: CLASSES Class definition class reCiproCal_spaCe: def __init__(self, h, k, l): Initialization function assert (h.shape == k.shape == k.shape) self.h = h self.k = k Attribute (data member) self.l = l self._fhkl = None Protected attribute _ def get_f_hkl(self): Method (member function) return self._fhkl def calc_f_hkl(self, x, y, z): self._fhkl = np.empty(h.shape, dtype=np.Complex) for i in range(self.h.size): self._fhkl[i] = np.exp(2j * np.pi * (self.h.flat[i] * x + self.k.flat[i] * y + self.l.flat[i] * z)).sum() reC = reCiproCal_spaCe(h, k, l) class instance reC.CalC_f_hkl(x, y, z) fhkl = reC.get_f_hkl() Page 7 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 WHY OBJECT-ORIENTED class reCiproCal_spaCe: def __init__(self, h, k, l): assert (h.shape == k.shape == k.shape• ) Separate: self.h = h • Code (Calculations) self.k = k • Data (storage) self.l = l self._fhkl = None • Abstract layer: • No direCt aCCess to data def get_f_hkl(self): return self._fhkl • Methods must keep their signature (API) • Calculation/storage Can be later def calc_f_hkl(self, x, y, z): optimized: self._fhkl = np.empty(h.shape, dtype=np.Complex• ) Limited or full-space hkl (FFT vs direct sum) for i in range(self.h.size): • CPU or GPU ? self._fhkl[i] = np.exp(2j * np.pi * (self.h.flat[i] * x + self.k.flat[i] * y + self.l.flat[i] * z)).sum() • Better code organization reC = reCiproCal_spaCe(h, k, l) • Easy to document reC.CalC_f_hkl(x, y, z) fhkl = reC.get_f_hkl() • Easy to share Page 8 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 WHY NOT OBJECT-ORIENTED class reCiproCal_spaCe: def __init__(self, h, k, l): assert (h.shape == k.shape == k.shape• ) It’s complicated self.h = h self.k = k • It’s longer to write self.l = l self._fhkl = None • Simple code don’t need def get_f_hkl(self): return self._fhkl objects def calc_f_hkl(self, x, y, z): • Why document, it’s trivial ? self._fhkl = np.empty(h.shape, dtype=np.Complex) for i in range(self.h.size): self._fhkl[i] = np.exp(2j * np.pi * (self.h.flat[i] * x + self.k.flat[i] * y + self.l.flat[i] * z)).sum() reC = reCiproCal_spaCe(h, k, l) reC.CalC_f_hkl(x, y, z) fhkl = reC.get_f_hkl() Page 9 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 PYTHON CLASSES: PROTECTED ATTRIBUTES class reCiproCal_spaCe: def __init__(self, h, k, l): assert (h.shape == k.shape == k.shape• ) All attributes can be self.h = h self.k = k accessed in Python self.l = l self._fhkl = None • Members with a leading _ def get_f_hkl(self): are a programmer’s hint that return self._fhkl the method or data may be def calc_f_hkl(self, x, y, z): self._fhkl = np.empty(h.shape, dtype=np.Complexchanged) in the future for i in range(self.h.size): self._fhkl[i] = np.exp(2j * np.pi * (self.h.flat• Use[i] * x + self.k.flatpublic[i] * y +access self.l.flat[i] * z)). methodssum() reC = reCiproCal_spaCe(h, k, l) • Use _ for data/methods reC.CalC_f_hkl(x, y, z) fhkl = reC.get_f_hkl() # YES which may change fhkl = _fhkl # NO- may trigger the end of the world Page 10 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 OO PROGRAMMING: BIG OR SMALL CLASSES For any crystallographic computing, you can choose: • Large classes with many methods • A large number of small classes easily re-used Page 11 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 EXAMPLE PROBLEM: STRUCTURE SOLUTION Diffraction Unit Cell, Structure Structure Sample Data Spacegroup(s) Solution Refinement Get atomic positions Least-Squares within 0.1-0.5 Å Reciprocal-space Global Optimization in Methods real space ! Need high-quality |F(hkl)| ! ExtraCted |F(hkl)| Modeling by atoms or atom groups Fourier Phases reCyCling (more or less) random search in direct space from the model degrees of freedom StruCtural model EleCtroniC density Grid SearCh Monte-Carlo GenetiC Algorithms Page 12 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 BIG CLASSES: REVERSE MONTE-CARLO Parametrization -> Degrees Of Freedom keep configuration (atomic positions, torsion angles, ..) yes evaluation of the is Configuration starting random Change new Configuration: better ? configuration of parameters Cost (C) C n < C n-1 no keep configuration with probability: $%& Hypersurface � = � ' Cost = f (DOF) Temperature of Need two classes: the algorithm • Object to optimize Generate a distribution of • Algorithm configurations following Boltzmann's law Page 13 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 APPROACH 1: BIG CLASSES / OBJCRYST++ OptimizationObj RefinableObj - List of parameters - Cost: log(likelihood) - Random moves Monte-Carlo - Derivatives - Simulated Annealing Least squares - Parallel Tempering ScatteringPower Scatterer Crystal - scattering factor - (list of) position(s) - unit cell ScatteringData - anomalous scattering factor - scattering power(s) - spacegroup - crystal - temperature factor - specific moves - list of scatterers - reflections ScatteringPowerAtom PowderPattern - Background SingleCrystal - Crystalline Phases Atom Molecule (restraints) Profiles Pseudo-Voigt, TOF- Page 14 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 OBJCRYST++ API See API from: http://fox.vincefn.net • Molecule • UnitCell • LeastSquares < Page 15 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 OBJCRYST++ API: AVOID RE-COMPUTATIONS Powder pattern calculation: • Did Crystal struCture Change ? • No: re-use structure factors • Yes: • Re-compute structure factors • Re-use table of atomic scattering factors • Did unit Cell Change ? • No: keep refleCtion positions • Yes: re-compute reflection positions • Did refleCtion profiles Change ? • No: re-use reflection profiles • Yes: re-compute reflection profiles Note: • top objects know nothing about derived objects implementation – all is hidden behind OO API • Optimization algorithms know nothing about crystallography ! Page 16 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 FOX/OBJCRYST++ SPEED • 20 independent atoms, 100 reflections • 10^4 to 5.10^4 configurations/s Drawback of the ‘big object’ approach: the library is optimized for algorithms needing large number of trials/s Page 17 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN 26/07/2013 APPROACH 2: SMALL CLASSES / TOOLKIT / PYNX class ERProj(CLOperatorCDI): """ Error reduction. """ Idea: def __init__(self, positivity=False): super(ERProj, self).__init__() decompose the computing problem self.positivity = positivity in as many def op(self, cdi): if self.positivity: independent snippets as possible self.proCessing_unit.cl_er_real(cdi._cl_obj, cdi._cl_support) else: self.proCessing_unit.cl_er(cdi._cl_obj, cdi._cl_support) return cdi class ER(CLOperatorCDI): """ Error reduction cycle """ def __new__(cls, positivity=False, calc_llk=False): return ERProj(positivity=positivity) * FourierApplyAmplitude(calc_llk=calc_llk) Page 18 l IUCr Computing School, Bangalore, 2017-08-16 l Vincent FAVRE-NICOLIN
Recommended publications
  • University of Cincinnati
    UNIVERSITY OF CINCINNATI Date: ___________________8th August 2008 I, ________________________________________________Prashant Rajan _________, hereby submit this work as part of the requirements for the degree of: Master of Science in: Department of Chemical and Materials Engineering It is entitled : Understanding aggregate morphology in colloidal systems through small-angle scattering and reverse Monte Carlo (RMC) simulations This work and its defense approved by: Chair: _______________________________Dale W. Schaefer _______________________________Greg Beaucage _______________________________Jude Iroh _______________________________Steve Clarson _______________________________ Understanding aggregate morphology in colloidal systems through small- angle scattering and reverse Monte Carlo simulations A thesis submitted to the Division of Research and Advanced Studies of the University of Cincinnati in partial fulfillment of the requirements for the degree of Master of Science in the Department of Chemical and Materials Engineering of the College of Engineering 2008 by Prashant Rajan B.E. University of Pune, Pune, India Committee Chair: Professor Dale W. Schaefer Abstract We have studied the three dimensional structure of aggregated colloidal silica at sub- micron length scales. Our efforts are part of an integrated research project[1-3] focused on constructing a verifiable model for reinforcement of elastomers by colloidal fillers using small- angle scattering techniques. Our work is aimed at developing a simulation-based modeling tool that enables us to visualize the microstructure of reinforcing fillers in three dimensions by fitting small-angle scattering data. We have developed a program based on ‘ C’ programming language to describe scattering from a single aggregate. Our simulation creates the aggregate using a particle-cluster aggregation mechanism. The simulation then proceeds to make random moves on the aggregate surface while simultaneously fitting small angle scattering data on the system under study.
    [Show full text]
  • Dr Matt Tucker
    Dr Matt Tucker Diffraction Group Leader, Neutron Sciences Directorate, One Bethel Valley Road, MS-6475, Oak Ridge, TN, 37831 Mobile: +1 865 340 5950 E-Mail: [email protected] Current Employer: UT-Battelle Employment and education Diffraction Group Leader Oak Ridge National Lab, USA 2017 – Present Advance Diffraction Group Leader Spallation Neutron Source, USA 2016 – 2017 Joint appointment with Diamond Light Source Ltd, UK 2013 – 2016 Instrument Scientist on Polaris at ISIS spallation source, UK 2013 – 2016 Instrument Scientist on PEARL at ISIS spallation source, UK 2005 – 2013 Postdoctoral Researcher, Earth Sciences, University of Cambridge, UK 1998 – 2005 PhD in Condensed Matter Physics, University of Kent at Canterbury, UK 1995 – 1998 BSc (Hons) Physics with Medical Physics, Cardiff University, UK 1992 – 1995 General Skills Scientific: Powder diffraction, Total scattering, High pressure studies, Chemical synthesis, Rietveld analysis, McStas simulations and Reverse Monte Carlo analysis and software development. Computing: Languages used: Fortran, Python, C, C++, C shell; Operating systems: Windows, Linux, Mac OS, VMS. Communication: I give regular presentations at national and international meetings. I am the co-author of over 155 scientific publications. I have arranged and chaired several scientific meetings, conference sessions and PDF workshops. As described above, I have regular meetings with my group members and external teams to ensure clear and effective communication. International & National presentations (15 talks, 6 countries)
    [Show full text]
  • Modeling the Amorphous Structure of a Mechanically Alloyed
    Modeling the amorphous structure of a mechanically alloyed Ti50Ni25Cu25 alloy using anomalous wide-angle x-ray scattering and reverse Monte Carlo simulations J.C. de Limaa,*, C.M. Poffob, S.M. Souzac, K.D. Machadod, D.M. Trichêsc, T.A. Grandia, R.S. de Biasie aDepartamento de Física, Universidade Federal de Santa Catarina, Campus Universitário Trindade, S/N, C.P. 476, 88040-900 Florianópolis, Santa Catarina, Brazil bDepartamento de Engenharia Mecânica, Universidade Federal de Santa Catarina, Campus Universitário Trindade, S/N, C.P. 476, 88040-900 Florianópolis, Santa Catarina, Brazil cDepartamento de Física, Universidade Federal do Amazonas, 3000 Japiim, 69077-000 Manaus, Amazonas, Brazil. dDepartamento de Física, Centro Politécnico, Universidade Federal do Paraná, 81531- 990, Curitiba, Paraná, Brazil eSeção de Engenharia Mecânica e de Materiais, Instituto Militar de Engenharia, 22290-270 Rio de Janeiro, RJ, Brazil A B S T R A C T An amorphous Ti50Ni25Cu25 alloy was produced by 19 h of mechanical alloying. Anomalous wide angle x-ray scattering data were collected at six energies and six total scattering factors were obtained. By considering the data collected at two energies close to the Ni and Cu K edges, two differential anomalous scattering factors around the Ni and Cu atoms were obtained, showing the chemical environments around these atoms are different. The eight factors were used as input data to the reverse Monte Carlo method used to compute the partial structure factors STi-Ti(K), STi-Cu(K), STi-Ni(K), SCu- Cu(K), SCu-Ni(K) and SNi-Ni(K). From their Fourier transformation, the partial pair distribution functions GTi-Ti(r), GTi-Cu(r), GTi-Ni(r), GCu-Cu(r), GCu-Ni(r) and GNi-Ni(r) were obtained, and the coordination numbers and interatomic atomic distances for the first neighbors were determined.
    [Show full text]
  • Structure Modeling with X-Ray Absorption and Reverse Monte Carlo: Applications to Water
    Mikael Leetmaa Mikael Structure Modeling with X-ray Absorption and Reverse Monte Carlo: Applications to Water Mikael Leetmaa Reverse Monte Carlo: Applications to Water to Applications Monte Carlo: Reverse Absorption and Structure Modeling with X-ray ISBN 978-91-7155-972-2 Physics Department Doctoral Thesis in Chemical Physics at Stockholm University, Sweden 2009 Abstract Water is an important substance. It is part of us, of our environment, and is a fundamental prerequisite for the existence of life as we know it. The structure of water is still, after over 100 years of research on the subject, however under debate. In this thesis x-ray absorption spectroscopy (XAS) and reverse Monte Carlo (RMC) modeling are used to search for structural solutions of water consistent with many different experimental data sets, with emphasis on the combination of different ex- perimental techniques for a reliable structure determination. Neutron and x-ray diffraction are analyzed in combination with the more recent synchrotron radiation based XAS. Geometrical criteria for H-bonding are implemented in RMC to drive the fits and allow to evaluate differently H-bonded structure models against the data. It is shown that the available diffraction data put little constraints on the type of H-bond topology or O-O-O tetrahedrality for the structure of liquid water. It is also demonstrated that classical MD simulations, using some of the most common interaction potentials for water, give rise to O-O and O-H pair-correlation functions with too sharp first peaks at too short distances to be in agreement with diffraction, and furthermore that requiring a large fraction of broken H-bonds is not in itself enough for a structure model to reproduce the experimental XAS.
    [Show full text]
  • 2016 Neutron Experiment Descriptions
    2016 Neutron Experiment descriptions: N1: Triple-Axis Spectrometers, HFIR HB-1A & HB-3 Spin wave and phonon dispersion in Fe-Ga solid solutions Fe-Ga alloys with appropriate composition and heat treatment, exhibit giant magnetostriction in a polycrystalline and ductile form. The tetragonal magnetostriction coefficient, λ100, of Fe-Ga can be up to 15 times that of pure Fe. This makes these materials of tremendous scientific and technological interest for use in devices such as actuators, transducers and sensors. Elastic constant measurements show that the shear elastic constant 1/2(C11-C12) decreases with increasing gallium concentration and extrapolates to zero at approximately 26 at.% Ga. The slope of the phonon dispersion curve at low-q of the T2[110] branch is a measure of that elastic constant and hence the interest in measuring phonons in these materials. With the large magnetoelastic interactions in such a material, it is also of interest to measure the spin wave dispersion. The triple-axis spectrometers HB-1A and HB-3 will be used to measure both phonon and spin waves of two compositions of Fe-Ga alloys. N2: Powder Diffractometer, HFIR HB-2A Magnetic structure of NiO Neutron diffraction measurements will be performed to investigate the onset of long- range magnetic order in NiO. Data will be collected at various temperatures, ranging from 600K to 288K, using the Neutron Powder Diffractometer at the HFIR. Rietveld analysis of the crystal and low-temperature magnetic structure will be carried out using FullProf Suite software. The results obtained will be discussed and compared with those reported in earlier studies.
    [Show full text]
  • A Guide to Monte Carlo Simulations in Statistical Physics, Third Edition
    This page intentionally left blank A Guide to Monte Carlo Simulations in Statistical Physics Third Edition Dealing with all aspects of Monte Carlo simulation of complex physical systems encountered in condensed-matter physics and statistical mechanics, this book provides an introduction to computer simulations in physics. This third edition contains extensive new material describing numerous powerful new algorithms that have appeared since the previous edition. It highlights recent technical advances and key applications that these algo- rithms now make possible. With several new sections and a new chapter on the use of Monte Carlo simulations of biological molecules, this edition expands the discussion of Monte Carlo at the periphery of physics and beyond. Throughout the book there are many applications, examples, recipes, case studies, and exercises to help the reader understand the material. It is ideal for graduate students and researchers, both in academia and industry, who want to learn techniques which have become a third tool of physical science, complementing experiment and analytical theory. DAVID P. LANDAU is the Distinguished Research Professor of Physics and founding Director of the Center for Simulational Physics at the University of Georgia. KURT BINDER is Professor of Theoretical Physics and Gutenberg Fellow at the Institut fu¨r Physik, Johannes-Gutenberg-Universita¨t Mainz, Germany. AGuideto Monte Carlo Simulations in Statistical Physics Third Edition David P. Landau Center for Simulational Physics, The University of Georgia Kurt Binder Institut fu¨r Physik, Johannes-Gutenberg-Universita¨t Mainz CAMBRIDGE UNIVERSITY PRESS Cambridge, New York, Melbourne, Madrid, Cape Town, Singapore, São Paulo, Delhi, Dubai, Tokyo Cambridge University Press The Edinburgh Building, Cambridge CB2 8RU, UK Published in the United States of America by Cambridge University Press, New York www.cambridge.org Information on this title: www.cambridge.org/9780521768481 © D.
    [Show full text]
  • Rmcprofile User Manual
    RMCProfile User Manual Code version 6.7.4 Matt Tucker, Martin Dove, Andrew Goodwin, Anthony Phillips, David Keen, Helen Playford, Wojciech A. Slawinski, Igor Levin, Victor Krayzman, Maksim Eremenko, Yuanpeng Zhang February 21, 2019 RMCProfile Manual v6.7.4 CONTENTS Contents 1 Introduction 3 1.1 We know you don’t read manuals!3 1.2 What and why of RMC4 1.3 RMCProfile introduction6 2 Capabilities 9 2.1 Fitting neutron and X-ray total scattering data9 2.2 Fitting PDF data 10 2.3 Fitting the Bragg profile 11 2.4 Distance-window constraints 12 2.5 Interatomic potentials 13 2.6 Bond valence constraints 13 2.7 Modelling atomic site disorder through atom-swap moves 14 2.8 Coordination Constraints 14 2.9 Polyhedral restraints 14 2.10 Magnetic structure modelling 15 2.11 Fitting EXAFS data 23 2.12 Producing starting configurations 23 2.13 XML output files 24 3 Installing and Running RMCProfile 28 3.1 Installation 28 3.2 Setting up the files for an RMCProfile calculation 29 3.3 Running RMCProfile 30 3.4 Output files 31 4 Input Files 33 4.1 RMCProfile main data file 33 4.2 Neutron and X-ray coefficients 62 4.3 Using experimental data 63 4.4 Using magnetism 67 4.5 Using the Bragg profile 69 4.6 Using EXAFS data 70 4.7 Using potentials 70 4.8 Using Bond valence sum 80 4.9 Using constraints and restraints 81 4.10 Polyhedral restraints 81 4.11 RMC Version 6 format configuration files 87 4.12 Experimental data files 90 4.13 Bragg scattering 92 4.14 RMCProfile version 3 files 94 4.15 Upgrade to v6 98 1/176 RMCProfile Manual v6.7.4 CONTENTS 5 Examples 100 5.1 Using scattering
    [Show full text]
  • Inversion of Diffraction Data for Amorphous Materials
    The University of Southern Mississippi The Aquila Digital Community Faculty Publications 9-22-2016 Inversion of Diffraction Data for Amorphous Materials Anup Pandey Ohio University Parthapratim Biswas University of Southern Mississippi, [email protected] D.A. Drabold Ohio University Follow this and additional works at: https://aquila.usm.edu/fac_pubs Part of the Physics Commons Recommended Citation Pandey, A., Biswas, P., Drabold, D. (2016). Inversion of Diffraction Data for Amorphous Materials. Scientific Reports, 6, 1-8. Available at: https://aquila.usm.edu/fac_pubs/16741 This Article is brought to you for free and open access by The Aquila Digital Community. It has been accepted for inclusion in Faculty Publications by an authorized administrator of The Aquila Digital Community. For more information, please contact [email protected]. www.nature.com/scientificreports OPEN Inversion of diffraction data for amorphous materials Anup Pandey1, Parthapratim Biswas2 & D. A. Drabold3 The general and practical inversion of diffraction data–producing a computer model correctly Received: 06 July 2016 representing the material explored–is an important unsolved problem for disordered materials. Such Accepted: 31 August 2016 modeling should proceed by using our full knowledge base, both from experiment and theory. In this Published: 22 September 2016 paper, we describe a robust method to jointly exploit the power of ab initio atomistic simulation along with the information carried by diffraction data. The method is applied to two very different systems: amorphous silicon and two compositions of a solid electrolyte memory material silver-doped GeSe3. The technique is easy to implement, is faster and yields results much improved over conventional simulation methods for the materials explored.
    [Show full text]
  • Inverse Monte Carlo Methods
    CHAPTER 1 Inverse Monte Carlo Methods Alexander P. Lyubartsev CONTENTS 1.1 Introduction 1 1.2 Multiscale Simulations Using IMC 4 1.2.1 Theoretical Background 4 1.2.2 IMC: Newton Inversion 6 1.2.3 IMC: Reconstruction of Pair Potentials from RDFs 7 1.2.4 Soware 10 1.3 Applications of the IMC 11 1.3.1 Simple Electrolytes 11 1.3.2 CG Lipid Model 13 1.3.3 CG DNA Models 17 1.3.4 Other Systems 19 1.4 Final Remarks 21 Acknowledgments 22 References 22 1.1 INTRODUCTION Modeling of many important biomolecular and so matter systems requires consideration of length and time scales not reachable by atomistic simula- tions. An evident solution of this problem is introducing simplified models with lower spacial resolution, which have received a common name: coarse- grained (CG) models. In CG models, atoms of (macro)molecules are united into CG sites and solvent atoms are oen not considered explicitly. This reduces greatly the number of degrees of freedom of the studied system and allows simulations of much larger systems which are not feasible to 1 2 ◾ Coarse-Grained Modeling of Biomolecules simulate at the atomistic level. Studies of models which can be character- ized as “coarse-grained” started at the earlier stages of molecular modeling in the 1960s and 1970s (when the term “coarse-grained” was not used at all). For example, a primitive model of electrolytes represented hydrated ions as charged spheres in a dielectric media (Vorontsov-Velyaminov and Elyashe- vich, 1966; Card and Valleau, 1970), and a simple freely jointed model of a polymer chain (Gottlieb and Bird, 1976) was used to model polymers in solution.
    [Show full text]
  • Supplementary Information
    Supplementary Information Structural ordering in liquid gallium under extreme conditions James W. E. Drewitt,1 Francesco Turci,2 Benedict J. Heinen,1 Simon G. Macleod,3, 4 Fei Qin,1 Annette K. Kleppe,5 and Oliver T. Lord1 1School of Earth Sciences, University of Bristol, Wills Memorial Building, Queens Road, Bristol, BS8 1RJ, United Kingdom 2H H Wills Physics Laboratory, University of Bristol, Bristol, BS8 1TL, United Kingdom 3Atomic Weapons Establishment, Aldermaston, Reading RG7 4PR, United Kingdom 4SUPA, School of Physics and Astronomy, and Centre for Science at Extreme Conditions, The University of Edinburgh, Mayfield Road, Edinburgh EH9 3JZ, United Kingdom 5Diamond Light Source Ltd, Diamond House, Harwell Science and Innovation Campus, Chilton, OX11 0DE, United Kingdom EXPERIMENTAL Sodium Chloride pressure calibrant In order to avoid deleterious alloying between Ga and Re, an NaCl annulus was placed in the pressure chamber to separate the sample from the Re gasket. The advantage of NaCl is that it has an equation of state that has been carefully calibrated as a function of p and T throughout the range of this study [1], it is highly compressible, leading to a high precision on the pressure determination, and it has a simple cubic structure, making its unit cell volume easy to determine from XRD data. The NaCl was stored in an oven at 130 ◦C prior to use to minimise its inital water content. At the start of each run, the cell was placed unsealed in the vacuum vessel which was evacuated before any pressure was applied, to help drive off any remaining moisture from the salt and the Ga sample.
    [Show full text]
  • Pdffit2 and Pdfgui: Computer Programs for Studying
    IOP PUBLISHING JOURNAL OF PHYSICS: CONDENSED MATTER J. Phys.: Condens. Matter 19 (2007) 335219 (7pp) doi:10.1088/0953-8984/19/33/335219 PDFfit2 and PDFgui: computer programs for studying nanostructure in crystals CLFarrow1, P Juhas1,JWLiu1, D Bryndin1,4,ESBoˇzin1,JBloch2, Th Proffen3 and S J L Billinge1 1 Department of Physics and Astronomy, Michigan State University, East Lansing, MI 48824-2320, USA 2 Institute for Theoretical Physics, University of Regensburg, 93040 Regensburg, Germany 3 Lujan Neutron Scattering Center, Los Alamos National Laboratory, Los Alamos, NM 87545, USA 4 Department of Computer Science and Engineering, Michigan State University, East Lansing, MI 48824, USA E-mail: [email protected] Received 29 March 2007 Published 4 July 2007 Online at stacks.iop.org/JPhysCM/19/335219 Abstract PDFfit2 is a program as well as a library for real-space refinement of crystal structures. It is capable of fitting a theoretical three-dimensional (3D) structure to atomic pair distribution function data and is ideal for nanoscale investigations. The fit system accounts for lattice constants, atomic positions and anisotropic atomic displacement parameters, correlated atomic motion, and experimental factors that may affect the data. The atomic positions and thermal coefficients can be constrained to follow the symmetry requirements of an arbitrary space group. The PDFfit2 engine is written in C++ and is accessible via Python, allowing it to inter-operate with other Python programs. PDFgui is a graphical interface built on the PDFfit2 engine. PDFgui organizes fits and simplifies many data analysis tasks, such as configuring and plotting multiple fits. PDFfit2 and PDFgui are freely available via the Internet.
    [Show full text]
  • Marshall Mcdonnell
    Marshall McDonnell Diffraction Group, Neutron Sciences Directorate Home Address Oak Ridge National Laboratory 7312 Martingale Drive PO Box 2008, Oak Ridge, TN 37831-6454 Powell, TN 37849 Phone: (865) 560-6227 Email: [email protected] SUMMARY Since April 2019 I have been a research software engineer in the Research Software Engineering group at Oak Ridge National Laboratory, USA. My research interests focus on developing software with sound engineering practices with a focus on applications in materials research. I am the co-author of 10 refereed publications with 8 manuscripts forthcoming (accepted, under review, submitted, or in preparation), co-author of 32 presentations (oral and poster), an active open-source software developer, and co-instructor for 4 workshops around the world. PROFESSIONAL EXPERIENCE 2019- Research Software Engineer Research Software Engineering Group Computer Science and Mathematics Division, Computing and Computational Sciences Directorate Oak Ridge National Laboratory, Oak Ridge, TN Supervisor: Jay Jay Billings 2016-2019 Postdoctoral Research Associate Diffraction Group Neutron Scattering Division, Neutron Sciences Directorate Spallation Neutron Source, Oak Ridge National Laboratory, Oak Ridge, TN Advisor: Matthew Tucker 2011-2016 Graduate Student Research Assistant Computational Materials Research Group Chemical and Biomolecular Engineering, University of Tennessee, Knoxville, TN Advisor: David Keffer EDUCATION 2011-2016 Doctor of Philosophy, University of Tennessee Knoxville, TN Chemical and Biomolecular Engineering
    [Show full text]