AMBER Archive (2005)

Subject: Re: AMBER: NTWPRY problem

From: David A. Case (case_at_scripps.edu)
Date: Mon Jul 25 2005 - 18:54:25 CDT


On Mon, Jul 25, 2005, wenfei Li wrote:
>
> In order to output the coordinates only for atoms 1-530 , I set the NTWPRT
> option to 530. Before the Bugfix.all file is applied to patch the source
> files, this option works well. However, after the latest Bugfix.all file is
> applied, this option does not make any use, and all of the atomic
> coordinates are printed.

The change was introduced with bugfix.13, but doesn't appear to have anything
to do with the overall purpose of that bugfix. I suspect that it is somehow
a regression to earlier code(?).

If Ross Walker is still alive, he can check bugfix.13 to see if the changes
to corpac() calls were really intended.

In the meantime, you can try the following (untested) patch; it just changes
three lines to tell corpac() how many atoms to print out.

Index: runmd.f
===================================================================
RCS file: /thr/gamow/cvsroot/amber8/src/sander/runmd.f,v
retrieving revision 7.260
diff -c -r7.260 runmd.f
*** runmd.f 2005/02/10 22:07:42 7.260
--- runmd.f 2005/07/25 23:50:31
***************
*** 1837,1843 ****
        
        if (itdump) then
           if( iwrap == 0 ) then
! call corpac(x,1,3*natom,12,loutfm)
              if(ntb > 0) call corpac(box,1,3,12,loutfm)
           else
              call get_stack(l_temp,3*natom)
--- 1837,1843 ----
        
        if (itdump) then
           if( iwrap == 0 ) then
! call corpac(x,1,nrx,12,loutfm)
              if(ntb > 0) call corpac(box,1,3,12,loutfm)
           else
              call get_stack(l_temp,3*natom)
***************
*** 1850,1856 ****
                 if (ifbox == 2) call wrap_to(nspm,nsp,r_stack(l_temp),box)
              end if
  #endif
! call corpac(r_stack(l_temp),1,3*natom,12,loutfm)
              if(ntb > 0) call corpac(box,1,3,12,loutfm)
              call free_stack(l_temp)
           end if
--- 1850,1856 ----
                 if (ifbox == 2) call wrap_to(nspm,nsp,r_stack(l_temp),box)
              end if
  #endif
! call corpac(r_stack(l_temp),1,nrx,12,loutfm)
              if(ntb > 0) call corpac(box,1,3,12,loutfm)
              call free_stack(l_temp)
           end if
***************
*** 1859,1865 ****
        ! Velocity archive:
        
        if (ntwv > 0) then
! if (mod(nstep,ntwv) == 0) call corpac(v,1,3*natom,13,loutfm)
        end if
        
        ! Energy archive:
--- 1859,1865 ----
        ! Velocity archive:
        
        if (ntwv > 0) then
! if (mod(nstep,ntwv) == 0) call corpac(v,1,nrx,13,loutfm)
        end if
        
        ! Energy archive:

....thanks for the report.....good luck....dac

-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber_at_scripps.edu
To unsubscribe, send "unsubscribe amber" to majordomo_at_scripps.edu