|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
Hi CHARMM users,
I am currently moving one of my simulations to from all27_prot_lipid and toppar_all27_lipid_cholesterol ff to all36 ff.
I just was wondering if there are some tools to make the transition more convenient. (except convert_lipid_c27_c36_xopc.str)
So did anyone automate all the required steps? 1) Reading old psf/coor with old ff, renaming alpha chain atoms and create PDB. 2) Split PDB into single segmented files (with grep). 3) generate new psf/coor/pdb file from the separated pdb files with the new ff.
I made the steps via PDB to omit trouble with the "MASS" statement.
Is there a more sleekly way while I am already asking.
Cheers Bjoern
|
|
|
|
Joined: Sep 2003
Posts: 8,658 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,658 Likes: 26 |
It is fairly simple if you use CHARMM coord files instead of PDB files; there's no need to split the file. Also, CHARMM can read a multiple segment PDB file, with a little work; there's an example in the Script Archive forum. For the conversion via COOR CARD format:
1) read old psf/coor, rename alpha chain, write new coor file 2) make and write c36 psf; read new coor and calc energy as a check
From that point on, you can simply use the new psf/coor file pair.
Finally, one can always continue to use the old alpha chain naming convention for DOPC and POPC, via the other stream file supplied with the C36 lipid parameters.
Rick Venable computational chemist
|
|
|
|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
*digging through the Script Archive*
Thanks for the hint with the psf/coor files. I new I missed something.
Thanks a lot.
|
|
|
|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
For the conversion via COOR CARD format:
1) read old psf/coor, rename alpha chain, write new coor file 2) make and write c36 psf; read new coor and calc energy as a check
How do I create a PSF from the coor (card) file? I was searching the io.doc but without success. [EDIT] Might be not the smartest way, but I just regenerated the setup of my PSF and read the coordinates from the crd (card) file: open read card unit 10 name ../top_all36_lipid.rtf
read rtf card unit 10
open read card unit 20 name ../par_all36_lipid.prm
read para card unit 20
stream ../toppar_all36_lipid_cholesterol.str
read sequ CHL1 43
read sequ POPC 86
read sequ POPS 43
read sequ CHL1 43
read sequ POPC 86
read sequ POPS 43
generate MEMB setup warn first none last none
read sequ TIP3 9232
generate TIP3 noangle nodihe
read sequ POT 88
generate POT noang nodihe
read sequ CLA 2
generate CLA noang nodihe
open read card unit 10 name memb30_c36_step1.crd
read coor card unit 10 resid
coor stat
energy
! WRITE CONVERTED FILES
open write card unit 10 name memb30_c36_step2.pdb
write coor pdb unit 10
open write card unit 10 name memb30_c36_step2.crd
write coor unit 10 card
open write unit 10 card name memb30_c36_step2.psf
write psf unit 10 card
open write unit 10 card name memb30_c36_step2.xplor.psf
write psf xplo unit 10 card
stop [/EDIT} Thanks Bjoern
Last edited by blubbi; 07/27/10 03:40 PM.
|
|
|
|
Joined: Sep 2003
Posts: 8,658 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,658 Likes: 26 |
That's usually what I do, and more or less what I meant by making a new PSF. The issue is that READ SEQU and GENER are needed for each segment; specifying the residue count is often simpler than reading the sequence from a coordinate file. That's only one of several ways to establish a sequence.
Rick Venable computational chemist
|
|
|
|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
Just out of curiosity: Is it possible to read from and up to a certain "line" for from a crd/(card) file? I am thinking of multimer proteins where it would be nasty to type each AA sequence ;-) something like:
open read card unit 10 name test.crd
read line 1 100 unit 10 resid
generate X1 setup warn first none last none
read line 101 201 unit 10 resid
generate X2 setup warn first none last none
|
|
|
|
Joined: Sep 2003
Posts: 4,883 Likes: 12
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 4,883 Likes: 12 |
This is not possible in current versions, but a similar (chain/segid) functionality will be available in the next release. Instead of typing the sequences you can use an editor or shell scripts to separate your multimer file into separate files for each unit. The mmtsb toolset and charmming.or or charmm-gui.org can also do this for you.
Lennart Nilsson Karolinska Institutet Stockholm, Sweden
|
|
|
|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
rmv, just a note: in "toppar_all36_lipid_oldxopc.str" you wrote: !Parent files that have to be read prior to streaming this file !top_all36_lipid.inp !par_all36_lipid.inp I guess it should be: !Parent files that have to be read prior to streaming this file !top_all36_lipid.rtf !par_all36_lipid.prm Converting the old psf/coor charmm files to the new naming scheme worked, but it is rather inconvenient to manipulate NAMD pdb files to be accepted by CHARMM, so I decided to stick with the old naming scheme, generate a new xplor.psf for NAMD and then just continue the simulation instead of starting a new simulation from the last coordinates I would have read from the NAMD PDB/COOR file. When streaming your toppar_all36_lipid_oldxopc.str open read card unit 10 name ../../top_all36_lipid.rtf
read rtf card unit 10
open read card unit 20 name ../../par_all36_lipid.prm
read para card unit 20
stream ../../toppar_all36_lipid_cholesterol.str
stream toppar_all36_lipid_oldxopc.str I get the following error: CHARMM> stream toppar_all36_lipid_oldxopc.str
VOPEN> Attempting to open::toppar_all36_lipid_oldxopc.str::
OPNLGU> Unit 99 opened for READONLY access to toppar_all36_lipid_oldxopc.str
INPUT STREAM SWITCHING TO UNIT 99
RDTITL> * CHARMM36 ALL-HYDROGEN LIPID FORCE FIELD TOPPAR STREAM FILE
RDTITL> * DOPC, POPC RESIDUES USING OLD C27 ATOM NOMENCLATURE, WHICH
RDTITL> * HAS AN INCONSISTENT ALPHA CHAIN ATOM NAMING SCHEME
RDTITL> * REPLACES C36 DOPC, POPC WITH STANDARDIZED NAMING (SAME AS DMPC, DPPC)
RDTITL> *
Parameter: IN1 <- "" <empty>
CHARMM>
CHARMM> !Parent files that have to be read prior to streaming this file
CHARMM> !top_all36_lipid.inp
CHARMM> !par_all36_lipid.inp
CHARMM>
CHARMM> read rtf card append
MAINIO> Residue topology file being read from unit 99.
RDTITL> * REPLACEMENT DOPC, POPC; OLD C27 ALPHA CHAIN ATOM NAMES
RDTITL> *
*** WARNING **** residue DOPC already exists (old one deleted)
RESI DOPC 0.00
**** ERROR in RTFRDR **** The atom type code, OSP is unknown. The atom will be ignored.
ATOM O1 OSP -0.57
**** ERROR in RTFRDR **** The atom type code, OSP is unknown. The atom will be ignored.
ATOM O2 OSP -0.57
**** WARNING from RTFRDR **** The total charge of the residue, DOPC, 1.1400000,
does not equal the expected charge, 0.0000000.
*** WARNING **** residue POPC already exists (old one deleted)
RESI POPC 0.00
**** ERROR in RTFRDR **** The atom type code, OSP is unknown. The atom will be ignored.
ATOM O1 OSP -0.57
**** ERROR in RTFRDR **** The atom type code, OSP is unknown. The atom will be ignored.
ATOM O2 OSP -0.57
**** WARNING from RTFRDR **** The total charge of the residue, POPC, 1.1400000,
does not equal the expected charge, 0.0000000.
There were 4 warning(s) from RTFRDR.
There were 4 error(s) from RTFRDR.
Execution will be terminated. Cheers Bjoern
|
|
|
|
Joined: Feb 2009
Posts: 83
Forum Member
|
OP
Forum Member
Joined: Feb 2009
Posts: 83 |
This is not possible in current versions, but a similar (chain/segid) functionality will be available in the next release. Instead of typing the sequences you can use an editor or shell scripts to separate your multimer file into separate files for each unit. The mmtsb toolset and charmming.or or charmm-gui.org can also do this for you. Okay, without some bash/python scripting it does not work, thats what I was curios about. Thanks With next release you mean c37a1? Thanks Bjoern
|
|
|
|
Joined: Sep 2003
Posts: 8,658 Likes: 26
Forum Member
|
Forum Member
Joined: Sep 2003
Posts: 8,658 Likes: 26 |
Did you get the files from the MacKerell web site? I thought we'd fixed that OSP bug. Just change the OSP to OSLP for those 2 phosphate O atoms in the old definitions of POPC and DOPC in the stream file.
The convenience of NAMD usage was not a consideration.
Rick Venable computational chemist
|
|
|
|
|