From: Charles Hoying (
Date: Wed Nov 01 2017 - 04:59:23 CDT

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