Improved stats output.
authorLadislav Laska <laska@kam.mff.cuni.cz>
Thu, 13 Nov 2014 21:46:02 +0000 (22:46 +0100)
committerLadislav Laska <laska@kam.mff.cuni.cz>
Thu, 13 Nov 2014 21:46:02 +0000 (22:46 +0100)
accutool

index e6305e5497a529253f938f210f646a3a4ddcc02a..0b27ea0e93e2ce9768fc2bf49b98a54ae99546b7 100755 (executable)
--- a/accutool
+++ b/accutool
@@ -98,19 +98,24 @@ if ($raw_data ne "") {
        my $data = Text::CSV::Slurp->load( string => $raw_data );
        my $last = 0;
        my $wh = 0;
+       my $capacity = 0;
        for my $item (sort { $a->{time} > $b->{time} } @$data) {
                # Compute Watt-Hours for example
                my $units = $item->{time} - $last;
                my $incr = $item->{voltage} * $item->{current} * $units;
                $wh += $incr;
                $last = $item->{time};
+               $capacity = $item->{capacity};
        }
        $wh /= 60*60.0;
-       iprintf $wh." Wh\n";
+       iprintf "Done reading file! Here are some stats on your battery:\n";
+       iprintf "  Battery capacity    %3.2f Wh\n", $wh;
+       iprintf "        or            %3.2f Ah\n", $capacity/1000.0;
 
        # Compute average current & voltage
-       iprintf sum(map { $_->{current} } @$data)/@$data." A\n";
-       iprintf sum(map { $_->{voltage} } @$data)/@$data." V\n";
+       iprintf "  Average current     %3.2f A\n", sum(map { $_->{current} } @$data)/@$data;
+       iprintf "  Average voltage     %3.2f V\n", sum(map { $_->{voltage} } @$data)/@$data;
+       iprintf "  Total time spent    %3.2f h\n", $last/(60.0*60);
 } else {
        iprintf "No data to process.";
 }