Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- use strict;
- # use Data::Dumper;
- sub max {
- my ($a, $b) = @_;
- if ($a >= $b) {
- return $a;
- }
- else {
- return $b;
- }
- }
- my %sims;
- my $sim_num = -1;
- my $centrality = "";
- my $num_vaccines = -1;
- my $day = -1;
- while (<>) {
- if (/Simulation \#(\d+) \((.+)\) \((\d+) vaccines\)/) {
- $sim_num = $1;
- $centrality = $2;
- $num_vaccines = $3;
- }
- elsif (/^Day (\d+)$/) {
- $day = $1;
- }
- elsif (/^(\d+) \(([0-9.]+)%\) (.+)\.$/) {
- $sims{$num_vaccines}{$centrality}{$day}{$3} += ($2 + 0.0);
- }
- }
- #print Dumper(\%sims);
- $sim_num++;
- #print("$sim_num\n");
- my @states = ("susceptible", "latent", "infected", "recovered");
- my @centralities = ("Out-Degree centrality", "Eigenvector centrality", "In-Degree centrality", "Random centrality");
- foreach my $vn (keys %sims) {
- print "$vn";
- foreach my $c (@centralities) {
- my $peak = -1;
- foreach my $d (keys %sims{$vn}{$c}) {
- $peak = max($peak,$sims{$vn}{$c}{$d}{"infected"});
- }
- print(" $max");
- }
- print("\n");
- }
- ## The errors
- # syntax error at cdvn-abbrev-gnuplot.pl line 46, near "%sims{"
- # Global symbol "$c" requires explicit package name at cdvn-abbrev-gnuplot.pl line 46.
- # syntax error at cdvn-abbrev-gnuplot.pl line 46, near "}) "
- # Global symbol "$peak" requires explicit package name at cdvn-abbrev-gnuplot.pl line 47.
- # Global symbol "$peak" requires explicit package name at cdvn-abbrev-gnuplot.pl line 47.
- # Global symbol "$c" requires explicit package name at cdvn-abbrev-gnuplot.pl line 47.
- # Global symbol "$d" requires explicit package name at cdvn-abbrev-gnuplot.pl line 47.
- # syntax error at cdvn-abbrev-gnuplot.pl line 47, near "})"
- # Execution of cdvn-abbrev-gnuplot.pl aborted due to compilation errors.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement