I need help
Im not able to give the input.
what is the solution for the following code: How can i give the input to the given code? [root@multicore09 ns-234-leach]# ./test Usage: wireless-demo-csci694.tcl mandatory arguments: [-x MAXX] [-y MAXY] optional arguments: [-cp conn pattern] [-sc scenario] [-nn nodes] [-seed seed] [-stop sec] [-tr tracefile] |
Hi,
First of all: Please use a descriptive thread title. Almost all the people posting here "need help" in one way or another.... Assuming that the problem is with wireless-demo-csci694.tcl the following would be better: How to use wireless-demo-csci694.tcl I see that you are trying to execute a test script, what is the content of that script? Without that info we cannot help you. I assume you are not providing the correct information, be it on the command line or in the script, as stated by the error message. Hope this helps. |
Running the "test" script will tell if everything went OK
at building ns-allinone-2.34 + the LEACH files. The instructions for a successful result is here, post #5 by @MayTamer : http://www.linuxquestions.org/questi...34-a-870368/#5 ... Please read the complete thread : More goodies. All "LEACH" threads : LQ Search : Tag = leach .. |
Hi
Hai druuna sir,
Thanks for ur reply.Still i am not able to get the output. hi knudfl sir thanks for your reply.as i have followed post#5 by @May Tamer only for installing Leach in ns2.34. I have added wireless-demo-csci694.tcl program and error.I am getting error in this file only.can u anyone help me. Program: # ====================================================================== # Default Script Options # ====================================================================== set opt(chan) Channel/WirelessChannel set opt(prop) Propagation/TwoRayGround #set opt(netif) NetIf/SharedMedia set opt(netif) Phy/WirelessPhy #set opt(mac) Mac/802_11 set opt(mac) Mac/802_11 set opt(ifq) Queue/DropTail/PriQueue set opt(ll) LL set opt(ant) Antenna/OmniAntenna set opt(x) 0 ;# X dimension of the topography set opt(y) 0 ;# Y dimension of the topography #set opt(cp) "../mobility/scene/cbr-50-20-4-512" ;# connection pattern file set opt(cp) "" set opt(sc) "../mobility/scene/scen-670x670-50-600-20-2" ;# scenario file set opt(ifqlen) 50 ;# max packet in ifq set opt(nn) 51 ;# number of nodes set opt(seed) 0.0 set opt(stop) 10.0 ;# simulation time set opt(tr) out.tr ;# trace file set opt(rp) dsdv ;# routing protocol script set opt(lm) "on" ;# log movement # ====================================================================== set AgentTrace ON set RouterTrace ON set MacTrace OFF LL set mindelay_ 50us LL set delay_ 25us LL set bandwidth_ 0 ;# not used LL set off_prune_ 0 ;# not used LL set off_CtrMcast_ 0 ;# not used Agent/Null set sport_ 0 Agent/Null set dport_ 0 Agent/CBR set sport_ 0 Agent/CBR set dport_ 0 Agent/TCPSink set sport_ 0 Agent/TCPSink set dport_ 0 Agent/TCP set sport_ 0 Agent/TCP set dport_ 0 Agent/TCP set packetSize_ 1460 Queue/DropTail/PriQueue set Prefer_Routing_Protocols 1 # unity gain, omni-directional antennas # set up the antennas to be centered in the node and 1.5 meters above it Antenna/OmniAntenna set X_ 0 Antenna/OmniAntenna set Y_ 0 Antenna/OmniAntenna set Z_ 1.5 Antenna/OmniAntenna set Gt_ 1.0 Antenna/OmniAntenna set Gr_ 1.0 # Initialize the SharedMedia interface with parameters to make # it work like the 914MHz Lucent WaveLAN DSSS radio interface Phy/WirelessPhy set CPThresh_ 10.0 Phy/WirelessPhy set CSThresh_ 1.559e-11 Phy/WirelessPhy set RXThresh_ 3.652e-10 Phy/WirelessPhy set Rb_ 2*1e6 Phy/WirelessPhy set Pt_ 0.2818 Phy/WirelessPhy set freq_ 914e+6 Phy/WirelessPhy set L_ 1.0 # ====================================================================== proc usage { $argv 0 } { puts "Usage: $argv0" puts "\tmandatory arguments:" puts "\t\t\[-x MAXX\] \[-y MAXY\]" puts "\toptional arguments:" puts "\t\t\[-cp conn pattern\] \[-sc scenario\] \[-nn nodes\]" puts "\t\t\[-seed seed\] \[-stop sec\] \[-tr tracefile\]\n" } proc getopt {$argc $argv} { global opt lappend optlist cp nn seed sc stop tr x y for {set i 0} {$i < $argc} {incr i} { set arg [lindex $argv $i] if {[string range $arg 0 0] != "-"} continue set name [string range $arg 1 end] set opt($name) [lindex $argv [expr $i+1]] } } proc cmu-trace { ttype atype node } { global ns_ tracefd if { $tracefd == "" } { return "" } set T [new CMUTrace/$ttype $atype] $T target [$ns_ set nullAgent_] $T attach $tracefd $T set src_ [$node id] $T node $node return $T } proc create-god { nodes } { global ns_ god_ tracefd set god_ [new God] $god_ num_nodes $nodes } proc log-movement {} { global logtimer ns_ ns set ns $ns_ source tcl/mobility/timer.tcl Class LogTimer -superclass Timer LogTimer instproc timeout {} { global opt node_; for {set i 0} {$i $opt(nn)} {incr i} { $node_($i) log-movement } $self sched 0.1 } set logtimer [new LogTimer] $logtimer sched 0.1 } # ====================================================================== # Main Program # ====================================================================== getopt $argc $argv # # Source External TCL Scripts # source /root/ns/ns-2.34/tcl/lib/ns-mobilenode.tcl #if { $opt(rp) != "" } { source /root/ns/ns-2.34/tcl/mobility/$opt(rp).tcl #} elseif { [catch { set env(NS_PROTO_SCRIPT) } ] == 1 } { #puts "\nenvironment variable NS_PROTO_SCRIPT not set!\n" #exit #} else { #puts "\n*** using script $env(NS_PROTO_SCRIPT)\n\n"; #source $env(NS_PROTO_SCRIPT) #} source /root/ns/ns-2.34/tcl/lib/ns-cmutrace.tcl # do the get opt again incase the routing protocol file added some more # options to look for getopt $argc $argv if { $opt(x) == 0 || $opt(y) == 0 } { usage $argv 0 exit 1 } if {$opt(seed) > 0} { puts "Seeding Random number generator with $opt(seed)\n" ns-random $opt(seed) } # # Initialize Global Variables # set ns_ [new Simulator] set chan [new $opt(chan)] set prop [new $opt(prop)] set topo [new Topography] set tracefd [open $opt(tr) w] $topo load_flatgrid $opt(x) $opt(y) $prop topography $topo # # Create God # create-god $opt(nn) # # log the mobile nodes movements if desired # if { $opt(lm) == "on" } { log-movement } # # Create the specified number of nodes $opt(nn) and "attach" them # the channel. # Each routing protocol script is expected to have defined a proc # create-mobile-node that builds a mobile node and inserts it into the # array global $node_($i) # if { [string compare $opt(rp) "dsr"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { dsr-create-mobile-node $i } } elseif { [string compare $opt(rp) "dsdv"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { dsdv-create-mobile-node $i } } elseif { [string compare $opt(rp) "leach"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { leach-create-mobile-node $i } } elseif { [string compare $opt(rp) "leach-c"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { leach-create-mobile-node $i } } elseif { [string compare $opt(rp) "stat-clus"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { leach-create-mobile-node $i } } elseif { [string compare $opt(rp) "mte"] == 0} { for {set i 0} {$i $opt(nn) } {incr i} { leach-create-mobile-node $i } } # # Source the Connection and Movement scripts # if { $opt(cp) == "" } { puts "*** NOTE: no connection pattern specified." set opt(cp) "none" } else { puts "Loading connection pattern..." source $opt(cp) } # # Tell all the nodes when the simulation ends # for {set i 0} {$i $opt(nn) } {incr i} { $ns_ at $opt(stop).000000001 "$node_($i) reset"; } $ns_ at $opt(stop).00000001 "puts \"NS EXITING...\" ; $ns_ halt" if { $opt(sc) == "" } { puts "*** NOTE: no scenario file specified." set opt(sc) "none" } else { puts "Loading scenario file..." source $opt(sc) puts "Load complete..." } puts $tracefd "M 0.0 nn $opt(nn) x $opt(x) y $opt(y) rp $opt(rp)" puts $tracefd "M 0.0 sc $opt(sc) cp $opt(cp) seed $opt(seed)" puts $tracefd "M 0.0 prop $opt(prop) ant $opt(ant)" puts "Starting Simulation..." $ns_ run I'm trying to run ./test now there is nothing on the written on the file: LEACH.out and in the leach.err errors occured. I'm trying to run ./test i am getting following error: [root@multicore09 ns-234-leach]# ./test can't read "argc": no such variable while executing "for {set i 0} {$i < $argc} {incr i} { set arg [lindex $argv $i] if {[string range $arg 0 0] != "-"} continue set name [string range $arg 1 end]..." (procedure "getopt" line 5) invoked from within "getopt $argc $argv" (file "wireless-demo-csci694.tcl" line 179) I think i have done the mistakes in argc and argv arguments.but i am not able to clear.help me. |
Does this belong to another thread? It makes no sense as it stands.
jdk |
Well Druuna does have a contribution in this thread, so probably it should be there.
As a side note, every one of this poster's posts has a bad title; 'Hi', 'I need help', etc and this does nothing to help sort out which thread is about what and for the threads to get attention from those who may be able to help. In addition, there is no use of code tags, that is, Code:
#included code |
All times are GMT -5. The time now is 04:45 PM. |