LOPES Data
LOPES-30 DAQ Status
Status of the LOPES data acquisition - including thunderstorm mode - at the KIT
Password required
LOPES Thunderstorm trigger
Extra page to show present static electric field at KIT with indication of thunderstorm mode for the LOPES DAQ
Password required
Data Browser
<php>
global $ldircont, $tdircont, $dynspecdir, $dynthmbdir, $skipintro, $ID; $dynspecdir = "/users/staf/anigl/public_html/lopes_daily_dynspec"; $dynthmbdir = "/mnt/public/www/html/lopes/data/media/browsedata/dynspec/"; $basedir = "/var/www/html/lopes/";
function showitem($year, $month, $day) { global $ldircont, $tdircont, $dynspecdir, $dynthmbdir;
$monstr = date("ym", mktime(0,0,0,$month,1,$year)); $daystr = date("ymd", mktime(0,0,0,$month,$day,$year)); if (preg_match("/$monstr/", $daystr)) { $tfiles = preg_grep("/ds_($daystr)_/", $tdircont); $lfiles = preg_grep("/ds_($daystr)_/", $ldircont); $lfiles = preg_grep("/thumbs/", $lfiles, PREG_GREP_INVERT); echo '<table class="dynspec" cellspacing="0"><tr><td>'; if (current($lfiles) && is_readable($dynspecdir."/".current($lfiles))) { echo '<a href="/~anigl/lopes_daily_dynspec/'.current($lfiles).'">'; if (current($tfiles) && is_readable($dynthmbdir."/".current($tfiles))) { echo '<img style="width: 95px; height: 100px;" src="/lopes/lib/exe/fetch.php?media=browsedata:dynspec:'.current($tfiles).'" alt="Preview">'; } else { $base = preg_split("/\//", current($lfiles)); $base = preg_split("/\./", end($base)); exec("/usr/bin/convert -crop 798x894+260+168 ".$dynspecdir."/".current($lfiles)." ".$dynthmbdir."/".$base[0].".png", $return, $error); exec("/usr/bin/mogrify -resize 95x100 ".$dynthmbdir."/".$base[0].".png", $return, $error); if ($error > 0) { echo '<img style="width: 95px; height: 100px;" src="/lopes/lib/exe/fetch.php?media=browsedata:no-preview.png" alt="'.$error.'">'; } else { echo '<img style="width: 95px; height: 100px;" src="/lopes/lib/exe/fetch.php?media=browsedata:dynspec:'.$base[0].'.png" alt="Preview">'; } } echo '</a>'; } else { echo '<img style="width: 95px; height: 100px;" src="/lopes/lib/exe/fetch.php?media=browsedata:no-data.png" alt="No data">'; } echo '</td></tr><tr><td>'; echo date("Y-m-d", mktime(0, 0, 0, $month, $day, $year)).'</td></tr><tr><td style="height: 12px;"></td></tr></table>'; } }
function showyear($year) { global $ldircont, $tdircont, $dynspecdir, $dynthmbdir, $ID;
if (mktime(0, 0, 0, 1, 1, $year) == -1) { genintro(); return; } echo '<div class="bar-bottom" style="border-top: none;">'; tpl_link(wl($ID),'Overview'); tpl_link(wl($ID,'date='.date("Y", mktime(0,0,0,1,1,$year-1))),date("Y", mktime(0,0,0,1,1,$year-1)).' (Previous)'); tpl_link(wl($ID,'date='.date("Y", mktime(0,0,0,1,1,$year+1))),date("Y", mktime(0,0,0,1,1,$year+1)).' (Next)'); echo '</div>'; echo ' <h2>Dynamic spectra for '.$year.'</h2> <p>These are the dynamic spectra for '.$year.'. '; for ($month = 1; $month < 13; $month ++) { $cnt = 0; $monstr = date("ym", mktime(0,0,0,$month,1,$year)); for ($day = 1; $day < 32; $day ++) { $daystr = date("ymd", mktime(0,0,0,$month,$day,$year)); if (count(preg_grep("/ds_($daystr)_/", $ldircont)) > 0) { $cnt ++; } } echo '<p><table><tr><td style="width: 150px; padding: 0px; margin: 0px;">'; tpl_link(wl($ID,'date='.date("Ym", mktime(0,0,0,$month,1,$year))),date("F", mktime(0,0,0,$month,1,$year))); echo '</a></td><td>('.$cnt.' spectra in archive)</td></tr></table></p> '; } echo ' </p> '; }
function showmonth($mstr) { global $ldircont, $tdircont, $dynspecdir, $dynthmbdir, $skipintro, $ID;
preg_match("/(....)(..)/", $mstr, $date); if (! $skipintro && mktime(0, 0, 0, $date[2], 1, $date[1]) == -1) { genintro(); return; } echo '<div class="bar-bottom" style="border-top: none;">'; tpl_link(wl($ID,'date='.date("Y", mktime(0,0,0,1,1,$date[1]))),$date[1].' Overview'); tpl_link(wl($ID,'date='.date("Ym", mktime(0,0,0,$date[2]-1,1,$date[1]))),date("F Y", mktime(0,0,0,$date[2]-1,1,$date[1])).' (Previous)'); tpl_link(wl($ID,'date='.date("Ym", mktime(0,0,0,$date[2]+1,1,$date[1]))),date("F Y", mktime(0,0,0,$date[2]+1,1,$date[1])).' (Next)'); echo '</div>'; if (! $skipintro) echo ' <h2>Dynamic spectra for '.date("F Y", mktime(0, 0, 0, $date[2], 1, $date[1])).'</h2> <p> '; for ($day = 1; $day < 32; $day ++) { showitem($date[1], $date[2], $day); }
if (! $skipintro) echo '</p>';
}
function showday($dstr) { global $ldircont, $tdircont, $dynspecdir, $dynthmbdir, $ID;
preg_match("/(....)(..)(..)/", $dstr, $date); if (mktime(0, 0, 0, $date[2], $date[3], $date[1]) == -1) { genintro(); return; } echo '<div class="bar-bottom" style="border-top: none;">'; tpl_link(wl($ID,date("Ym", mktime(0,0,0,$date[2],1,$date[1]))),date("F Y", mktime(0,0,0,$date[2],1,$date[1])).' Overview'); tpl_link(wl($ID,date("Ymd", mktime(0,0,0,$date[2],$date[3]-1,$date[1]))),date("Y-m-d", mktime(0,0,0,$date[2],$date[3]-1,$date[1])).' (Previous)'); tpl_link(wl($ID,date("Ymd", mktime(0,0,0,$date[2],$date[3]+1,$date[1]))),date("Y-m-d", mktime(0,0,0,$date[2],$date[3]+1,$date[1])).' (Next)'); echo '</div>'; echo ' <h2>Dynamic spectrum for '.date("j F Y", mktime(0, 0, 0, $date[2], $date[3], $date[1])).'</h2> <p> ';
}
function genintro() { global $skipintro, $navbar, $ID;
echo ' <p> From every Cosmic Ray event file generated in LOPES, a total frequency spectrum is generated as well. Every night, the spectra from one day are packed together into a <em>dynamic spectrum</em>, which provides useful information on external circumstances like Solar bursts, man-made interference sources, and hardware defects. </p><p>'; tpl_link(wl($ID.':dynamic_spectra'),"Learn more about dynamic spectra..."); echo '</p> <h2>Recent data</h2> <p> '; for ($day = 15; $day > 1; $day --) { $time = mktime(0,0,0,date("m"),date("d")-$day,date("Y")); showitem(date("Y", $time), date("m", $time), date("d", $time)); } echo '</p>';
$skipintro = true; echo ' <h2>Browse Archive</h2> <p><ul><li>'; tpl_link(wl($ID,'date='.date("Y")),date("Y").' Data'); echo "</li><li>\n"; tpl_link(wl($ID,'date='.(date("Y")-1)),(date("Y")-1).' Data'); echo "</li><li>\n"; tpl_link(wl($ID,'date='.(date("Y")-2)),(date("Y")-2).' Data'); echo "</li></ul></p>"; echo '<h2>Daily Logbook</h2>
<p> A list of CR data amount (disk space, files, antennae) per year, month and day can be found in the <a class=“extlink” href=“http://www.astro.ru.nl/anigl/datalopes.html”>Daily Logbook</a>.</p>
'; }
ob_start(); system("cd $dynspecdir; find . -not -regex '.*/\..*'"); $ldircont = preg_split("/\n/", ob_get_contents()); ob_end_clean();
ob_start(); system("cd $basedir/content/data/dynspec/thumbs; find . -not -regex '.*/\..*'"); $tdircont = preg_split("/\n/", ob_get_contents()); ob_end_clean();
if (getID('date') && preg_match("/\d+/", getID('date'), $num) && strlen($num[0]) >= 4) { switch (strlen($num[0])) { case 4: showyear($num[0]); break; case 6: showmonth($num[0]); break; case 8: showday($num[0]); break; default: genintro(); } } else { genintro(); }
</php>