AMBER Archive (2009)

Subject: [AMBER] C1, C2 & C3 carbon types in generalized Born implementation igb=5

From: Nils Jan Daniel Drechsel (ndrechsel_at_imim.es)
Date: Thu Dec 17 2009 - 03:52:59 CST


Dear Amber developers,

I am currently in the processing of implementing the generalized Born
method igb=5 into our molecular simulator, Adun. In order to generate
precisely the same energies as a sander run would return, I would like
to use exactly the same scale parameters and intrinsic coulom radii.
Dr. Case was already very helpful by supplying me with a table of
scale parameters. As for the mbondi2 radii, I have been going through
code which I found in unitio.c:

 switch( iElement ) {
                case 1: dGBrad = 1.2;
                    /* make the modifications that hydrogen radii
                       depend upon the atoms they are bonded to.
                       iGBparm=1 corresponds to Amber 6, JACS 122:2489 (2000);
                       iGBparm=2 adds the update of Biopolymers 56: 275 (2001)
                     */
                    if( iAtomCoordination(saPAtom->aAtom) > 0 ) {
                        /* For multiply bonded Hydrogen atoms use the first
                         * bond for determining modified GB radii.
                         * WAT contains multiply bonded Hydrogen atoms
                         * so do not emit a warning.
                         */

                        aAtomA = aAtomBondedNeighbor(saPAtom->aAtom, 0);
                        if( GDefaults.iGBparm == 1 || GDefaults.iGBparm == 2 ) {
                            if( sAtomType(aAtomA)[0] == 'C' ||
                                    sAtomType(aAtomA)[0] == 'c' ) dGBrad = 1.3;
                            if( sAtomType(aAtomA)[0] == 'O' ||
                                    sAtomType(aAtomA)[0] == 'o' ) dGBrad = 0.8;
                            if( sAtomType(aAtomA)[0] == 'S' ||
                                    sAtomType(aAtomA)[0] == 's' ) dGBrad = 0.8;
                            if( (sAtomType(aAtomA)[0] == 'N' ||
                                    sAtomType(aAtomA)[0] == 'n') &&
                                    GDefaults.iGBparm == 2) dGBrad = 1.3;
                        }
                        else if( GDefaults.iGBparm == 6 ) {
                            /* try Alexey's scheme */
                            if( sAtomType(aAtomA)[0] == 'N' ||
                                     sAtomType(aAtomA)[0] == 'n' ) dGBrad = 1.3;
                        }
                    }
                    else {
                        VP0(( "WARNING: Unbonded Hydrogen atom %s in %s.\n"
                                " Cannot determine the requested GB radius"
                                " for this atom.\n"
                                " Writing the unmodified Bondi GB radius.\n",
                                saPAtom->aAtom->cHeader.sName,
                                saPAtom->aAtom->cHeader.cContainedBy->sName ));
                    }
                    break;
                case 6:
                    if ( strncmp(sType,"C1",2) &&
strncmp(sType,"C2",2) && strncmp (sType,"C3",2) )
                       dGBrad = 1.7;
                    else
                       dGBrad = 2.2;
                    break;

On the last lines (case 6), different radii are associated with
different types of carbon. However, C1, C2 & C3 are nowhere to be
found in the parameter and topology files and I expect their meaning
to be how many hydrogens are bound to it, or something like that.
Would one of the developers be so kind to elaborate this association?
it would be of great help.

Thank you very much in advance,
Nils Drechsel

--
Nils Jan Daniel Drechsel
Computational Biochemistry and Biophysics Lab
Barcelona Biomedical Research Park
C/ Doctor Aiguader 88
08003 Barcelona (Spain)
+34 933 160 506

_______________________________________________ AMBER mailing list AMBER_at_ambermd.org http://lists.ambermd.org/mailman/listinfo/amber