Re: extracting force on a single atom

From: Ben Adams (benny.adams1993_at_gmail.com)
Date: Thu Aug 31 2017 - 10:11:19 CDT

Sorry for that typo. But it's not the problem. I get that anyway:

FATAL ERROR: unknown parameter

    while executing

"getstep"

    invoked from within

"set t [getstep]"

On Thu, Aug 31, 2017 at 10:07 AM, Florian Blanc <blanc.flori_at_gmail.com>
wrote:

> Dear Ben,
>
> I have not tried it, but you wrote "getsetp", when I guess it should be
> "getstep".
>
> Good luck,
>
> Florian
>
> On 08/31/2017 05:03 PM, Ben Adams wrote:
>
> Thank you very much.
> Just for last question, when I use this command in my tclforces script,
> either inside calcforces or just inside tclForces, I get this error message:
>
> FATAL ERROR: unknown parameter
>
> while executing
>
> "getsetp"
>
> invoked from within
>
> "set t [getsetp]"
>
>
> I'm using NAMD 2.11.
>
>
> Best,
>
>
> Ben
>
> On Thu, Aug 31, 2017 at 8:46 AM, Jérôme Hénin <jerome.henin_at_ibpc.fr>
> wrote:
>
>> What you need to do is define the script from the beginning, but do
>> nothing on the first timestep - at least not call loadtotalforces. You can
>> use [getstep] to keep track of the timestep.
>>
>> Jerome
>>
>>
>> On 31 August 2017 at 15:38, Ben Adams <benny.adams1993_at_gmail.com> wrote:
>>
>>> Thank you. So if I somehow avoid loadTotalForces at the very first
>>> timestep my problem will be solved? Do you have any suggestions?
>>> I tried to run for 20 steps and then added my tclForces script but it
>>> failed:
>>>
>>> FATAL ERROR: Setting parameter tclForces from script failed!
>>>
>>>
>>> On Thu, Aug 31, 2017 at 5:37 AM, Jérôme Hénin <jerome.henin_at_ibpc.fr>
>>> wrote:
>>>
>>>> Hi Ben,
>>>>
>>>> Two things here. The first one is, you probably want to use
>>>> loadTotalForces rather than loadForces (loadforces will only collect
>>>> external forces applied through TclForces). Second, with loadTotalForces,
>>>> data is collected at the end of one timestep and available on the next. So
>>>> no data will be available on the very first timestep, and then the forces
>>>> you'll get will be stale by one timestep.
>>>>
>>>> Best,
>>>> Jerome
>>>>
>>>> On 31 August 2017 at 02:18, Ben Adams <benny.adams1993_at_gmail.com>
>>>> wrote:
>>>>
>>>>> Dear NAMD users,
>>>>>
>>>>> I've been looking everywhere to find a way to extract forces on a
>>>>> single atom. It seems the best way is to use "tclforces". Here is that part
>>>>> of my NAMD configuration file:
>>>>>
>>>>> tclForces on
>>>>> tclForcesScript {
>>>>> set nter [addgroup {3}]
>>>>> set cter [addgroup {4}]
>>>>> proc calcforces {} {
>>>>> global nter cter
>>>>> loadcoords coor
>>>>> loadforces forces
>>>>> print nter=$forces($nter)
>>>>> print nter=$coor($nter)
>>>>>
>>>>> }
>>>>> }
>>>>>
>>>>>
>>>>> Unfortunately it doesn't recognize "loadforces" and I get the
>>>>> following error:
>>>>>
>>>>> FATAL ERROR: can't read "forces(g1)": no such variable
>>>>> while executing
>>>>> "print nter=$forces($nter)"
>>>>> (procedure "calcforces" line 5)
>>>>>
>>>>> I also tried "$forces(4)" and got the same error.
>>>>> I search through mailing list. Such a problem is being reported
>>>>> several times but there are no answers to them.
>>>>> Can anybody help me with that?
>>>>> Is there any other way beside "dcdforces" (which outputs all the atoms
>>>>> together) to get forces for a single atom?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Ben
>>>>>
>>>>>
>>>>
>>>
>>
>
>

This archive was generated by hypermail 2.1.6 : Sun Dec 31 2017 - 23:21:36 CST