Changeset 41754
- Timestamp:
- Aug 5, 2021, 7:21:39 AM (5 years ago)
- File:
-
- 1 edited
-
trunk/ippScripts/scripts/night_report.pl (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippScripts/scripts/night_report.pl
r41613 r41754 31 31 32 32 # database connection information: 33 $dbhost = ' scidbm';33 $dbhost = 'ippdb05'; 34 34 $dbname = 'gpc1' unless defined $dbname; 35 35 $dbuser = 'ippuser'; … … 372 372 print "--- IPP Report for $dbname : $date ---\n\n"; 373 373 374 375 376 ### testing the diff grouping -- this does not work for the Euclid data taken 2018.07.29 because the OBJECT377 ### field is missing378 if (0) {379 print "Expected number of WWdiffs excluding camRuns with bad quality:\n";380 print "NOTE: multiple exposures with same comment string (xyz visit a) are treated as 1 exposure\n";381 382 # my $query = "SELECT Nvisit, count(*) FROM";383 # $query .= " (";384 my $query = " SELECT object, filter, chunk, count(*) as Nvisit FROM";385 $query .= " (";386 $query .= "SELECT object, filter, comment, 'S', substr(comment, 1, position(' ' in comment)) as chunk, 'E'";387 $query .= " FROM rawExp";388 $query .= " LEFT JOIN chipRun using (exp_id)";389 $query .= " LEFT JOIN camRun using (chip_id)";390 $query .= " LEFT JOIN camProcessedExp using (cam_id)";391 $query .= " WHERE dateobs LIKE '$date%'";392 $query .= " AND exp_id > $refExpID"; #REF393 $query .= " AND exp_type = 'OBJECT'";394 $query .= " AND obs_mode NOT LIKE 'ENGINEERING'";395 $query .= " AND (obs_mode like '%SS%' or obs_mode like 'BRIGHT')";396 $query .= " AND rawExp.comment like '%visit%'";397 $query .= " AND (camProcessedExp.quality IS NULL or camProcessedExp.quality = 0)";398 # $query .= " GROUP BY comment, filter, substr(comment, 1, position(' ' in comment))";399 $query .= " ) AS tableChunks GROUP BY object, filter, chunk";400 # $query .= " ) AS tableVisits GROUP BY Nvisit";401 402 my $result = &mysql_select ($query);403 &mysql_dump_result ($result);404 die;405 406 $diffExpect = 0;407 while (@row = $result->fetchrow_array()) {408 # printf "%8s %15s : ", $row[0], $row[1]; # c, count(*)409 if ($row[0] == 1) {410 if ($row[1] == 1) { $verb = "tuple has"; } else { $verb = "tuples have"; }411 printf "%3d %-11s 1 visit, no WWdiffs\n", $row[1], $verb;412 } elsif ($row[0] == 2) {413 if ($row[1] == 1) { $verb = "tuple has"; } else { $verb = "tuples have"; }414 printf "%3d %-11s 2 visits, expect $row[1] WWdiff(s)\n", $row[1], $verb;415 $diffExpect += $row[1];416 } elsif ($row[0] == 3) {417 if ($row[1] == 1) { $verb = "tuple has"; } else { $verb = "tuples have"; }418 printf "%3d %-11s 3 visits, expect %d WWdiffs (2 per tuple)\n", $row[1], $verb, 2 * $row[1];419 $diffExpect += $row[1]*2;420 } elsif ($row[0] == 4) {421 if ($row[1] == 1) { $verb = "tuple has"; } else { $verb = "tuples have"; }422 printf "%3d %-11s 4 visits, expect %d WWdiffs (2 per tuple)\n", $row[1], $verb, 2 * $row[1];423 $diffExpect += $row[1]*2;424 } else {425 # print "I don't understand, there are more visits than I expect\n";426 if ($row[1] == 1) { $verb = "tuple has"; } else { $verb = "tuples have"; }427 if ($row[0] % 2) { $Ndiffs = int($row[0] / 2) + 1; } else { $Ndiffs = int($row[0] / 2); }428 printf "%3d %-11s %d visits, expect %d WWdiffs (2 per quad)\n", $row[1], $verb, $row[0], $Ndiffs;429 $diffExpect += $Ndiffs;430 }431 }432 print "\n";433 print " * $diffExpect diffRuns expected *\n";434 if ($verbose) { print "\n"; }435 436 die;437 }438 374 ###################### 439 375 … … 593 529 } 594 530 $query .= " GROUP BY diff_id"; 531 595 532 my $result5 = &mysql_select ($query); 596 533 #@row5 = $result5->fetchrow_array(); … … 610 547 my $result6 = &mysql_select ($query2); 611 548 while (@row6 = $result6->fetchrow_array()) { 549 #printf("%6s,%2s,%2s,%2s,%2s, %3d %3d %3d %3d\n",$row5[0],$row6[0],$row6[1],$row6[2],$row6[3],$NWSdiffgood,$NWSdiffbad,$NWSdiffdist1,$NWSdiffdist2); 612 550 #if all skycells have bad quality, this is a bad diff. If all the skycells are in a full state in publishRun, it is fully published 613 551 if ($row6[1]<$row6[0]) {$NWSdiffgood ++;} … … 819 757 $query .= " AND obs_mode NOT LIKE 'ENGINEERING'"; 820 758 $query .= " AND (obs_mode LIKE '%SS%' OR obs_mode LIKE '%BRIGHT%')"; 759 $query .= " AND rawExp.comment NOT LIKE '%XSS%'"; 821 760 $query .= " AND rawExp.comment like '%visit%'"; 822 761 $query .= " AND (camProcessedExp.quality IS NULL or camProcessedExp.quality = 0)"; … … 1041 980 $query .= " AND label NOT LIKE '%WS.nigh%'"; 1042 981 $query .= " AND label NOT LIKE 'goto_cleaned'"; 982 $query .= " AND label NOT LIKE '%test%'"; 1043 983 $query .= " AND (quality IS NULL OR quality = 0)"; 1044 984 $query .= " GROUP BY label, state, diff_id"; … … 1046 986 1047 987 my $result = &mysql_select ($query); 1048 1049 988 @row = $result->fetchrow_array(); 1050 989 if (not $report) { printf " * %d diffRuns can be published * (has at least 1 skycell with quality = 0 or quality is NULL)\n", $row[0]; } … … 1222 1161 $query .= " AND (camProcessedExp.quality = 0)"; 1223 1162 $query .= " AND (comment NOT LIKE '%twilight%')"; 1163 $query .= " AND (comment NOT LIKE '%XSS%')"; 1224 1164 $query .= " ) AS expall"; 1225 1165 $query .= " LEFT JOIN"; … … 1250 1190 while (@row = $result->fetchrow_array()) { 1251 1191 if ($doHeader) { 1252 print "Unpublished Solar System Exposures WW diffs (obs_mode like %SS% or obs_mode like %BRIGHT% ) with good camera quality :\n";1192 print "Unpublished Solar System Exposures WW diffs (obs_mode like %SS% or obs_mode like %BRIGHT%, excluding XSS) with good camera quality :\n"; 1253 1193 printf "%12s %12s %12s | %-19s | %-16s\n", "exp_name", "warp_id", "diff_id", "dateobs", "comment"; 1254 1194 $doHeader = 0; … … 1259 1199 } 1260 1200 } 1261 print "\n \n";1201 print "\n"; 1262 1202 1263 1203 # count the number of exposures per chunk, determine expected diffRuns:
Note:
See TracChangeset
for help on using the changeset viewer.
