Hastighedsberegning
Kapflyvninger

Hastighedsberegning

MyPigeons beregner hastigheden for hver ankomst ud fra de samme byggesten: distance, flyvetid, urafvigelser, dødtid og en kritisk lav hastighed-kontakt, der skifter rangering til ankomsttidspunkt, når duerne sætter farten ned. Denne side gennemgår hver enkelt input, rækkefølgen de anvendes i, og randtilfældene, der gør flerdøgnskonkurrencer komplicerede.

Godt at vide før du starter

  • Hastigheden vises som standard i m/min, eller i y/min for imperielle lande. Præcisionen styres globalt af indstillingen antal decimaler for hastighed.
  • Dødtid kan konfigureres på landsplan eller tilsidesættes på et enkelt kapflyvning. Tilsidesættelsen pr. flyvning vinder altid.
  • En due, der flyver langsommere end den kritisk lave hastighed (standard 750 m/min), rangeres - når valget er aktivt på flyvningen - efter ankomsttidspunkt i stedet for hastighed.

Den grundlæggende hastighedsformel

Alle hastigheder i systemet bruger samme formel:

hastighed = distance × 60 / flyvetid, hvor distancen er udtrykt i meter (eller yards for imperielle lande), og flyvetiden i sekunder.

Konvertering af afstandsenheder

Enheden styres af indstillingen hastighedens enhedssystem. Metriske lande gemmer afstanden i kilometer og konverterer den til meter (× 1000). Imperielle lande gemmer afstanden i miles og konverterer den til yards (× 1760). Bangladesh er en bevidst hybrid: distancen gemmes i kilometer, men hastigheder rapporteres i y/min, så distancen ganges med 1093,6133.

Præcision og rimelighedstjek

Den endelige hastighed afrundes til det konfigurerede antal decimaler. To beskyttelser kører til sidst: en flyvetid på nul eller mindre sætter hastigheden til 0, og enhver hastighed over 10 000 sættes også til 0 (typisk forårsaget af en urafvigelse i forkert retning eller en ankomst indtastet før slip).

Flyvetid i detaljer

Flyvetid er ikke blot ankomst - slip. Det er resultatet af fire trin anvendt i denne rækkefølge:

  1. Beregning af det absolutte ankomsttidsstempel

    Ankomsttidsstemplet beregnes som forløbne sekunder fra slipøjeblikket: slip + (ankomstdag - 1) × 86400 + t × 3600 + m × 60 + s. Dette undgår problemer med sommertidsskift mellem lande - ved at tælle forløbne sekunder fra slippet i stedet for at rekonstruere en kalenderdato forbliver resultatet korrekt, selv når slip og ankomst falder på hver sin side af et tidsskifte.

  2. Træk urafvigelse eller relativ afvigelse fra

    Når relativ afvigelse er aktiveret, anvendes den relative afvigelse; ellers anvendes den rå urafvigelse. Fortegnsbehandlingen afhænger af to kontakter. Brug positiv afvigelse vender altid fortegnet - nyttigt i lande, hvor en positiv afvigelse er den ugunstige retning. Brug negativ afvigelse anvender kun afvigelsen, hvis den er negativ; positive afvigelser nulstilles, hvilket er standardadfærden for de fleste forbund. Hele mekanikken bag relativ afvigelse beskrives i sit eget afsnit nedenfor.

  3. Træk cykeltid fra

    Hvis duemanden registrerer en cykeltid - tiden brugt på at transportere uret fra slaget til klubben for aflæsning - trækkes den fra flyvetiden, så det er konstateringstiden, der tæller, ikke transporttiden.

  4. Træk dødtid fra

    Fradraget af dødtid er det mest sammensatte trin og har sit eget afsnit nedenfor.

Relativ afvigelse i detaljer

Nogle forbund fordeler urafvigelsen forholdsmæssigt over urets løbevindue i stedet for at anvende hele afvigelsen på hver ankomst. Det er, hvad relativ afvigelse gør. Når den er aktiveret, bruger beregneren den relative afvigelse i stedet for den rå urafvigelse, når flyvetiden beregnes.

Urets løbevindue: åbnings- og lukketidspunkter

Når importfilen behandles, gemmer systemet pr. flyvning to tidsstempler, der afgrænser urets løbevindue:

  • Åbningstidspunkt - hvornår uret blev sat og startet i klubben, før indkurvning.
  • Lukketidspunkt - hvornår uret blev stoppet og aflæst efter flyvningen.

Begge tidsstempler ligger i samme tabel og gemmes på to niveauer.

