mirror of
https://gitlab.com/manzerbredes/paper-lowrate-iot.git
synced 2025-05-01 01:17:46 +00:00
Add simulation scripts
This commit is contained in:
parent
39507e0bb5
commit
1da73fb609
18 changed files with 4043 additions and 2 deletions
59
ns3-simulations/parseEnergy.awk
Executable file
59
ns3-simulations/parseEnergy.awk
Executable file
|
@ -0,0 +1,59 @@
|
|||
#!/bin/awk -f
|
||||
|
||||
BEGIN {
|
||||
durationECOFEN=0
|
||||
}
|
||||
|
||||
# For ECOFEN energy model
|
||||
/Node [0-9]+ Conso/ {
|
||||
if (!($4 in energyECOFEN)){
|
||||
energyECOFEN[$4]=$6
|
||||
countECOFEN[$4]=1
|
||||
}
|
||||
else {
|
||||
energyECOFEN[$4]=$6+energyECOFEN[$4]
|
||||
countECOFEN[$4]++
|
||||
}
|
||||
durationECOFEN=$2
|
||||
}
|
||||
|
||||
# For WIFI ns-3 energy model
|
||||
/Node [0-9]+ consumes/ {
|
||||
gsub("J","",$4) # Remove trailling Joule symbol
|
||||
if (!($2 in energy)){
|
||||
energyWIFI[$2]=$4
|
||||
}
|
||||
else {
|
||||
energyWIFI[$2]=$4+energyWIFI[$2]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
END {
|
||||
# Extract ECOFEN energy
|
||||
for(key in energyECOFEN){
|
||||
if (countECOFEN[key]>0){ # Otherwise: 0 division
|
||||
overallEnergy[key]=energyECOFEN[key]/countECOFEN[key]*durationECOFEN
|
||||
}
|
||||
else {
|
||||
overallEnergy[key]=0
|
||||
}
|
||||
}
|
||||
|
||||
# Extract WIFI energy
|
||||
for(key in energyWIFI){
|
||||
if(key in overallEnergy){ # Combine WIFI+ECOFEN
|
||||
overallEnergy[key]+=energyWIFI[key] # Add wifi to ECOFEN
|
||||
}
|
||||
else {
|
||||
overallEnergy[key]=energyWIFI[key] # Only add WIFI since there is no ECOFEN value
|
||||
}
|
||||
}
|
||||
|
||||
# CSV output
|
||||
print("node,energy")
|
||||
for(key in overallEnergy){
|
||||
print(key "," overallEnergy[key])
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue