12
$\begingroup$

I have written a simulation engine in C++ to run a Monte Carlo simulation of polymers on a lattice. My code basically plants a polymer on a lattice, and performs certain Monte Carlo moves, including but not limited to the following: enter image description here

I ensure that excluded volume effects are maintained in this system as it evolves (if two monomers overlap, energy diverges, and move is rejected). Now that my software is running, I would like to run some benchmarks on it.

My first thought is calculating Flory exponents. If I run my simulation with excluded volume and a certain monomer-solvent interaction, I should get a Flory exponent $\nu$ such that $$\langle R_g ^2 \rangle \propto N^\nu $$

If I have excluded volume interactions on a 3D lattice with no monomer-solvent interaction $\epsilon _{ms} = 0$, I should expect to see a $\nu$ of 0.6. My question is, is there a scaling behavior to be seen when I have a $\epsilon_{ms} >0$ (bad solvent) and a $\epsilon _{ms} < 0$ (good solvent)?

Are there any other benchmarks I should run to check my simulation engine is functioning up to the mark?

I would appreciate any advice you have for me.

$\endgroup$
6
  • 1
    $\begingroup$ Check the software Cassandra by Maginn at Notre Dame. They probably have benchmarks for their monte carlo moves. cassandra.nd.edu. I think Daan Frenkel also has done alot of this, so maybe see if he has a website/code around with benchmarks. Same with Vlugt $\endgroup$
    – Wesley
    Nov 23, 2021 at 20:13
  • $\begingroup$ Was the suggestion by Wesley helpful? $\endgroup$ Jan 14, 2022 at 2:09
  • $\begingroup$ Yes, @NikeDattani! $\endgroup$
    – megamence
    Jan 14, 2022 at 14:29
  • 1
    $\begingroup$ Wow! Good news! Enough to write a self-answer? $\endgroup$ Jan 14, 2022 at 14:49
  • 1
    $\begingroup$ @NikeDattani sure, I can do that $\endgroup$
    – Wesley
    Jan 27, 2022 at 14:52

1 Answer 1

6
$\begingroup$

Alot of the early pioneering in Monte Carlo (MC) moves were done initially using lattices. While I am not directly aware of places to look for benchmarks, the pioneers in the 90's for Monte Carlo moves I would say are Daan Frenkel, Thijs Vlugt, Berend Smidt, Edward Maginn and others.

Professor Edward Maginn hosts the Monte Carlo code Cassandra from Notre Dame. Daan Frenkel and Berend Smidt wrote the textbook(Bible) Understanding Molecular Simulation: From algorithms to applications, and they have accompanying code written in Fortran, with excerpts written by Vlugt.

This would be where I would start: I would check out Prof. Maginn's software Cassandra for benchmarks, and try to find the Fortran code for Frenkel & Smit, or even just check Frenkel & Smit's textbook which is riddled with pseudocode.

You can also check out MCCCS Towhee, another well known MC simulation package, but it is notoriously difficult with its documentation.

$\endgroup$
1
  • $\begingroup$ Panagiotopoulous is another one, and has fortran code available. Not sure if applicable to lattice though, tends to favor VLE $\endgroup$
    – Wesley
    Jan 27, 2022 at 15:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .