IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 10, 2007, 3:18:44 PM (19 years ago)
Author:
eugene
Message:

applying the update to Stats.pm using dtype and new methods

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippScripts/scripts/detrend_reject_exp.pl

    r14083 r14115  
    6363   [   
    6464       #          KEYWORD                 STATISTIC          CHIPTOOL FLAG
    65        { name => "bg",             type => "mean",  flag => "-bg" },
    66        { name => "bg_mean_stdev",  type => "stdev", flag => "-bg_mean_stdev" },
    67        { name => "bg_stdev",       type => "rms",   flag => "-bg_stdev" },
     65       { name => "bg",             type => "mean",  flag => "-bg",            dtype => "float" },
     66       { name => "bg_mean_stdev",  type => "stdev", flag => "-bg_mean_stdev", dtype => "float" },
     67       { name => "bg_stdev",       type => "rms",   flag => "-bg_stdev",      dtype => "float" },
    6868   ];
    69 
     69my $stats = PS::IPP::Metadata::Stats->new($STATS); # Stats parser
     70
     71# these stats are used it the rejections but not passed to the database
     72# there is some duplication with the above, but the calculation time is minimal
    7073my $REJSTATS =
    7174   [   
    7275       #          KEYWORD                 STATISTIC          CHIPTOOL FLAG
    73        { name => "bg",             type => "mean",   flag => "ensMeanMean" },
    74        { name => "bg",             type => "stdev",  flag => "ensMeanStdev" },
    75        { name => "bg_mean_stdev",  type => "mean",   flag => "ensMeanStdevMean" },
    76        { name => "bg_mean_stdev",  type => "stdev",  flag => "ensMeanStdevStdev" },
    77        { name => "bg_stdev",       type => "mean",   flag => "ensStdevMean" },
    78        { name => "bg_stdev",       type => "stdev",  flag => "ensStdevStdev" },
     76       { name => "bg",             type => "mean",  flag => "ensMeanMean",       dtype => "float" },
     77       { name => "bg",             type => "stdev", flag => "ensMeanStdev",      dtype => "float" },
     78       { name => "bg_mean_stdev",  type => "mean",  flag => "ensMeanStdevMean",  dtype => "float" },
     79       { name => "bg_mean_stdev",  type => "stdev", flag => "ensMeanStdevStdev", dtype => "float" },
     80       { name => "bg_stdev",       type => "mean",  flag => "ensStdevMean",      dtype => "float" },
     81       { name => "bg_stdev",       type => "stdev", flag => "ensStdevStdev",     dtype => "float" },
    7982   ];
     83my $rejstats = PS::IPP::Metadata::Stats->new($REJSTATS); # Stats parser
    8084
    8185# Look for programs we need
     
    112116
    113117    # Parse the statistics on the residual image
    114     my $stats = PS::IPP::Metadata::Stats->new($STATS); # Stats parser
    115118    $stats->parse($metadata) or &my_die("Unable to find all values in statistics output.", $det_id, $iter, $PS_EXIT_PROG_ERROR);
    116119
    117120    # Parse the statistics for rejections
    118     my $rejstats = PS::IPP::Metadata::Stats->new($REJSTATS); # Stats parser
    119121    $rejstats->parse($metadata) or &my_die("Unable to find all values in statistics output.", $det_id, $iter, $PS_EXIT_PROG_ERROR);
    120122}
    121123
    122124# we use the statistics of the ensemble to accept/reject exposurs
    123 my $ensMeanMean       = &STATS_value_for_flag ($REJSTATS, "ensMeanMean");     
    124 my $ensMeanStdev      = &STATS_value_for_flag ($REJSTATS, "ensMeanStdev");     
    125 my $ensMeanStdevMean  = &STATS_value_for_flag ($REJSTATS, "ensMeanStdevMean");
    126 my $ensMeanStdevStdev = &STATS_value_for_flag ($REJSTATS, "ensMeanStdevStdev");
    127 my $ensStdevMean      = &STATS_value_for_flag ($REJSTATS, "ensStdevMean");     
    128 my $ensStdevStdev     = &STATS_value_for_flag ($REJSTATS, "ensStdevStdev");   
     125my $ensMeanMean       = $rejstats->value_for_flag ("ensMeanMean");     
     126my $ensMeanStdev      = $rejstats->value_for_flag ("ensMeanStdev");     
     127my $ensMeanStdevMean  = $rejstats->value_for_flag ("ensMeanStdevMean");
     128my $ensMeanStdevStdev = $rejstats->value_for_flag ("ensMeanStdevStdev");
     129my $ensStdevMean      = $rejstats->value_for_flag ("ensStdevMean");     
     130my $ensStdevStdev     = $rejstats->value_for_flag ("ensStdevStdev");   
    129131
    130132$ipprc->define_camera($camera);
     
    283285$command .= " -dbname $dbname" if defined $dbname;
    284286$command .= " -again" unless $stop;
    285 
    286 # add in the elements from the selected stats above
    287 foreach my $entry (@$STATS) {
    288     my $value = $entry->{value};
    289     my $flag = $entry->{flag};
    290     $command .= " $flag $value";
    291 }
     287$command .= $stats->cmdflags();
    292288
    293289# Put results into the database
     
    347343}
    348344
    349 sub STATS_value_for_flag
    350 {
    351     my $STATS = shift;
    352     my $flag  = shift;
    353 
    354     foreach my $entry (@$STATS) {
    355         if ($flag eq $entry->{flag}) {
    356             return $entry->{value};
    357         }
    358     }
    359     return 'NAN';
    360 }
    361 
    362345__END__
Note: See TracChangeset for help on using the changeset viewer.