Polymers in Solvents VR
How does a polymer's random shape depend on the solvent environment? You can see for yourself with polymer chains (from 1 to 10) floating in a virtual (invisible) sea of solvent molecules. The key variable is RelAttr, the relative attraction of the solvent for the polymer. When this is large (--> 1) the polymer prefers, on average, to be surrounded by the sea of solvent molecules so tends to be fully extended. When RelAttr is negative (--> -1) the polymer prefers to curl in on itself. When RelAttr = 0 this is the neutral ("theta solvent") state. Temperature obviously has an effect on all this, as does the "concentration" represented by the size of the "box" containing the polymer chain(s). The Radius of Gyration and End-to-End distances are updated as an output.
Like so much of WebVR it is currently bleeding edge and works only on special versions of Chrome and Firefox. Later this year the standard Chrome, Firefox and Edge will handle WebVR natively. The app works with the HTC Vive and the Oculus Touch, using the gui.datVR tool for menu items.
Instructions are below.
Polymers in Solvents VR
The basic need is to be able to fly around the box to get whatever view you want to see. Just look where you want to go and press a trigger - one takes you forward, the other takes you in reverse. Using point, click/slide with the menus you can pause/resume and change settings. The menu and touchpad buttons on the controllers also Reset and Pause/Resume - use whichever mode suits you.
The settings are:
- Length - the number of "monomers" in the chain
- N-Chains - the number of chains
- RelAttr - as discussed above, the relative attraction of the polymer for the solvent
- Pseudo T - a mimic for temperature from 0 to 100 to show the expected behavioural trends
- Inc. T effect is on by default. If you turn it off it speeds up calculations by a modest amount.
- Box Size - the size of the box confining the chains. For ease of filling, the chains are curled as a spiral. With big boxes and few/short chains the spirals don't expand. But for smaller boxes a many/long chains, the spirals contract.
- Show Box - toggles the visibility of the box. The box is still there (particles bounce off the wall) even if invisible.
If you suddenly change T or RelAttr this might cause some bonds in your polymer to break! Also, simulations slow down considerably when you have lots of long chains!
The outputs are:
- Radius of Gyration - the root mean square distance of monomers from the centre of mass of the polymer. Theoretically this should be Rg² = b²N/6 where b is the effective (Kuhn) length between links in the polymer chain and N is the number of these units. In the app, b is taken to be 1, so for the default 40-unit polymer you would expect Rg²=6.66, so Rg=2.58
- End-to-End distance - In theory this should be 2.45x larger than the RoG, but that's only possible over a statistical ensemble so becomes more valid the more chains you have.
Although this is a simplistic model, it conveys quite a lot about polymer science:
- Viscosity depends on polymer-polymer contact which increases with chain length (obviously) and with goodness of solvent.
- In poor solvents, dilute solutions of polymers coil up
- At higher concentrations, as solvency decreases the polymer falls out of solution as a tangled lump.