Skip to content
fgrunewald edited this page Jun 28, 2021 · 11 revisions

Here is a list of frequently asked questions. If you cannot find your question here, simply raise an issue for further help. If you can find your issue here but cannot resolve it using the answers raise an issue with the tag FAQ.

Q: Why is my structure generation slow?
A: It could be that the target density is too high for efficient packing or the random-walk gets trapped. Try decreasing the density or increasing the maximum force (-mf).

Q: Why does my structure generation crash with a KeyError?
A: This happens most likeley in one of two scenarios: 1) You have specified an atomtype in your itp, which is not defined in the topology itp file. The program crashes at the template generation stage. 2) Your residue names are not unique. In this case the program crashes during the backmapping. All residue names have to be unique.

Q: Why does polyply gen_itp fail give the warning "Your molecule consist of disconnected parts"?
A: This means that you have parts in your molecule that are not connected by bonds, angles, dihedrals or imporper dihedrals. Typically this means that your links do not apply (see below). But it can also happen when for example you have a virtual site, which is not connected to other atoms by bonds, angles and so on. In this case to avoid the warning you need to add an new directive called [edges], where you specify pairs of atom names of the virtual-site and it's constructing atoms. For example for atoms A,B,C and virtual-site D.

[ virtual_sitesn ]
D A B C -- 1
[ edges ]
A D
B D 
C D

Q: Why is the function type of my virtual-site not preserved? When I write the virtual-sites like in the itp file my function number changes. A: In the ff-format the virtual-sites follow a special syntax that is different from the itp-file syntax. In the ff-format the first atom is the virtual-site, followed by the constructing atoms followed by a double dash ('--') and the function type. See previous question.

Q: Why do I get infinities in the energy minimization?
A: This means that after backmapping to target resolution two beads/atoms are overlapping. To resolve this problem try to create a system at lower target density, or reduce the maximum force allowed in the random walk (i.e. set a lower value using -mf), or try to minimize using thermodynamic integration.

Q: Why does my link not apply?
A: There are many reasons but typically it is, because the algorithm cannot find matching atoms or the link at residue level does not match any fragment in the target graph. To resolve this problem run gen_itp with the -vv flag. This will print why links don't apply. Another typically encountered problem is that for exclusions, pairs, virtual-sites, and improper dihedral angles you will have to provide an [edge] directive describing, how the fragment looks like that these interactions correspond to. In this case consult the tutorial on writing ff-files for more information.

Q: I cannot run the package, because of a 'wrapper' error?
A: This typically occurs because the numba version installed on the machine is too old. Try reinstalling numba to the most recent version.

Q: How do I include a starting structure?
A: Starting structures can be provided with the '-c' option. Note that the starting structure coordinates are associated to the first N atoms in your topology file. If you want extend some existing molecules by polymers use the '-res' flag to tell polyply that all residues with the name mentioned there have to be built. In that case all other coordinates are considered provided with the -c option. Again the order in the coordinate file needs to match the order of all other coordinates in the topology file.

Q: How do I install polyply?
A: We recommend installing polyply in a virtual environment (). In that case simply create a new environment and use 'pip install polyply'. if you are working with conda check out the conda install instructions here on the wiki. Note installing numba with polyply gives great speed ups.

Q: How do I install the development version?
A: To install the development version use: pip install git+https://github.com/marrink-lab/polyply_1.0.git#polyply_1.0

Q: How does polyply deal with chirality in structure generation?
A: Polyply does not specifically take care to create residues with the appropriate chirality. Instead the chirality should be enforced by including an appropriate improper dihedral. That dihedral angle only has to be present for the energy minimization step to push the appropriate conformation unless the force-field defines such an dihedral angle by default. For example, in GROMOS PMA the chiral hydrogen is missing. Thus within GROMOS an improper dihedral angle is utilized by default to set the chirality. In contrast for PMMA that is not the case, because the methyl group is represented explicitly. In this case we have implemented such a dihedral angle in the library and it is switched on by setting the 'eq_polyply' define statement in the mdp file. Note that the user must use this setting at least in the energy minimization to ensure the expected chirality.