Interesting question.
I won't attempt to think about the modeling/chemistry/sampling
ramifications...
Computationally, if you look at sander's amd.F90 module, it could be the
case that you could change the boosting loop over all atoms in the
calculate_amd_total_weights routine which I copied in below.... so that
it just looped over the atoms in the protein. I marked the loop below
with <<<<<<<<<<<<<<<<<
However, the preceeding calculations of "tboost" (torsion boost) appears
very much based on the gross total of ALL dihedtrals. Splitting
calculation of tboost between protein and membrane, at my first glance,
is much tougher than carving out a subset of atoms to be boosted.
I close by noting that I know little about which I write :) - and look
forward with you to the advice of the AMD pros!
subroutine
calculate_amd_total_weights(atm_cnt,tot_potenergy,totdih_ene,frc,temp0)
use constants, only: KB
implicit none
# include "parallel.h"
! Formal arguments:
integer :: atm_cnt
_REAL_ :: tot_potenergy
_REAL_ :: totdih_ene
_REAL_ :: frc(*)
_REAL_ :: temp0
integer :: i
!AMD DUAL BOOST CALC START
if(iamd.gt.0)then
totalenergy = 0.0d0
tboostall = 0.0d0
fwgt = 1.0d0
totalenergy = tot_potenergy + (tboost*temp0*KB)
if (((iamd == 1).or.(iamd == 3)) .and. (totalenergy.le.EthreshP)) then
if (num_amd_lag .eq. 0) then
tboostall = ((EthreshP - totalenergy)**2)/ &
((alphaP + (EthreshP - totalenergy))*temp0*KB)
fwgt = (alphaP**2)/((alphaP + EthreshP - totalenergy)**2)
do i = 1, atm_cnt <<<<<<<<<<<<<<<<<
frc(i*3 - 2) = frc(i*3 - 2)*fwgt
frc(i*3 - 1) = frc(i*3 - 1)*fwgt
frc(i*3) = frc(i*3)*fwgt
enddo
end if
On 06/16/2013 11:43 AM, Thomas Evangelidis wrote:
> Dear AMBER list,
>
> Does AMBER12 support selective aMD? Can I apply the dihedral energy boost
> potential just on the torsion angles of the protein in a membrane-protein
> simulation?
>
> thanks,
> Thomas
>
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Mon Jun 17 2013 - 08:30:02 PDT