[AMBER] Frequencies in AMBER, obtaining the hessian

From: Stregone <stregone.protonmail.com>
Date: Wed, 14 Dec 2016 06:14:20 -0500

Dear Amber users,
I would like to obtain the hessian for system, how do I do it it AMBER?
As far as I have understood, I must use NAB for this, thus, I had used the
examples in the $AMBERHOME and the descriptions of this book

molecule m;
int ier;
float m_xyz[dynamic], f_xyz[dynamic];
float dgrad, fret;

m = getpdb("out_frame.rst7.1389.pdb");
allocate m_xyz[3*m.natoms];
allocate f_xyz[3*m.natoms];
readparm(m, "nbox.prmtop");

mm_options("rgbmax=999., cut=999.0, ntpr=100, nsnb=999, gb=1, diel=C");
mme_init(m, NULL, "::ZZZZ", m_xyz, NULL);

// Do some conjugate gradients.
dgrad = 0.005;
setxyz_from_mol( m, NULL, m_xyz );
ier = conjgrad(m_xyz, 3*m.natoms, fret, mme, 0.1, dgrad, 5000);

// Do some Newton-Raphson.
ier = newton(m_xyz, 3*m.natoms, fret, mme,mme2, 0.00000000001, 1, 15);

// normal modes:
ier = nmode( m_xyz, 3*m.natoms,mme2, 0,1,0.0,0.0,0);
printf("nmode returns %d\n", ier );

In certain point, it is added 0 to diagonal of the hessian, so what can I do in order to save those hessians?
It is any form in AMBER to obtain partial hessians?
in the 1st run of the calculation I had obtained several imaginary frequencies, are there any changes that I could include in order to make tighter the minimisations, I mean a way to reduce the number of imaginary frequencies ?

Thanks in advance
AMBER mailing list
Received on Wed Dec 14 2016 - 03:30:02 PST
Custom Search