Klubniveau-post

Én post pr. klub og flyvning, der indeholder den åbning og lukning, som som udgangspunkt gælder for hvert medlem af klubben. Det er det mest almindelige tilfælde - hele klubben kurvede ind og aflæste sammen, så ét par åbning/lukning dækker alle medlemmer.

Tilsidesættelse pr. duemand

Nogle forbund importerer også åbnings- (og valgfrit lukke-) tidsstempler på duemandsniveau. Disse poster tilsidesætter klubværdierne for den ene duemand. Tilsidesættelsen er delvis: en post med kun åbning erstatter kun åbningen og arver klubbens lukning, mens en post, der også udfylder lukningen, erstatter begge.

Når en duemandspost findes, starter vinduet ved hans åbning. Vinduets afslutning kommer fra duemandens post, hvis den indeholder et lukketidspunkt; ellers falder den tilbage på klubbens lukning.

Sådan beregnes den relative afvigelse

Formlen har tre dele:

  • løbetid = åbning - lukning - det samlede antal sekunder, uret kørte.
  • løbetid_ved_ankomst = ankomst - lukning - hvor ankomsten ligger inden for det vindue.
  • relativ_afvigelse = (løbetid_ved_ankomst / løbetid) × urafvigelse - andelen af urafvigelsen, der anvendes på denne ankomst, proportionalt med, hvor meget af løbevinduet der var gået ved ankomstens tidspunkt.

Konkret bidrager en ankomst helt i begyndelsen af løbevinduet med 0 afvigelse; en ankomst helt til sidst får hele urafvigelsen; en ankomst i midten får halvdelen. Resultatet afrundes til fire decimaler, før det sendes tilbage til flyvetidsformlen.

Hvornår den relative afvigelse springes over

To tilfælde springer beregningen helt over og returnerer 0. For det første: når indstillingen brug relativ afvigelse er slået fra i landets konfiguration. For det andet: når der hverken findes klub- eller duemandspost for flyvningen - typisk fordi importfilen ikke medbragte åbnings-/lukketidspunkter. I begge tilfælde falder hastighedsberegneren tilbage på den rå urafvigelse.

Fortegnsbehandling og kontakterne positiv/negativ

En urafvigelse er et tal med fortegn, men forbundene er uenige om, hvilket fortegn der betyder hvad. Hvordan MyPigeons fortolker det, styres af to landsdækkende kontakter.

Brug negativ afvigelse styrer fortegnet ved indtastning. Slået til (standard) gemmes afvigelsen præcis som indtastet. Slået fra vendes positive tal indtastet af brugeren ved gemning til negative - nyttigt for forbund, der rapporterer afvigelser som positive tal, men behandler dem som straf.

Brug positiv afvigelse vender fortegnet i det øjeblik, afvigelsen sendes ind i hastighedsformlen. Slået fra (standard) går den gemte værdi ind, som den er; slået til ganges den først med -1 - nyttigt, når dit forbunds fortolkning af fortegnet er det modsatte af MyPigeons-standarden.

Begge kontakter er landsdækkende indstillinger; så snart de svarer til dit forbunds regler, behøver de ikke at blive ændret pr. flyvning. De virker på den afvigelsestype, der lige nu er i brug - hvis relativ afvigelse er slået til, gælder de samme fortegnsregler for den relative afvigelse, ikke for den rå urværdi.

Hvor åbnings- og lukketidspunkter kommer fra

Åbnings- og lukketidspunkter udfyldes fra importfilen i det øjeblik, flyvedataene uploades. De fleste ETS-eksporter medbringer begge tidspunkter for klubben; forbund, der arbejder med tilsidesættelse på duemandsniveau, vedhæfter også duemandsposter. Posterne kan også redigeres fra urtider-skærmen, hvis en tastefejl eller en manglende værdi skal rettes manuelt før genberegning.

Dødtidszoner

En dødtidszone er et tilbagevendende natvindue, hvor duer ikke flyver. Systemet trækker dette vindue fra flyvetiden, så en flerdøgnsankomst ikke straffes for de timer, hvor ingen due fysisk kunne være i luften.

En dødtidszone har et datointerval (hvilke uger af sæsonen den gælder for) og et tidsinterval (natvinduet, fx 21:00 - 05:00). Den fratrukne varighed er én hel dag plus forskellen mellem de to tidspunkter - så et 21:00 - 05:00-vindue svarer til 32 timer pr. nat, fordi vinduet krydser midnat.

To måder at konfigurere dødtid på

Dødtid kan sættes to steder. Ved hastighedsberegning læses de i en fast rækkefølge.

