From: Vermaas, Joshua (
Date: Wed Nov 01 2017 - 11:45:04 CDT

Do you have any other errors above? Like if you stop execution after loading the toppar_water_ions.str file? In the past, I've had to modify the file to strip out the parameter part so that pdfgen doesn't complain while reading the file.

On 11/01/2017 05:08 AM, Charles Hoying wrote:
Hi all,

I am trying to write a .psf using the CHARMM36 FF, but I am getting the following error about sodium:
It is odd to get the "unknown residue type SOD" message because SOD is the designation for sodium given in the toppar_water_ions.str file.
I am running psfgen from the following .tcl script in which I call the CHARMM36 files (the .tcl is written to delete a potassium ion and add a sodium ion in its place):

package require psfgen
topology toppar/toppar_all36_prot_retinol.str
topology toppar/toppar_all36_na_rna_modified.str
topology toppar/toppar_all36_carb_glycopeptide.str
topology toppar/toppar_all36_prot_fluoro_alkanes.str
topology toppar/toppar_all36_prot_na_combined.str
topology toppar/toppar_all36_prot_heme.str
topology toppar/toppar_all36_lipid_bacterial.str
topology toppar/toppar_all36_lipid_miscellaneous.str
topology toppar/toppar_all36_lipid_cholesterol.str
topology toppar/toppar_all36_lipid_yeast.str
topology toppar/toppar_all36_lipid_sphingo.str
topology toppar/toppar_all36_lipid_inositol.str
topology toppar/toppar_all36_lipid_cardiolipin.str
topology toppar/toppar_all36_lipid_detergent.str
topology toppar/toppar_all36_lipid_lps.str
topology toppar/toppar_water_ions.str
topology toppar/toppar_dum_noble_gases.str
topology toppar/toppar_all36_na_nad_ppi.str
topology toppar/toppar_all36_carb_glycolipid.str
topology toppar/toppar_all36_carb_imlab.str


readpsf step5_assembly.xplor_ext.psf

coordpdb step7.1_production_ionsabove.pdb

set sel [atomselect top "name POT and index 58642"]
set poslist [$sel get {x y z}]
set seglist [$sel get segid]
set reslist [$sel get resid]
foreach segid $seglist resid $reslist {
    delatom $segid $resid}

segment sod {
        auto none
        first NONE
        last NONE
        foreach resid $reslist {
          residue 9999 SOD}}
foreach xyz $poslist resid $reslist {
    coord SOD 9999 SOD $xyz}
writepsf step7.1_production_napot_above.psf
writepdb step7.1_production_napot_above.pdb
Thank you in advance for your help! Charlie