Re: [AMBER] MMPBSA.py: minimization issue with nmode

From: Nicolas SAPAY <nicolas.sapay.cermav.cnrs.fr>
Date: Tue, 31 Aug 2010 15:24:56 +0200

OK, thanks!


> Hello,
>
> I actually think I may have found the cause of the "bad periodicity"
> statement. In the nab code, $AMBERHOME/AmberTools/src/sff/sff2.c, in line
> 1386, you should insert "break;" in the line afterwards. To be more
> precise:
>
> case 6:
> ct2 = ct * ct;
> e = ct2 * (ct2 * (ct2 * 32.0 - 48.0) + 18.0) - 1.0;
> df = ct * (ct2 * (ct2 * 192.0 - 192.0) + 36.0);
> ddf = ct2 * (ct2 * 960.0 - 576.0) + 36.0;
>
> default:
> fprintf(stderr, "bad periodicity: %d\n", iper);
> exit(1);
> }
>
> This is where the error message is being printed. If case 6 has a break
> statement after its last algebraic manipulation, this should fix the
> error.
> Without this, I think it's automatically moving down to the "default" case
> and throwing that error message. 6 should be a valid periodicity.
>
> I will correct this, run the tests, and create a bug fix when I get a
> chance, but if any developer wants to change this and get a fix out faster
> than I can, by all means.
>
> Thanks!
> Jason
>
> On Tue, Aug 31, 2010 at 8:55 AM, Jason Swails
> <jason.swails.gmail.com>wrote:
>
>> Hello,
>>
>> The "bad periodicity" actually corresponds to an evaluation of a
>> dihedral
>> term, in which the periodicity is only allowed to be integral values 1,
>> 2,
>> 3, 4, or 6. If it's not one of these values, the error message gets
>> thrown. I'll have to look into why this is actually getting thrown
>> (possibly a round-off error... I'm not sure, a nab developer would be
>> able
>> to tell more easily I'm guessing).
>>
>> Another thing that may be going wrong with your calculation is that
>> you're
>> running out of available memory. NMODE calculations can be very memory
>> intensive, and if you're running 3 threads on the same machine without
>> around 8 GB of memory, it's quite possible that mmpbsa_py_nabnmode is
>> simply
>> running out of RAM for the calculations. My suggestion is to start a
>> single
>> nmode calculation with the nab program (you can use MMPBSA.py serial
>> version
>> for this) and take a look at the memory usage. Can your computer handle
>> 3x
>> that amount of memory usage?
>>
>> Good luck!
>> Jason
>>
>>
>> On Tue, Aug 31, 2010 at 8:31 AM, Bill Miller III
>> <brmilleriii.gmail.com>wrote:
>>
>>> The snapshots were correctly minimized. Unfortunately, that warning
>>> message
>>> can be misleading. The entropy calculation in MMPBSA.py is done with a
>>> nab
>>> program mmpbsa_py_nabnmode. The issue you are having (with "bad
>>> periodicity") is an error message invoked by nab, not MMPBSA.py.
>>> Possibly
>>> a
>>> nab developer could help with this error message?
>>>
>>> -Bill
>>>
>>>
>>> On Tue, Aug 31, 2010 at 8:14 AM, Nicolas SAPAY <
>>> nicolas.sapay.cermav.cnrs.fr
>>> > wrote:
>>>
>>> > Hello,
>>> >
>>> > I'm trying to estimate the binding free energy of a ligand on a
>>> protein
>>> > using the MM/PBSA method and I have difficulties with the calculation
>>> of
>>> > the entropy component with MMPBSA.py. I'm using the following input
>>> file:
>>> >
>>> > &general
>>> > verbose=1,
>>> > startframe=1, endframe=4000, interval=10,
>>> > /
>>> > &nmode
>>> > nmstartframe=1, nmendframe=400, nminterval=100,
>>> > drms=0.0001, maxcyc=100000
>>> > /
>>> >
>>> > So, I'm calculating the entropy from only 4 snapshots, but it's only
>>> to
>>> > test my scritps. I run the following command lines:
>>> >
>>> > export AMBERHOME=/home/software/amber10
>>> > export PYTHONHOME=/home/software/python-2.7
>>> > export PYTHONPATH=/home/software/python-2.7/lib/python-2.7
>>> >
>>> > amberdir=/home/software/amber11/exe
>>> > r_free=protein_free
>>> > l_free=ligand_free
>>> > md=docking
>>> >
>>> > echo "$md"
>>> > echo "------------------------------------"
>>> > echo "Start MM/PBSA calculation: `date`"
>>> >
>>> > mpirun -np 4 $amberdir/MMPBSA.py.MPI\
>>> > -O -i mmpbsa.in -o $md.dat\
>>> > -sp "$md"_solvated.prmtop -cp $md.prmtop\
>>> > -rp $r_free.prmtop -srp "$r_free"_solvated.prmtop\
>>> > -lp $l_free.prmtop -slp "$l_free"_solvated.prmtop\
>>> > -y "$md"_solvated.mdcrd -yr "$r_free"_solvated.mdcrd -yl
>>> > "$l_free"_solvated.mdcrd
>>> >
>>> > echo "End MM/PBSA calculation: `date`"
>>> > echo "------------------------------------"
>>> > echo ""
>>> >
>>> > First, you can see that I'm using MMPBSA.py.MPI from Amber11 and
>>> sander
>>> > from Amber10. This is because I only have a license for Amber10.
>>> Second,
>>> > I'm not using the default Python distribution (2.4.3) because it was
>>> not
>>> > compatible with MMPBSA.py (MPI4PY actually). I had to install Python
>>> 2.7,
>>> > then MPI4PY and finally MMPBSA.py. Third, you can notice that I'm
>>> using
>>> 3
>>> > trajectories to estimatethe free energy: 1 for the solvated complex,
>>> 1
>>> for
>>> > the solvated protein and 1 for the solvated ligand.
>>> >
>>> > With this configuration, the entropy calculation fails with the
>>> following
>>> > errors:
>>> >
>>> > Starting nmode calculations...
>>> > master thread is calculating 1 frames
>>> >
>>> > calculating complex for frame number 0
>>> > bad periodicity: 6
>>> > bad periodicity: 6
>>> > bad periodicity: 6
>>> > calculating receptor for frame number 0
>>> > bad periodicity: 6
>>> > bad periodicity: 6
>>> > bad periodicity: 6
>>> > calculating ligand for frame number 0
>>> > bad periodicity: 6
>>> > bad periodicity: 6
>>> >
>>> > Calculations complete. Writing output file(s)...
>>> > Warning: No snapshots for nmode minimized within tolerable limits!
>>> Entropy
>>> > not calculated.
>>> >
>>> > For the "bad periodicity" error, I didn't find any explanation about
>>> it
>>> in
>>> > the manual or the mailing list. For the minimization problem, it
>>> seems
>>> > that the 4 snapshots are actually minimized correctly, as stated in
>>> the
>>> 3
>>> > _MMPBSA_xxx_nm.out files. For each snapshot, I can see
>>> "----Convergence
>>> > Satisfied----" at the end of the calculation with the energy
>>> correctly
>>> > minized. So, nmode should be happy with that and perform the normal
>>> modes
>>> > calculation. Does someone understand what happens exactly?
>>> >
>>> > Regards,
>>> > Nicolas
>>> >
>>> > --
>>> > [ Nicolas Sapay - Post-Doctoral Fellow ]
>>> > CERMAV - www.cermav.cnrs.fr
>>> > BP53, 38041 Grenoble cedex 9, France
>>> > Phone: +33 (0)4 76 03 76 44/53
>>> >
>>> >
>>> > _______________________________________________
>>> > AMBER mailing list
>>> > AMBER.ambermd.org
>>> > http://lists.ambermd.org/mailman/listinfo/amber
>>> >
>>>
>>>
>>>
>>> --
>>> Bill Miller III
>>> Quantum Theory Project,
>>> University of Florida
>>> Ph.D. Graduate Student
>>> 352-392-6715
>>> _______________________________________________
>>> AMBER mailing list
>>> AMBER.ambermd.org
>>> http://lists.ambermd.org/mailman/listinfo/amber
>>>
>>
>>
>>
>> --
>> Jason M. Swails
>>
>> Quantum Theory Project,
>> University of Florida
>> Ph.D. Graduate Student
>> 352-392-4032
>>
>
>
>
> --
> Jason M. Swails
> Quantum Theory Project,
> University of Florida
> Ph.D. Graduate Student
> 352-392-4032
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>


-- 
[ Nicolas Sapay - Post-Doctoral Fellow ]
CERMAV - www.cermav.cnrs.fr
BP53, 38041 Grenoble cedex 9, France
Phone: +33 (0)4 76 03 76 44/53
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Tue Aug 31 2010 - 06:30:06 PDT
Custom Search