Global dødtid (landsdækkende)

Konfigureres under Adminpanel → Dødtidszoner. Du kan oprette så mange intervaller, sæsonen kræver - typisk et kortere natvindue til sommerflyvninger (fx 22:00 - 04:00) og et længere til marathon-uger (fx 21:00 - 05:30). Hvert interval har sit eget sæsondatointerval, så de kan dække forskellige dele af året uden overlap. Formularen afviser intervaller, der overlapper en eksisterende post.

Tilsidesættelse pr. flyvning

Konfigureres direkte på flyvningens admin-fane som en engangstilsidesættelse for én enkelt flyvning. Brug det, når en bestemt flyvning har usædvanlige dødtidsbehov - fx en langdistanceflyvning, hvor dødtidsvinduet skal forlænges kun for den flyvning. Tilsidesættelsen gemmer kun tidsintervallet; det gælder implicit for alle dage, flyvningen dækker.

Hvilken vinder

Hastighedsberegneren slår begge op, i denne rækkefølge:

  1. Find en global zone

    Den globale opslag køres mod flyvningens slipøjeblik. Det globale interval, der dækker slipøjeblikket, indlæses - starttid, sluttid og natlig varighed. Matchet er på dato; tidsintervallet bruges senere til at trække dødtid fra, ikke til at filtrere opslaget.

  2. Anvend tilsidesættelsen pr. flyvning

    Hvis der findes en tilsidesættelse pr. flyvning, overskrives alt, hvad det globale opslag har indlæst, af dens værdier - tilsidesættelsen vinder altid på alle tre felter (start, slut, varighed). Hvis der ikke blev fundet et globalt match, men der findes en tilsidesættelse, bruges tilsidesættelsen alene.

  3. Intet match betyder intet fradrag

    Hvis ingen af dem giver et resultat, er dødtiden nul, og flyvetiden står urørt.

Flerdøgnsflyvninger og overlappende zoner

Det meste af kompleksiteten omkring dødtid kommer kun frem ved ankomster, der varer mere end én dag. To regler styrer, hvad der sker.

Hvor mange nætter trækkes fra

Når den matchende zone er kendt, ganges dens natlige varighed med antallet af kalenderdage mellem slip og ankomst. En due, der ankommer to dage senere, får trukket to hele nætters dødtid; en, der ankommer samme dag, ingen. Antallet af dage beregnes ud fra kalenderdatoen, ikke ud fra forløbne sekunder, så en flyvning fra fredag eftermiddag til søndag morgen tæller som to dage uanset de præcise timer.

Ankomster, der falder inden for dødtidsvinduet

Hvis ankomstens tidspunkt på døgnet falder mellem dødtidens start og slut, flytter beregneren ankomsten frem til vinduets slutning, før fradraget foretages. To tilfælde behandles symmetrisk:

  1. Ankomst før midnat, inden for vinduet

    Eksempel: et 21:00 - 05:00-vindue, duen ankommer kl. 22:30. Ankomsten flyttes frem til 05:00 næste morgen - tiden fra ankomst til midnat lægges til, og derefter tiden fra midnat til vinduets slutning.

  2. Ankomst efter midnat, stadig inden for vinduet

    Eksempel: samme 21:00 - 05:00-vindue, duen ankommer kl. 03:00. Ankomsten flyttes frem til 05:00 samme dag. Begge tilfælde lægger ankomsten ved dødtidens slutning, så fradraget forbliver symmetrisk.

Vigtigt forbehold: kun zonen for slipdagen anvendes

Det globale opslag køres kun én gang, mod flyvningens slipøjeblik. Hvis dit land definerer forskellige dødtidsintervaller for forskellige dele af sæsonen og en enkelt flyvnings flyvetid spænder over to af dem, genbruges intervallet fra slipdagen for hver efterfølgende nat - systemet syr ikke konfigurationer sammen på tværs af dage. Planlæg landsdækkende intervaller, så enhver enkelt flyvning passer ind i ét interval.

For en engangsflyvning, der med rette kræver en anden dødtid end den globale opsætning (fx en marathonflyvning, hvor det normale natvindue er for kort), opret en tilsidesættelse på flyvningens admin-fane. Tilsidesættelsen erstatter alle tre værdier (start, slut, varighed) kun for den flyvning og er den reneste løsning.

Kritisk lav hastighed (standard 750 m/min)

