Code Monkey home page Code Monkey logo

muhammadrrahman / thin-film-rupture-nemd Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 425 KB

Codes to reproduce the results of: (1) Life and Death of a Thin Liquid Film, 2024, by Rahman et. al., and (2) Non-equilibrium molecular simulations of thin film rupture, J. Chem. Phys., 2023, by Rahman et al.

Home Page: https://pubs.aip.org/aip/jcp/article/158/15/151104/2882242/Non-equilibrium-molecular-simulations-of-thin-film

Python 100.00%
molecular-dynamics-simulation nemd retraction rupture thin-films taylor-culick

thin-film-rupture-nemd's Introduction

Codes to reproduce data for:

Life and Death of a Thin Liquid Film

by Muhammad Rizwanur Rahman, Li Shen, James P. Ewen, David M. Heyes, Daniele Dini, and, Edward R. Smith (under review). Initial preprint: arXiv preprint arXiv:2311.00419

Non-Equilibrium Molecular Simulations of Thin Film Rupture

by Muhammad Rizwanur Rahman, Li Shen, James P. Ewen, Benjamin Collard, David M. Heyes, Daniele Dini, and, Edward R. Smith. Journal of Chemical Physics (Communication), April 2023. https://aip.scitation.org/doi/10.1063/5.0149974

** This repository will be further developed.

MD Solver

Flowmol MD solver was used for the simulations. This is an open source platform developed by one of the authors (E. R. Smith) and can be found here: https://github.com/edwardsmith999/flowmol#flowmol Once Flowmol is installed:

  1. Run MD_01_equilibration.in with NVT ensemble.

  2. Depending on the poking technique:

    (i) Poked-hole: run MD_02_poke_a_hole.in for few time steps (i.e, 1000) with the final_state generated from step 1.

    (ii) Cut-hole: use MD_02_cut_a_hole.py to cut a hole of target radius and target density. This python code takes the final_state file from the equilibration state and removes molecules according to the user preference:

    Remove molecules (currently this is based on a similar setup to the external force) where inputs are position [x,y,z] of the hole center, radius and then direction (x=0, y=1, z=2), ends[bottom,top] of the film, and target density i.e.: fs.remove_molecules([0.,0.,0.],8,0,[-6.5,6.5], 0.01). The python code writes a new initial_state file to be used in the production phase.

    NB. MD_02_cut_a_hole.py requires the final_state (from the equilibration phase) file in the same directory.

  3. Use the final_state from step 2 as a restart file to run MD_03_production.in with NVE ensemble for sufficiently long time.

  4. For spontaneous hole formation, skip step 2, and start production phase without externally poking or cutting a hole in the film. To attain rupture within computationally feasible time, start with thinner films.

  5. To save finalstates frequently for the investigation of teh memory window, set the RESCUE_SNAPSHOT_FREQ to a lower value.

Analysing the data

  1. Func_hole_growth.py and Func_surface_functions.py contain the required subroutines called from other .py files.
  2. hole-growth.py tracks the hole radius over time.
  3. surface-tension.py measures the local surface tension of the film.
  4. surface-tension-mapped-pressure-tensor.py measures local surface tension with pressuree-tensor rotated along the rim profile. Also tracks the evolution of the film profile with time.
  5. radial-averaged-density.py creates images of the radial averaged density field setting the origin at the hole center (0,0,0).
  6. Temperature-Velocity-radial-averaged.py plots the radial averaged velocity and temperature field.

thin-film-rupture-nemd's People

Contributors

muhammadrrahman avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.