Extending and Modifying LAMMPS Writing Your Own Source Code


Book Description

Understand the LAMMPS source code and modify it to meet your research needs, and run simulations for bespoke applications involving forces, thermostats, pair potentials and more with ease Key FeaturesUnderstand the structure of the LAMMPS source codeImplement custom features in the LAMMPS source code to meet your research needsRun example simulations involving forces, thermostats, and pair potentials based on implemented featuresBook Description LAMMPS is one of the most widely used tools for running simulations for research in molecular dynamics. While the tool itself is fairly easy to use, more often than not you'll need to customize it to meet your specific simulation requirements. Extending and Modifying LAMMPS bridges this learning gap and helps you achieve this by writing custom code to add new features to LAMMPS source code. Written by ardent supporters of LAMMPS, this practical guide will enable you to extend the capabilities of LAMMPS with the help of step-by-step explanations of essential concepts, practical examples, and self-assessment questions. This LAMMPS book provides a hands-on approach to implementing associated methodologies that will get you up and running and productive in no time. You'll begin with a short introduction to the internal mechanisms of LAMMPS, and gradually transition to an overview of the source code along with a tutorial on modifying it. As you advance, you'll understand the structure, syntax, and organization of LAMMPS source code, and be able to write your own source code extensions to LAMMPS that implement features beyond the ones available in standard downloadable versions. By the end of this book, you'll have learned how to add your own extensions and modifications to the LAMMPS source code that can implement features that suit your simulation requirements. What you will learnIdentify how LAMMPS input script commands are parsed within the source codeUnderstand the architecture of the source codeRelate source code elements to simulated quantitiesLearn how stored quantities are accessed within the source codeExplore the mechanisms controlling pair styles, computes, and fixesModify the source code to implement custom features in LAMMPSWho this book is for This book is for students, faculty members, and researchers who are currently using LAMMPS or considering switching to LAMMPS, have a basic knowledge of how to use LAMMPS, and are looking to extend LAMMPS source code for research purposes. This book is not a tutorial on using LAMMPS or writing LAMMPS scripts, and it is assumed that the reader is comfortable with the basic LAMMPS syntax. The book is geared toward users with little to no experience in source code editing. Familiarity with C++ programming is helpful but not necessary.




Understanding Molecular Simulation


Book Description

Understanding Molecular Simulation: From Algorithms to Applications explains the physics behind the "recipes" of molecular simulation for materials science. Computer simulators are continuously confronted with questions concerning the choice of a particular technique for a given application. A wide variety of tools exist, so the choice of technique requires a good understanding of the basic principles. More importantly, such understanding may greatly improve the efficiency of a simulation program. The implementation of simulation methods is illustrated in pseudocodes and their practical use in the case studies used in the text. Since the first edition only five years ago, the simulation world has changed significantly -- current techniques have matured and new ones have appeared. This new edition deals with these new developments; in particular, there are sections on: - Transition path sampling and diffusive barrier crossing to simulaterare events - Dissipative particle dynamic as a course-grained simulation technique - Novel schemes to compute the long-ranged forces - Hamiltonian and non-Hamiltonian dynamics in the context constant-temperature and constant-pressure molecular dynamics simulations - Multiple-time step algorithms as an alternative for constraints - Defects in solids - The pruned-enriched Rosenbluth sampling, recoil-growth, and concerted rotations for complex molecules - Parallel tempering for glassy Hamiltonians Examples are included that highlight current applications and the codes of case studies are available on the World Wide Web. Several new examples have been added since the first edition to illustrate recent applications. Questions are included in this new edition. No prior knowledge of computer simulation is assumed.




Numerical Simulation in Molecular Dynamics


Book Description

This book details the necessary numerical methods, the theoretical background and foundations and the techniques involved in creating computer particle models, including linked-cell method, SPME-method, tree codes, amd multipol technique. It illustrates modeling, discretization, algorithms and their parallel implementation with MPI on computer systems with distributed memory. The text offers step-by-step explanations of numerical simulation, providing illustrative code examples. With the description of the algorithms and the presentation of the results of various simulations from fields such as material science, nanotechnology, biochemistry and astrophysics, the reader of this book will learn how to write programs capable of running successful experiments for molecular dynamics.




Molecular Dynamics Simulation of Nanocomposites using BIOVIA Materials Studio, Lammps and Gromacs


Book Description

Molecular Dynamics Simulation of Nanocomposites using BIOVIA Materials Studio, Lammps and Gromacs presents the three major software packages used for the molecular dynamics simulation of nanocomposites. The book explains, in detail, how to use each of these packages, also providing real-world examples that show when each should be used. The latter two of these are open-source codes which can be used for modeling at no cost. Several case studies how each software package is used to predict various properties of nanocomposites, including metal-matrix, polymer-matrix and ceramic-matrix based nanocomposites. Properties explored include mechanical, thermal, optical and electrical properties. This is the first book that explores methodologies for using Materials Studio, Lammps and Gromacs in the same place. It will be beneficial for students, researchers and scientists working in the field of molecular dynamics simulation. - Gives a detailed explanation of basic commands and modules of Materials Studio, Lammps and Gromacs - Shows how Materials Studio, Lammps and Gromacs predict mechanical, thermal, electrical and optical properties of nanocomposites - Uses case studies to show which software should be used to solve a variety of nanoscale modeling problems




Molecular Dynamics


Book Description

