AMBER Archive (2004)Subject: Re: AMBER: segmentation fault
From: Scott Brozell (sbrozell_at_scripps.edu)
Date: Thu Mar 25 2004 - 16:33:32 CST
Hi,
On Fri, 19 Mar 2004, Hailong Lin wrote:
> thanks alot. after i changed the atomic name to 'Va', amber recognized the
> vanadium.
> Buuuuut, ' Segmentation Fault' is still staying where she was without any
> warnings in the leap.log file.
This problem is due to your unverified prep input file:
0 0 2
HISTIDINE DELTAH
vo4.db94
VO4 INT 1
CORR OMIT DU BEG
0.00000
1 DUMM DU M 0 -1 -2 0.000 0.000 0.000 0.00000
2 DUMM DU M 1 0 -1 1.449 0.000 0.000 0.00000
3 DUMM DU M 2 1 0 1.522 111.100 0.000 0.00000
4 V V 3 3 2 1 1.335 116.600 180.000 5.00000
5 O1 O2 E 4 3 2 1.600 119.800 0.000 -2.00000
6 O2 O2 S 4 5 2 1.600 104.507 180.000 -2.00000
7 O3 O2 E 4 6 5 1.635 132.255 -179.326 -2.00000
8 O4 O2 S 4 7 6 1.881 90.987 -89.162 -2.00000
9 H1 H E 6 4 5 1.000 109.518 179.993 1.00000
10 H2 H E 8 4 5 1.000 109.466 -179.993 1.00000
DONE
STOP
which results in a VO4 unit with this bonding:
H1 -- O4 -- V -- O1
|
O2
|
O3
H2
where H2 is an unbonded atom.
A corrected prep file is
0 0 2
HISTIDINE DELTAH
vo4.db94
VO4 INT 1
CORR OMIT DU BEG
0.00000
1 DUMM DU M 0 -1 -2 0.000 0.000 0.000 0.00000
2 DUMM DU M 1 0 -1 1.449 0.000 0.000 0.00000
3 DUMM DU M 2 1 0 1.522 111.100 0.000 0.00000
4 V V M 3 2 1 1.335 116.600 180.000 5.00000
5 O1 O2 E 4 3 2 1.600 109.500 0.000 -2.00000
6 O2 O2 E 5 4 3 1.600 109.507 109.000 -2.00000
7 O3 O2 S 6 5 4 1.635 109.255 -109.326 -2.00000
8 H1 H E 6 4 5 1.000 109.518 179.993 1.00000
9 O4 O2 S 5 4 3 1.881 -109.987 -109.162 -2.00000
10 H2 H E 8 4 5 1.000 109.466 -179.993 1.00000
DONE
STOP
which results in a VO4 unit with this bonding
(although the dihedrals may not be what you expect):
O1
|
H1 -- O3 -- V -- O4 -- H2
|
O2
The crash occurred in LEaP's determination of modified Bondi GB radii.
LEaP was assuming that all Hydrogen atoms were bonded.
This unrobust behavior has been corrected;
now LEaP will emit this message:
WARNING: Unbonded Hydrogen atom H2 in VO4.
Cannot determine the requested GB radius for this atom.
Writing the unmodified Bondi GB radius.
Here's the Amber 7 bugfix (see the web for Amber 8's):
Author: Scott Brozell
Date: 03/25/2004
Programs: LEaP
Description: tleap and xleap may cause a segmentation fault when saving
a prmtop file using a unit containing unbonded hydrogen atoms;
the problem occurs when modified GB radii are requested.
Fix: apply the following patch to amber7/src/leap/src/leap/unitio.c
------------------------------------------------------------------------------
*** unitio.c 22 Oct 2002 15:14:28 -0000 7.29
--- unitio.c 25 Mar 2004 19:59:56 -0000
***************
*** 5162,5187 ****
/* make the modifications that hydrogen radii
depend upon the atom it is bonded to. iGBparm=1
corresponds to Amber 6, and JACS 122:2489 (2000);
! iGBparm=2 adds the modifcation from Biopolymers
56: 275 (2001) */
! if( GDefaults.iGBparm == 1 || GDefaults.iGBparm == 2 ){
aAtomA = aAtomBondedNeighbor(saPAtom->aAtom, 0);
! 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;
}
!
! if( GDefaults.iGBparm == 6 ){ /* try Alexey's scheme */
! aAtomA = aAtomBondedNeighbor(saPAtom->aAtom, 0);
! if( sAtomType(aAtomA)[0] == 'N' ||
! sAtomType(aAtomA)[0] == 'n' ) dGBrad = 1.3;
}
break;
--- 5162,5200 ----
/* make the modifications that hydrogen radii
depend upon the atom it is bonded to. iGBparm=1
corresponds to Amber 6, and JACS 122:2489 (2000);
! iGBparm=2 adds the modification from 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;
------------------------------------------------------------------------------
Temporary workarounds: use the unmodified Bondi GB radii via the command
set default PBradii bondi
-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber_at_scripps.edu
To unsubscribe, send "unsubscribe amber" to majordomo_at_scripps.edu
|