Thanks a lot for the info.
It worked!
On Sun, Nov 16, 2008 at 12:20 PM, Waleed Tuffaha <[EMAIL PROTECTED]> wrote:
> Hello kanupriya,
>
> you have an error in proc finish {} , you didn't do 'global tracefile1' ,
> so the following adjustments to the finish proc should make it work:
>
>
> proc finish {} {
> global ns nf *tracefile1*
> $ns flush-trace
> #Close the trace file
> close $tracefile1
> close $nf
> #Execute nam on the trace file
> exec nam out.nam &
> exit 0
> }
>
>
>
>
> On Sun, Nov 16, 2008 at 4:15 AM, kanupriya kabra <[EMAIL PROTECTED]>wrote:
>
>>
>> hi
>>
>> I am not able to collect the traces using trace-all command in NS2 (on
>> windows):
>>
>> Here is a snapshot of my file
>>
>> #Create a simulator object
>> set ns [new Simulator]
>>
>> #Open the Trace file
>> set tracefile1 [open out.tr w]
>> $ns trace-all $tracefile1
>>
>> #Open the nam trace file
>> set nf [open out.nam w]
>> $ns namtrace-all $nf
>>
>> proc finish {} {
>> global ns nf
>> $ns flush-trace
>> #Close the trace file
>> close $tracefile1
>> close $nf
>> #Execute nam on the trace file
>> exec nam out.nam &
>> exit 0
>> }
>>
>> ----rest of file
>>
>> But there is an error when I run this
>>
>> $ ns example4a.tcl
>> ns: finish: can't read "tracefile1": no such variable
>> while executing
>> "close $tracefile1"
>> (procedure "finish" line 5)
>> invoked from within
>> "finish"
>>
>> I would really appreciate if anyone could help me out with this error?
>> I am able to open the nam file using the open command but I am not able to
>> find out why tracefile1 is not getting created.
>>
>> Regards
>> Kanu
>>
>
>
>
> --
> Waleed Tuffaha.
>