Når duer stopper undervejs - ekstrem varme, modvind, en flok der lægger sig om natten - falder hastigheden under det niveau, hvor afstanden slag-til-slag stadig giver en meningsfuld rangering. Bedømmelse alene efter hastighed ville urimeligt favorisere slag på korte distancer, fordi en kortere distance ved samme flyvetid altid giver højere hastighed. Det er præcis det, kontakten for kritisk lav hastighed løser.

Sådan konfigureres tærsklen

To indstillinger styrer den. Kritisk lav hastighed definerer selve tærsklen - standard 750, i m/min for metriske systemer og y/min for imperielle. Hovedkontakten brug kritisk lav hastighed gør funktionen tilgængelig i flyvningens grænseflade.

Sådan tilslutter en flyvning sig

Hver flyvning har to kontakter i detaljemodalen:

Sortér efter ankomsttidspunkt under tærsklen

Når denne kontakt er slået til, skrives duer med en hastighed under tærsklen ind i de midlertidige resultater med deres justerede ankomsttidsstempel i stedet for hastigheden - rangstillingen sorterer da efter, hvem der ankom først, ikke efter, hvem der fløj hurtigere på en kortere distance. Duer over tærsklen påvirkes ikke; for dem gælder fortsat sortering efter hastighed. De to rangordeningssystemer eksisterer side om side i samme flyvning.

Anvend gennemsnitsdistance-korrektion

Denne kontakt anvender en korrektion af østrigsk type: hver duemands ankomsttidspunkt forskydes med 8 sekunder for hver 100 m forskel i forhold til flyvningens gennemsnitsdistance. Slag længere fra slipstedet får en positiv forskydning (deres ankomst behandles som tidligere), tættere slag får en negativ forskydning. Således kompenseres distanceforskelle uden at forlade tidsbaseret rangering.

Hvor gennemsnitsdistancen kommer fra

Flyvningens gennemsnitsdistance beregnes ud fra distinkte duemænds slagdistancer, ikke ud fra distancer pr. due. Hver duemand bidrager med sit slag én gang, uanset hvor mange duer han har kurvet ind - så et enkelt stort slag kan ikke skævvride gennemsnittet.

Hvornår hastigheder genberegnes

En hastighed beregnes, når som helst en input til formlen ændres. De hyppigste indgange er:

  • Ny ankomst - importeret fra en ETS-fil eller indtastet manuelt udløser en hastighedsberegning for en enkelt ankomst.
  • Masseredigering på en flyvning (urafvigelse, distance, dødtid) genberegner hver ankomst i flyvningen.
  • Genberegning på flyvningsniveau går alle ankomster i flyvningen igennem - de officielle ankomster, de igangværende midlertidige resultater og de offentligt rapporterede ankomster. Når relativ afvigelse er aktiv, genudledes også den relative afvigelse pr. duemand fra urtidsregistreringerne, før hastigheden genberegnes.
  • BENZING Live-ankomster - både ved private træninger og delte klubtræninger genberegnes hastigheden hver gang live-enheden rapporterer en ny ankomst.
  • Forwarding API - tredjepartsværktøjer, der sender ankomster gennem det offentlige API, går gennem den samme beregningssti.
  • Træningstilstand bruger en separat, enklere formel, der ignorerer afvigelser, dødtid og cykeltid helt. Den bruges til personlige træningsregistreringer, der aldrig kombineres med flyveresultater.

Randtilfælde værd at kende

Sommertidsskift

Ankomsttidsstempler beregnes som forløbne sekunder fra slipøjeblikket, ikke ud fra en rekonstrueret kalenderdato. Det gør beregningen immun over for sommertidsskift, der falder mellem slip og ankomst, selv når en flyvning spænder over flere lande.

Organisationens tidszone

Når tidszoneindstillingen er aktiveret, og flyvningens organisation har sin egen konfigurerede tidszone, bruges den tidszone i alle sammenligninger af dødtidens tidspunkt på døgnet. Et forbund med kontorer i to lande får så konsistente resultater - dødtidsvinduet fortolkes i organisationens lokaltid.

Imperielle og Bangladesh-enheder

Imperielle flyvninger gemmer distancen i miles og konverterer den til yards (× 1760), før hastigheden beregnes; enhedssuffikset bliver y/min. Bangladesh arbejder med metrisk distance (km), men rapporterer y/min, og derfor ganges distancen med 1093,6133 i stedet for 1000, når både det metriske system og y/min-tegnet er konfigureret sammen.

Sundhedsloft

Enhver beregnet hastighed over 10 000 falder til 0. Det er en beskyttelse mod fejlbehæftede data - typisk en urafvigelse i forkert retning eller en ankomst indtastet før slip.