This book describes the mathematical underpinnings of algorithms used for molecular dynamics simulation, including both deterministic and stochastic numerical methods. Molecular dynamics is one of the most versatile and powerful methods of modern computational science and engineering and is used widely in chemistry, physics, materials science and biology. Understanding the foundations of numerical methods means knowing how to select the best one for a given problem (from the wide range of techniques on offer) and how to create new, efficient methods to address particular challenges as they arise in complex applications. Aimed at a broad audience, this book presents the basic theory of Hamiltonian mechanics and stochastic differential equations, as well as topics including symplectic numerical methods, the handling of constraints and rigid bodies, the efficient treatment of Langevin dynamics, thermostats to control the molecular ensemble, multiple time-stepping, and the dissipative particle dynamics method.




Statistical Mechanics: Theory and Molecular Simulation


Book Description

Complex systems that bridge the traditional disciplines of physics, chemistry, biology, and materials science can be studied at an unprecedented level of detail using increasingly sophisticated theoretical methodology and high-speed computers. The aim of this book is to prepare burgeoning users and developers to become active participants in this exciting and rapidly advancing research area by uniting for the first time, in one monograph, the basic concepts of equilibrium and time-dependent statistical mechanics with the modern techniques used to solve the complex problems that arise in real-world applications. The book contains a detailed review of classical and quantum mechanics, in-depth discussions of the most commonly used ensembles simultaneously with modern computational techniques such as molecular dynamics and Monte Carlo, and important topics including free-energy calculations, linear-response theory, harmonic baths and the generalized Langevin equation, critical phenomena, and advanced conformational sampling methods. Burgeoning users and developers are thus provided firm grounding to become active participants in this exciting and rapidly advancing research area, while experienced practitioners will find the book to be a useful reference tool for the field.




Modern Fortran


Book Description

Modern Fortran teaches you to develop fast, efficient parallel applications using twenty-first-century Fortran. In this guide, you’ll dive into Fortran by creating fun apps, including a tsunami simulator and a stock price analyzer. Filled with real-world use cases, insightful illustrations, and hands-on exercises, Modern Fortran helps you see this classic language in a whole new light. Summary Using Fortran, early and accurate forecasts for hurricanes and other major storms have saved thousands of lives. Better designs for ships, planes, and automobiles have made travel safer, more efficient, and less expensive than ever before. Using Fortran, low-level machine learning and deep learning libraries provide incredibly easy, fast, and insightful analysis of massive data. Fortran is an amazingly powerful and flexible programming language that forms the foundation of high performance computing for research, science, and industry. And it's come a long, long way since starting life on IBM mainframes in 1956. Modern Fortran is natively parallel, so it's uniquely suited for efficiently handling problems like complex simulations, long-range predictions, and ultra-precise designs. If you're working on tasks where speed, accuracy, and efficiency matter, it's time to discover—or re-discover—Fortran.. About the technology For over 60 years Fortran has been powering mission-critical scientific applications, and it isn't slowing down yet! Rock-solid reliability and new support for parallel programming make Fortran an essential language for next-generation high-performance computing. Simply put, the future is in parallel, and Fortran is already there. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the book Modern Fortran teaches you to develop fast, efficient parallel applications using twenty-first-century Fortran. In this guide, you'll dive into Fortran by creating fun apps, including a tsunami simulator and a stock price analyzer. Filled with real-world use cases, insightful illustrations, and hands-on exercises, Modern Fortran helps you see this classic language in a whole new light. What's inside Fortran's place in the modern world Working with variables, arrays, and functions Module development Parallelism with coarrays, teams, and events Interoperating Fortran with C About the reader For developers and computational scientists. No experience with Fortran required. About the author Milan Curcic is a meteorologist, oceanographer, and author of several general-purpose Fortran libraries and applications. Table of Contents PART 1 - GETTING STARTED WITH MODERN FORTRAN 1 Introducing Fortran 2 Getting started: Minimal working app PART 2 - CORE ELEMENTS OF FORTRAN 3 Writing reusable code with functions and subroutines 4 Organizing your Fortran code using modules 5 Analyzing time series data with arrays 6 Reading, writing, and formatting your data PART 3 - ADVANCED FORTRAN USE 7 Going parallel with Fortan coarrays 8 Working with abstract data using derived types 9 Generic procedures and operators for any data type 10 User-defined operators for derived types PART 4 - THE FINAL STRETCH 11 Interoperability with C: Exposing your app to the web 12 Advanced parallelism with teams, events, and collectives




Computational Biophysics


Book Description

Computational Biophysics




Polymer Engineering Science and Viscoelasticity


Book Description

This book provides a unified mechanics and materials perspective on polymers: both the mathematics of viscoelasticity theory as well as the physical mechanisms behind polymer deformation processes. Introductory material on fundamental mechanics is included to provide a continuous baseline for readers from all disciplines. Introductory material on the chemical and molecular basis of polymers is also included, which is essential to the understanding of the thermomechanical response. This self-contained text covers the viscoelastic characterization of polymers including constitutive modeling, experimental methods, thermal response, and stress and failure analysis. Example problems are provided within the text as well as at the end of each chapter. New to this edition: · One new chapter on the use of nano-material inclusions for structural polymer applications and applications such as fiber-reinforced polymers and adhesively bonded structures · Brings up-to-date polymer production and sales data and equipment and procedures for evaluating polymer characterization and classification · The work serves as a comprehensive reference for advanced seniors seeking graduate level courses, first and second year graduate students, and practicing engineers




Introduction to Lattice Dynamics


Book Description

The vibrations of atoms inside crystals - lattice dynamics - is basic to many fields of study in the solid-state and mineral sciences. This book provides a self-contained text that introduces the subject from a basic level and then takes the reader through applications of the theory.