MeteoRemich
facebook twitter youtube instagram
 

Menü

El-Nino

Folgen und Auswirkungen auf Luxemburg

Beschreibung

Beim El-Nino handelt es sich um eine Verönderung von der Strömung im Pazifik in Nähe des Equators. Bei einem El-Nino Phänomen erwärmt sich das Wasser schlagartig. An manchen stellen steigen die Temperaturen bis zu 6 Grad an. Kommt es auf einer definierten Fläche zu einer Erwärmung von mindestens 0,5 Grad, spricht man von einem El-Nino. Kühlt sich das Wasser schlagartig ab, nennt man dies La-Nina.

Ein Beispiel des El Nino 1997

Vergangene El-Ninos

Stark Extrem
1957-58 1982-83
1965-66 1997-98
1972-73 2015-16
Diese Jahre werden dann auch für die Analyse benutzt.

Temperaturen und deren Anomalien

Jahressicht
Jahresdurchschnitt Jahresabweichung
6,5 Grad -0,3 bis -0,45 Grad
Übersicht Frühling
Durchschnitt Abweichung
5,5 Grad -0,6 bis -0,7 Grad
Übersicht Sommer
Durchschnitt Abweichung
13 Grad -0,6 Grad
Übersicht Herbst
Durchschnitt Abweichung
7 Grad -0,3 bis -0,5 Grad

Fazit : Während bzw. nach einem starken El-Nino kommt es bei uns in der Region zu niedrigeren Temperaturen als sonst. Ob dies aber alleine durch ein El-Nino-Ereignisse entstehen kann man nicht 100% sagen. Auch die Regel "Ausnahmen bestätigen die Regel" sollte man nicht ausser Acht lassen.

Niederschlag und deren Anomalien

Jahressicht
Jahresdurchschnitt Jahresabweichung
2,6 bis 3,3 mm/day ~ 950 bis 1200 l/m2 0,3 bis 0,6 mm/day ~ 110 bis 220 l/m2
Übersicht Frühling
Durchschnitt Abweichung
2,7 bis 3,3 mm/day ~ 240 bis 300 l/m2 0,45 bis 0,75 mm/day ~ 40 bis 70 l/m2
Übersicht Sommer
Durchschnitt Abweichung
3,75 bis 4,75 mm/day 330 bis 430 l/m2 0,8 bis 1,2 mm/day 70 bis 100 l/m2
Übersicht Herbst
Durchschnitt Abweichung
1,75 bis 1,8 mm/day ~ 150 bis 160 l/m2 0,2 bis 0,4 mm/day ~ 15 bis 40 l/m²
Durch mehr Niederschlag waren die Böden auch nasser.

Katastrophen während eines starken El-Ninos

Hochwasser April & Mai 1983

Am 12.ten April 1983 und am 28.ten Mai 1983 kam es jeweils zu einem sehr starken Rekordhochwasser an der Mosel. Mit 823cm und 796cm waren es mit Abstand die stärksten Hochwassersituationen nach der Kanalisierung der Mosel. Zwischen dem ersten März und 31 Mai 1983 kamen in Luxemburg 380 bis 430 mm herunter was rund 180 mm mehr waren als sonst. Verbunden mit noch stärkerem Regen in der Vogesen und einer verbundenen Schneeschmelze, stiegen die Flüsse öfters übers Ufer. An sehr vielen Pegeln wurden Rekordhochstände gemessen.

    2111926199)) && (strtolower($tstamp) != "now")) { $returner = false; } else { include ($path_to_icao_db."moon.inc.php"); $starter = 0; if (strtolower($tstamp) == "now") { $starter = 445; $tstamp = mktime(); } for ($a=$starter;$a $tstamp) { $returner["next"] = $lunstamp[$a]; $returner["last"] = $lunstamp[($a-1)]; break; } } } return $returner; } function sunRiseSet($tag,$mon,$year,$breite,$northSouth,$laenge,$westEast,$timez) { $bogenbreite = pi(void)*$breite/180; if (strtolower($westEast)=="w") $laenge = -$laenge; if (strtolower($northSouth)=="s") $bogenbreite = -$bogenbreite; $daynum = juliantojd($mon,$tag,$year) - juliantojd(1,1,$year) + 1; $zeitgleichung = -0.1752*sin(0.033430*$daynum+0.5474)-0.1340*sin(0.018234*$daynum-0.1939); $deklination = 0.40954*sin(0.0172*($daynum-79.35)); if ((abs((sin(-0.0145)-sin($bogenbreite)*sin($deklination))/(cos($bogenbreite)*cos($deklination))) <= 1) && checkdate($mon, $tag, $year)) { $zeitdifferenz = 12*acos((sin(-0.0145)-sin($bogenbreite)*sin($deklination))/(cos($bogenbreite)*cos($deklination)))/pi(void); $sunRiseOrt = 12 - $zeitdifferenz - $zeitgleichung; // Ortszeit ist Sonnenzeit! $sunSetOrt = 12 + $zeitdifferenz - $zeitgleichung; $sunRiseLocal = $sunRiseOrt - $laenge/15 + $timez; // Local ist echte Lokale Zeit $sunSetLocal = $sunSetOrt - $laenge/15 + $timez; $sunRiseGMT = $sunRiseOrt - $laenge/15; // GMT Zeit $sunSetGMT = $sunSetOrt - $laenge/15; $minutesOfRiseLocal = round(($sunRiseLocal-floor($sunRiseLocal))*60); $minutesOfSetLocal = round(($sunSetLocal-floor($sunSetLocal))*60); $minutesOfRiseGMT = round(($sunRiseGMT-floor($sunRiseGMT))*60); $minutesOfSetGMT = round(($sunSetGMT-floor($sunSetGMT))*60); $returner["risestamp"] = gmmktime(floor($sunRiseGMT),$minutesOfRiseGMT,0,$mon,$tag,$year); $returner["setstamp"] = gmmktime(floor($sunSetGMT), $minutesOfSetGMT, 0,$mon,$tag,$year); if ($minutesOfRiseLocal<10) $minutesOfRiseLocal = "0" . $minutesOfRiseLocal; if ($minutesOfSetLocal<10) $minutesOfSetLocal = "0" . $minutesOfSetLocal; $returner["sunrise"] = floor($sunRiseLocal) . ":" . $minutesOfRiseLocal; $returner["sunset"] = floor($sunSetLocal) . ":" . $minutesOfSetLocal; } else { $returner = false; } return $returner; } function getIcaoTimeZone($ICAO) { if ($stationInfo = getStationInfo($ICAO)) { $gmttime = 1*$stationInfo["gmttime"]; $returner = getTimeZone($gmttime); } else { $returner = false; } return $returner; } function getTimeZone($gmtRelatedTimezone) { $gmtRelatedTimezone = 1*$gmtRelatedTimezone; $gmtRelatedTimezone = str_replace(".",",",$gmtRelatedTimezone); $timeZone["12"] = "NZST; New Zealand Standard Time"; $timeZone["11,5"] = "NFT; Norfolk (Island) Standard Time"; $timeZone["11"] = "SBT; Solomon Islands Standard Time"; $timeZone["10"] = "AEST; Australian Eastern Standard Time"; $timeZone["9,5"] = "ACST; Australian Central Standard Time"; $timeZone["9"] = "JST; Japan Standard Time"; $timeZone["8"] = "AWST; Australian Western Standart Time; "; $timeZone["7"] = "ICT; Indochina Standard Time"; $timeZone["6,5"] = "MMT; Myanmar Standard Time"; $timeZone["6"] = "LKT; (Sri) Lanka Standard Time"; $timeZone["5,75"] = "NTZ; Nepal Standard Time Zone"; $timeZone["5,5"] = "IST; Indian Standard Time"; $timeZone["5"] = "IOT; British Indian Ocean Territory Standard Time"; $timeZone["4,5"] = "AFT; Afghanistan Standard Time"; $timeZone["4"] = "UAE; United Arab Emirates Standard Time"; $timeZone["3,5"] = "MET; Teheran Standard Time"; $timeZone["3"] = "MSK; Moscow Standard Time"; $timeZone["2"] = "EET; Eastern Europe Standard Time"; $timeZone["1"] = "CET; Central European Standard Time"; $timeZone["0"] = "GMT; Greenwich Mean Time"; $timeZone["-1"] = "ATZ; Azores Standard Time"; $timeZone["-2"] = "VTZ; Greenland Eastern Standard Time"; $timeZone["-3"] = "EBT; Eastern Brazilian Standard Time"; $timeZone["-3,5"] = "NST; Newfoundland Standard Time"; $timeZone["-4"] = "AST; Atlantic Standart Time"; $timeZone["-5"] = "EST; Eastern Standard Time"; $timeZone["-6"] = "CST; Central Standard Time"; $timeZone["-7"] = "MST; Mountain Standart Time"; $timeZone["-8"] = "PST; Pacific Standart Time"; $timeZone["-9"] = "AKST; Alaska Standart Time"; $timeZone["-9,5"] = "?; Îles Marquises Standard Time"; $timeZone["-10"] = "HST; Hawaiian Standart Time"; $timeZone["-11"] = "SST; Samoa Standart Time"; $returner = $timeZone[$gmtRelatedTimezone]; if ($returner == "") $returner = false; return $returner; } function readCountrys() { global $path_to_icao_db; include ($path_to_icao_db."countries.inc.php"); return $country; } function numberPrefix($item) { $item = round(10*($item/10-floor($item/10))); if ($item == 1) { $returner = "st"; } else if ($item == 2) { $returner = "nd"; } else if ($item == 3) { $returner = "rd"; } else { $returner = "th"; } return $returner; } function clearTAF($tafcode) { $tafcode=rawurldecode($tafcode); $tafcode=str_replace("\r"," ",$tafcode); $tafcode=str_replace("\n"," ",$tafcode); $tafcode=str_replace("=","",$tafcode); $tafcode=str_replace("BECMG"," BECMG ",$tafcode); $tafcode=str_replace("TEMPO"," TEMPO ",$tafcode); $tafcode=str_replace("PROB"," PROB",$tafcode); $tafcode=str_replace("NSW"," NSW ",$tafcode); $tafcode=str_replace("CAVOK"," CAVOK ",$tafcode); $tafcode=str_replace("NOSIG"," NOSIG ",$tafcode); $tafcode=str_replace("NSC"," NSC ",$tafcode); $tafcode=str_replace("KT","KT ",$tafcode); $tafcode=str_replace("MPS","MPS ",$tafcode); $tafcode=str_replace("KMH","KMH ",$tafcode); $tafcode=str_replace("SKC"," SKC",$tafcode); $tafcode=str_replace("CLR"," CLR",$tafcode); $tafcode=str_replace("FEW"," FEW",$tafcode); $tafcode=str_replace("SCT"," SCT",$tafcode); $tafcode=str_replace("BKN"," BKN",$tafcode); $tafcode=str_replace("OVC"," OVC",$tafcode); $tafcode=str_replace("TAF"," TAF ",$tafcode); $tafcode=str_replace("METAR"," METAR ",$tafcode); $tafcode=str_replace("RTD"," RTD",$tafcode); $tafcode=str_replace("VRB"," VRB",$tafcode); $tafcode=str_replace("CB ","CB ",$tafcode); $tafcode=str_replace("TCU","TCU ",$tafcode); $tafcode=str_replace("Q"," Q",$tafcode); $tafcode=str_replace("QNH"," QNH",$tafcode); $tafcode=str_replace("WS"," WS ",$tafcode); $tafcode=str_replace("LDG"," LDG ",$tafcode); $tafcode=str_replace("RWY"," RWY",$tafcode); $tafcode=str_replace("TKOF"," TKOF ",$tafcode); $tafcode=str_replace("VV"," VV",$tafcode); $tafcode=str_replace("+"," +",$tafcode); $tafcode=str_replace("-"," -",$tafcode); $ktpos=0; while ($ktpos=strpos("$tafcode ","KT",($ktpos+2))) { if (substr($tafcode,($ktpos-3),1)=="G") { $tafcode = substr($tafcode,0,($ktpos-8)) . " " . substr($tafcode,($ktpos-8)); } else { $tafcode = substr($tafcode,0,($ktpos-5)) . " " . substr($tafcode,($ktpos-5)); } } $tafcode=trim($tafcode); while (strpos($tafcode," ")) { $tafcode=str_replace(" "," ",$tafcode); } $tafItemArray=explode(" ",$tafcode); for ($a=0;$a 12) { $aktualhour-=12; $ampm="PM"; } $returner = "this month´s " . (1*substr($tafItemArray[$a],0,2)) . numberPrefix(substr($tafItemArray[$a],0,2)) . ", "; $returner.= $aktualhour . ":" . substr($tafItemArray[$a],4,2) . " $ampm GMT"; } else { $returner = (1*substr($tafItemArray[$a],0,2)) . ". dieses Monats, "; $returner.= substr($tafItemArray[$a],2,2) . ":" . substr($tafItemArray[$a],4,2) . " GMT"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getValidTime($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $fromHour-=12; $ampmFrom="PM"; } if ($toHour > 12) { $toHour-=12; $ampmTo="PM"; } $returner = "this month´s " . (1*substr($tafItemArray[$a],0,2)) . numberPrefix(substr($tafItemArray[$a],0,2)) . ", "; $returner.= "$fromHour:00 $ampmFrom to $toHour:00 $ampmTo GMT $toNextDay"; } else { $toNextDay = str_replace("next day", "nächster Tag", $toNextDay); $returner = (1*substr($tafItemArray[$a],0,2)) . ". dieses Monats "; $returner.= "$fromHour:00 bis $toHour:00 GMT $toNextDay"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getShortValidTime($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $fromHour-=12; $ampmFrom="PM"; } if ($toHour > 12) { $toHour-=12; $ampmTo="PM"; } $returner.= "$fromHour:00 $ampmFrom to $toHour:00 $ampmTo GMT $toNextDay"; } else { $toNextDay = str_replace("next day", "nächster Tag", $toNextDay); $returner.= "$fromHour:00 bis $toHour:00 GMT $toNextDay"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getFmTime($tafcode, $lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $hour-=12; $ampm="PM"; } $returner.= "$hour:$minutes $ampm GMT"; } else { $returner.= "$hour:$minutes GMT"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function windBeaufort($item) { $beaufort[]=0; $beaufort[]=1; $beaufort[]=4; $beaufort[]=7; $beaufort[]=11; $beaufort[]=16; $beaufort[]=22; $beaufort[]=28; $beaufort[]=34; $beaufort[]=41; $beaufort[]=48; $beaufort[]=56; $beaufort[]=64; for ($a=0;$a<=12;$a++) { if ($item >= $beaufort[$a]) $windbeauf=$a; } return $windbeauf; } function windRose($item) { $winddir[]="N"; $winddir[]="NNE"; $winddir[]="NE"; $winddir[]="ENE"; $winddir[]="E"; $winddir[]="ESE"; $winddir[]="SE"; $winddir[]="SSE"; $winddir[]="S"; $winddir[]="SSW"; $winddir[]="SW"; $winddir[]="WSW"; $winddir[]="W"; $winddir[]="WNW"; $winddir[]="NW"; $winddir[]="NNW"; $winddir[]="N"; return $winddir[round($item*16/360)]; } function getWind($tafcode) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a0) && ($dewpoint>0)) { $ssdTemp=pow(10,((7.5*$temperature)/(237.3+$temperature))); $ssdDew=pow(10,((7.5*$dewpoint)/(237.3+$dewpoint))); return round(100*$ssdDew/$ssdTemp); } else { return false; } } else { return false; } } function getTafTemp($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $returner["time"] -= 12; $ampm="PM"; } $returner["time"] .= ":00 $ampm"; } else { $returner["time"] .= ":00"; } $returner["time"] .= " GMT"; break; } } if (isset($returner)) { return $returner; } else { return false; } } function getPressure($tafcode) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a $localDay) { $now += (24*3600); // noch von gestern! } if ($now < ($rise-3600)) { $pre="night"; } else if ($now < ($rise+3600)) { $pre="dawn"; } else if ($now < ($set-3600)) { $pre="day"; } else if ($now < ($set+3600)) { $pre="dawn"; } else { $pre="night"; } } else { $pre="day"; } if ($pic=="?") { $graficfile = "fragezeichen.jpg"; } else { $graficfile = $pre . "_" . $pic . ".jpg"; if (strpos($graficfile,"thunderstorm")) $graficfile = str_replace(".jpg",".gif",$graficfile); } return $graficfile; } function getSky($tafcode,$lang) { $cloudlayer = 0; $upToNowSky = 0; while ($clouds = getClouds ($tafcode, $cloudlayer++, $lang)) { if ($clouds["cov1"] > $upToNowSky) { $upToNowSky = $clouds["cov1"]; if (($clouds["cumulus"] == "yes") && ($cumulus != " towering cumulus clouds observed")) { $cumulus = " with cumulus clouds"; } if ($clouds["cumulus"] == "towering") $cumulus = " towering cumulus clouds observed"; } $moreclouds = "yes"; } switch ($upToNowSky) { case "0": $returner = "sky clear"; break; case "1": $returner = "few clouds"; break; case "3": $returner = "partly cloudy"; break; case "5": $returner = "mostly cloudy"; break; case "8": $returner = "sky overcast"; break; case "9": $returner = "no significant clouds below 5,000 ft"; break; } if ($moreclouds == "yes") { $returner = "$returner$cumulus"; } else { $returner = false; } if (($lang == "DE") || ($lang == "de")) { $returner = str_replace("no significant clouds below 5,000 ft","keine wesentliche Bewölkung unter 1.500 Meter",$returner); $returner = str_replace("sky clear","wolkenlos",$returner); $returner = str_replace("few clouds","leichte Bewölkung",$returner); $returner = str_replace("partly cloudy","teilweise bewölkt",$returner); $returner = str_replace("mostly cloudy","überwiegend bewölkt",$returner); $returner = str_replace("sky overcast","bedeckter Himmel",$returner); $returner = str_replace("towering cumulus clouds observed","Gewitterwolken beobachtet",$returner); $returner = str_replace("with cumulus clouds","mit Cumulus Wolken",$returner); $returner = str_replace("not reported","k/A",$returner); } return $returner; } function getClouds($tafcode,$number,$lang) { $lang=strtolower($lang); $tafItemArray=clearTAF($tafcode); $aktualCloudBase = 0; for ($a=0;$a
    "; } $returner .= "Actual weather "; if ($issuetime = getIssueTime ($metarParts[$a], $lang)) { $returner .= "from $issuetime"; } $returner .= ":
    \n"; break; case "becmg": $returner .= "2 hours trend:\n"; break; case "tempo": $returner .= "2 hours trend: temporarily\n"; break; case "nosig": $returner .= "2 hours trend: no changes
    \n"; break; } if ($wind = getWind($metarParts[$a])) { if ($wind["dir"]=="variable") { $returner .= "Wind direction changing "; } else { $returner .= "Winds from ".$wind["dir"]." (".$wind["deg"]."°) "; } $returner .= "force ".$wind["wbf"]." beaufort ("; $returner .= $wind["wkt"]." knots)"; if ($wind["gkt"] > $wind["wkt"]) { $returner .= " with gusts up to ".$wind["gbf"]; $returner .= " beaufort (".$wind["gkt"]." knots)"; } $returner .= ",\n"; } if ($temp = getMetarTemp($metarParts[$a])) { $returner .= "Temperature: $temp°C,\n"; } if ($dew = getMetarDewpoint($metarParts[$a])) { $returner .= "Dewpoint: $dew°C,\n"; } if ($hum = getMetarHumidity($metarParts[$a])) { $returner .= "Humidity: $hum %,\n"; } if ($press = getPressure($metarParts[$a])) { $returner .= "Air pressure: $press hPa,\n"; } if ($vis = getVisibility($metarParts[$a])) { $returner .= "Visibility: "; if ($vis == 9999) { $returner .= "more than 10 km,\n"; } else if ($vis == 8888) { $returner .= "more than 10 km, no clouds below 5000 ft, no precipitation\n"; } else if ($vis < 10000) { $returner .= "$vis meters,\n"; } else if ($vis >= 10000) { $returner .= round($vis/1000) . " km,\n"; } } if ($sky = getSky($metarParts[$a],$lang)) { $returner .= "$sky,\n"; } if ($cond = getConditions($metarParts[$a],$lang)) { if ($cond == "nsw") { if ($weatherType["type"]=="main") { $returner .= "no significant weather\n"; $oldcond = "no significant weather\n"; // if this appears the meteorologist } else { // must be stupid: NSW will breakup ROFL $returner .= "$oldcond will breakup\n"; } } else { $returner .= "$cond\n"; $oldcond = $cond; $oldcond = str_replace("light ","",$oldcond); $oldcond = str_replace("heavy ","",$oldcond); $oldcond = str_replace("vereinzelt ","",$oldcond); $oldcond = str_replace("verstärkt ","",$oldcond); } } $returner .= "
    \n"; } if (($lang == "DE") || ($lang == "de")) $returner=translateEasyWeather($returner); return $returner; } function displayEasyForecast($TAF,$lang) { $tafParts = getTafParts($TAF); for ($a=0;$a
    "; } $returner .= "Forecast "; if ($validtime = getValidTime ($tafParts[$a], $lang)) { $returner .= "for $validtime"; } $returner .= ":
    \n"; break; case "prob": $returner .= "there is a probability of ".$forecast["chance"]." %\n"; if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } $returner .= "for:
    \n"; break; case "becmg": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; if ($forecast["init"] == 3) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } else { if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } $returner .= "weather will turn into:
    \n"; break; case "tempo": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; if ($forecast["init"] == 3) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } else { if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } $returner .= "weather will temporarily change into:
    \n"; break; case "amfm": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; } $returner .= "at " . getFmTime($tafParts[$a], $lang) ."\n"; $returner .= "weather change into:
    \n"; break; } if ($wind = getWind($tafParts[$a])) { if ($wind["dir"]=="variable") { $returner .= "Wind direction changing "; } else { $returner .= "Winds from ".$wind["dir"]." (".$wind["deg"]."°) "; } $returner .= "force ".$wind["wbf"]." beaufort ("; $returner .= $wind["wkt"]." knots)"; if ($wind["gkt"] > $wind["wkt"]) { $returner .= " with gusts up to ".$wind["gbf"]; $returner .= " beaufort (".$wind["gkt"]." knots)"; } $returner .= ",\n"; } if ($temp = getTafTemp($tafParts[$a],$lang)) { $returner .= "Temperature: " . $temp["temp"] . "°C at " . $temp["time"] . ",\n"; } if ($dew = getMetarDewpoint($tafParts[$a])) { $returner .= "Dewpoint: $dew°C,\n"; } if ($hum = getMetarHumidity($tafParts[$a])) { $returner .= "Humidity: $hum %,\n"; } if ($press = getPressure($tafParts[$a])) { $returner .= "Air pressure: $press hPa,\n"; } if ($vis = getVisibility($tafParts[$a])) { $returner .= "Visibility: "; if ($vis == 9999) { $returner .= "more than 10 km,\n"; } else if ($vis == 8888) { $returner .= "more than 10 km, no clouds below 5000 ft, no precipitation\n"; } else if ($vis < 10000) { $returner .= "$vis meters,\n"; } else if ($vis >= 10000) { $returner .= round($vis/1000) . " km,\n"; } } if ($sky = getSky($tafParts[$a],$lang)) { $returner .= "$sky,\n"; } if ($cond = getConditions($tafParts[$a],$lang)) { if ($cond == "nsw") { if ($weatherType["type"]=="main") { $returner .= "no significant weather\n"; $oldcond = "no significant weather\n"; // if this appears the meteorologist } else { // must be stupid: NSW will breakup ROFL $returner .= "$oldcond will breakup\n"; } } else { $returner .= "$cond\n"; $oldcond = $cond; $oldcond = str_replace("light ","",$oldcond); $oldcond = str_replace("heavy ","",$oldcond); $oldcond = str_replace("vereinzelt ","",$oldcond); $oldcond = str_replace("verstärkt ","",$oldcond); } } $returner .= "
    \n"; } if (($lang == "DE") || ($lang == "de")) $returner=translateEasyWeather($returner); return $returner; } function displayCountryMenu($name,$class) { global $$name; $predef = $$name; $urlParts = explode("/",$_SERVER['SCRIPT_NAME']); $filename = $urlParts[(count($urlParts)-1)]; $returner .= "\n"; return $returner; } function displayStationMenu($state,$name,$class) { global $$name; $predef = $$name; $returner .= "\n"; return $returner; } function getTafParts($tafcode) { $tafItemArray=clearTAF($tafcode); $lastTafindex = 0; $aktTafIndex = 0; for ($a=0;$a ($lastTafindex+2))) { for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } $returner[$aktTafIndex] = trim($returner[$aktTafIndex]); $lastTafindex = $a; $aktTafIndex++; } } for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } if (isset($returner)) { return $returner; } else { return false; } } function getMetarParts($tafcode) { $tafItemArray=clearTAF($tafcode); $lastTafindex = 0; $aktTafIndex = 0; for ($a=0;$a ($lastTafindex+2))) { for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } $returner[$aktTafIndex] = trim($returner[$aktTafIndex]); $lastTafindex = $a; $aktTafIndex++; } } for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } if (isset($returner)) { return $returner; } else { return false; } } function getTafType($tafcode) { $tafItemArray=clearTAF($tafcode); if (ereg("^FM([0-9]{4})$", $tafItemArray[0])) { $returner["chance"] = 100; $returner["type"] = "amfm"; $returner["init"] = 1; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ereg("^FM([0-9]{4})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "amfm"; $returner["init"] = 2; } else if (($tafItemArray[0] == "BECMG") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 1; } else if (($tafItemArray[0] == "BECMG") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "BECMG") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "becmg"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "BECMG") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "becmg"; $returner["init"] = 3; } else if (($tafItemArray[0] == "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 1; } else if (($tafItemArray[0] == "TEMPO") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "tempo"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "TEMPO") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "tempo"; $returner["init"] = 3; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] != "BECMG") && ($tafItemArray[1] != "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "prob"; $returner["init"] = 1; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "prob"; $returner["init"] = 2; } else { $returner["chance"] = 100; $returner["type"] = "main"; $returner["init"] = 0; } return $returner; } function getMetarType($tafcode) { $tafItemArray=clearTAF($tafcode); if ($tafItemArray[0]=="BECMG") { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 1; } else if ($tafItemArray[0]=="TEMPO") { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 1; } else if ($tafItemArray[0]=="NOSIG") { $returner["chance"] = 100; $returner["type"] = "nosig"; $returner["init"] = 1; } else { $returner["chance"] = 100; $returner["type"] = "main"; $returner["init"] = 0; } return $returner; } ?>