{
  "ad": "GüneşSaati — Gün Doğumu, Gün Batımı ve Şafak Saatleri",
  "surum": "1.2.0",
  "algoritmaSurumu": "1.2.0",
  "dil": "tr",
  "calisma": "istemci tarafında, çevrimdışı, saf matematik",
  "derinLink": "https://hesapla.narch.tech/arac/gunes-saatleri/?il=istanbul&tarih=2026-06-21&rakim=39&saatDilimi=3&aralik=tek&rakimDuzeltmesi=true&saniye=false",
  "derinLinkParametreleri": ["il", "enlem", "boylam", "tarih", "rakim", "saatDilimi", "aralik", "rakimDuzeltmesi", "saniye"],
  "girdiler": {
    "il": {
      "tip": "string",
      "zorunlu": "enlem ve boylam verilmediyse",
      "aciklama": "veri/iller.json içindeki 81 ilden biri"
    },
    "enlem": {
      "tip": "number",
      "birim": "derece",
      "aralik": [-90, 90],
      "zorunlu": "il verilmediyse"
    },
    "boylam": {
      "tip": "number",
      "birim": "derece",
      "aralik": [-180, 180],
      "zorunlu": "il verilmediyse"
    },
    "tarih": {
      "tip": "string",
      "bicim": "YYYY-MM-DD",
      "birim": "ISO 8601 takvim tarihi",
      "zorunlu": true
    },
    "rakim": {
      "tip": "number",
      "birim": "metre",
      "aralik": [0, 8848],
      "varsayilan": "0 veya seçilen ilin veri tablosundaki değeri",
      "aralikGerekce": "Muneer 0.0347×√h yaklaşık ufuk çöküşü yalnız h≥0 için gerçektir; 8848 m Dünya'nın en yüksek noktası Everest zirvesidir. Sınır dışı rakım RAKIM_ARALIK_DISI hatasıyla reddedilir."
    },
    "saatDilimi": {
      "tip": "number",
      "birim": "UTC saat farkı",
      "aralik": [-14, 14],
      "varsayilan": 3
    },
    "aralik": {
      "tip": "enum",
      "degerler": ["tek", "ay"],
      "varsayilan": "tek"
    },
    "saniye": {
      "tip": "boolean",
      "varsayilan": false,
      "derinLink": "yalnız açık true veya false"
    },
    "rakimDuzeltmesi": {
      "tip": "boolean",
      "varsayilan": true,
      "derinLink": "yalnız açık true veya false",
      "olayKapsami": "yalnız gerçek gün doğumu ve gün batımı; sivil/denizci/astronomik şafak ile altın/mavi saat sabit geometrik eşikleri değişmez",
      "uyari": "0.0347×√h, Muneer ve diğerleri (2004) kaynaklı yaklaşık gerçek ufuk çöküşü bağıntısıdır; NOAA standardı değildir"
    }
  },
  "ciktiSemasi": {
    "durum": "normal | yalniz-dogus | yalniz-batis | kutup-gecesi | gece-yarisi-gunesi",
    "vakit": {
      "saat": "yerel HH:MM; olay yoksa null",
      "saatSaniyeli": "saniye istenirse yerel HH:MM:SS",
      "dakikaUTC": "gün başlangıcından itibaren kesirli dakika; olay yoksa null",
      "dakikaYerel": "saat dilimi eklenmiş, sarılmamış kesirli dakika; negatif veya 1440 üstü olabilir",
      "yerelTarih": "olayın gerçek yerel ISO tarihi YYYY-MM-DD; olay yoksa null",
      "gunOfseti": "hesap tarihine göre yerel tam gün ofseti; olay yoksa null",
      "durum": "normal | hedefe-ulasmiyor | hedefin-altina-inmiyor | yakinsama-basarisiz",
      "olayBazliAraDegerler": "normal olayda yakinsamaAdimi, zamanDenklemiDakika ve gunesSapmasiDerece"
    },
    "alanlar": {
      "gunDogumu": "vakit; rakimDuzeltmesi yalnız bu gerçek ufuk olayına uygulanabilir",
      "gunBatimi": "vakit; rakimDuzeltmesi yalnız bu gerçek ufuk olayına uygulanabilir",
      "gunesOgle": "vakit",
      "gunUzunlugu": "{saat,saatSaniyeli,dakika,saniye,durum,gerekce}; normal günde yerel sivil gün penceresindeki toplam aydınlık süresidir, sürekli üstte/altta 24:00/00:00 olur, yalniz-dogus veya yalniz-batis gününde sayısal alanlar null ve durum tek-olay-gunu olur",
      "sivilSafak": "vakit; Güneş merkezi −6°",
      "sivilAksam": "vakit; Güneş merkezi −6°",
      "denizciSafak": "vakit; Güneş merkezi −12°",
      "denizciAksam": "vakit; Güneş merkezi −12°",
      "astronomikSafak": "vakit; Güneş merkezi −18°",
      "astronomikAksam": "vakit; Güneş merkezi −18°",
      "altinSaat": "{sabah:{baslangic:vakit,bitis:vakit},aksam:{baslangic:vakit,bitis:vakit}}",
      "maviSaat": "{sabah:{baslangic:vakit,bitis:vakit},aksam:{baslangic:vakit,bitis:vakit}}",
      "oncekiGuneGoreFark": "{dakikaSaniye:string,saniye:number}",
      "araDegerler": "{julianDay,julianYuzyil,zamanDenklemiDakika,gunesSapmasiDerece,saatAcisiDerece,gunesOgleDakikaUTC,yerelGunPenceresiUTC}",
      "hassasiyet": "{durum:orta-enlem-dogrulanmis|yuksek-enlem-sabit-garanti-yok,kapsam:string}",
      "notlar": "string[]"
    },
    "gunesKonumu": {
      "gunesYuksekligi": "derece; geometrik",
      "azimut": "derece; gerçek kuzeyden saat yönünde",
      "saatAcisi": "derece",
      "sapma": "derece",
      "zamanDenklemi": "dakika"
    }
  },
  "vakitAPI": {
    "varsayilanOlayTuru": "sabit-geometrik-esik",
    "olayTurleri": {
      "sabit-geometrik-esik": "Verilen zenit rakımdan bağımsız geometrik eşiktir; rakimDuzeltmesi uygulanmaz.",
      "gercek-gun-dogumu-batimi": "Yalnız 90.833° gün doğumu/gün batımı zenitiyle kullanılabilir; rakimDuzeltmesi=true ve rakim>0 ise 0.0347×√h zenite eklenir."
    },
    "donusKapsamAlanlari": ["olayTuru", "rakimDuzeltmesiUygulandi", "ufukCokusuDerece", "uygulananZenit"]
  },
  "ornekCagri": {
    "fonksiyon": "hesaplaGun",
    "girdi": {
      "tarih": "2026-06-21",
      "enlem": 41.0082,
      "boylam": 28.9784,
      "rakim": 0,
      "saatDilimi": 3,
      "aralik": "tek",
      "saniye": false,
      "rakimDuzeltmesi": false
    },
    "beklenen": {
      "gunDogumu": "05:32",
      "gunBatimi": "20:40",
      "toleransDakika": 2,
      "toleransKapsami": "Bu tolerans doğrulanmış Türkiye/orta-enlem fixture karşılaştırmasına aittir; yüksek enlem garantisi değildir."
    }
  },
  "formul": {
    "K1": "Tarih, 00:00 UTC için Julian Day'e çevrilir; T=(JD−2451545.0)/36525. Gregoryen takvim bağıntısı Meeus Bölüm 7'dir.",
    "K2": "NOAA/Meeus zinciri sırasıyla L0=280.46646+T(36000.76983+0.0003032T), M=357.52911+T(35999.05029−0.0001537T), e=0.016708634−T(0.000042037+0.0000001267T), merkez denklemi C, gerçek/görünen boylam, ortalama/düzeltilmiş ekliptik eğikliği ve sapma δ'yı hesaplar. Ortalama eğiklikte 23°26′21.448″ başlangıç sabiti kullanılır.",
    "K3": "EqTime=4·deg[y·sin(2L0)−2e·sin(M)+4ey·sin(M)cos(2L0)−0.5y²sin(4L0)−1.25e²sin(2M)] dakikadır; y=tan²(ε/2).",
    "K4": "cos(HA)=cos(zenit)/(cos(enlem)·cos(δ))−tan(enlem)·tan(δ). Zenitler: gün doğumu/batımı 90.833°, sivil 96°, denizci 102°, astronomik 108°. 90.833° yaklaşık 34′ kırılma + 16′ Güneş yarıçapıdır.",
    "K5": "İsteğe bağlı gerçek ufuk çöküşü yalnız gün doğumu/gün batımının 90.833° zenitine 0.0347×√h derece eklenir. Sivil/denizci/astronomik şafak ve altın/mavi saat eşikleri rakımdan bağımsızdır. Yaklaşım Muneer, Gueymard ve Kambezidis'in Solar Radiation and Daylight Models (2004), §1.7 bağıntısıdır; NOAA standardı değildir.",
    "K6": "Her eşik istenen yerel sivil günün UTC penceresinde [−60·saatDilimi, 1440−60·saatDilimi) örneklenir; imza değiştiren aralıklar bisection ile köklenir. Kökte EqTime ve sapma aday olay anındaki JD üzerinden yeniden hesaplanır; yükseliş dogus, alçalış batis olarak işaretlenir. Pencere içi her olay tanım gereği gunOfseti=0 ve yerelTarih=girdi.tarih taşır; komşu yerel güne ait olay o güne atanmaz. Yerel saat için 60·saatDilimi eklenir; sarılmamış dakika ile yerelTarih/gunOfseti birlikte korunur.",
    "fotografcilik": "Altın saat −4°…+6°, mavi saat −6°…−4° yükseklik aralığıdır. Bu PhotoPills tarafından da kullanılan yaygın sektör konvansiyonudur; resmî astronomik standart değildir."
  },
  "hassasiyet": {
    "ortaEnlem": "Model Türkiye ve doğrulanmış orta-enlem USNO fixture'larında 2 dakika içinde karşılaştırılmıştır; atmosfer ve gerçek ufuk nedeniyle gözlem garantisi değildir.",
    "yuksekEnlem": "Sabit dakika garantisi verilmez; kutup geçişi, sığ ufuk kesişimi ve atmosfer belirsizliği büyütür.",
    "siniflandirmaEsigi": "|enlem| >= 66 yüksek-enlem uyarısını etkinleştirir"
  },
  "hataSozlesmesi": {
    "bicim": {"hata": {"kod": "string", "mesaj": "string"}},
    "kodlar": [
      "GECERSIZ_TARIH",
      "GECERSIZ_ZENIT",
      "GECERSIZ_YON",
      "ENLEM_ARALIK_DISI",
      "BOYLAM_ARALIK_DISI",
      "RAKIM_ARALIK_DISI",
      "IL_BULUNAMADI",
      "GECERSIZ_OLAY_TURU"
    ],
    "garanti": "throw kullanılmaz; NaN ve Infinity dışarı sızmaz"
  },
  "illerVarligi": {
    "yol": "../../veri/iller.json",
    "kaynakYolu": "veri/iller.json",
    "tip": "bağımsız agent veri varlığı",
    "kayitSayisi": 81,
    "kaynak": "GeoNames TR.zip; PPLA/PPLC il merkezleri; elevation yoksa DEM sütunu",
    "lisans": "CC BY 4.0",
    "erisim": "2026-07-27"
  },
  "dayanak": [
    {
      "konu": "NOAA/Meeus bağıntıları, katsayılar, hassasiyet ve 0.833°",
      "url": "https://gml.noaa.gov/grad/solcalc/calcdetails.html",
      "erisim": "2026-07-27"
    },
    {
      "konu": "90.8333°=34′ kırılma+16′ yarıçap ve 6°/12°/18° şafak tanımları",
      "url": "https://aa.usno.navy.mil/faq/RST_defs",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Bağımsız doğum/batım referans API'si",
      "url": "https://aa.usno.navy.mil/data/api.html",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Türkiye'de yıl boyu UTC+3 uygulamasını başlatan 2016/9154 sayılı karar, 8 Eylül 2016",
      "url": "https://www.resmigazete.gov.tr/eskiler/2016/09/20160908-1.htm",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Yıl boyu saat uygulamasını sürdüren 139 sayılı Cumhurbaşkanı Kararı, 2 Ekim 2018",
      "url": "https://www.resmigazete.gov.tr/eskiler/2018/10/20181002-7.pdf",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Yalnız gerçek gün doğumu/gün batımı için yaklaşık ufuk çöküşü: SOLALT=−0.8333−0.0347√H",
      "url": "https://doi.org/10.4324/9780080474410",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Güncel resmî açıklama: Türkiye yıl boyunca GMT+3",
      "url": "https://enerji.gov.tr/sikca-sorulan-sorular",
      "erisim": "2026-07-27"
    },
    {
      "konu": "İl merkezi koordinatları ve yükseklik/DEM",
      "url": "https://download.geonames.org/export/dump/TR.zip",
      "erisim": "2026-07-27"
    },
    {
      "konu": "GeoNames veri şeması",
      "url": "https://download.geonames.org/export/dump/readme.txt",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Altın/mavi saat açı konvansiyonu",
      "url": "https://www.photopills.com/articles/mastering-golden-hour-blue-hour-magic-hours-and-twilights",
      "erisim": "2026-07-27"
    },
    {
      "konu": "Resmî namaz vakitleri yönlendirmesi",
      "url": "https://namazvakitleri.diyanet.gov.tr/",
      "erisim": "2026-07-27"
    }
  ],
  "sinirlar": [
    "namaz vakti değildir",
    "yüksek enlemde sabit dakika garantisi yoktur; kutup geçiş gününde aynı yerel tarihte yalnız doğuş veya yalnız batış olabilir",
    "olaylar istenen yerel sivil gün UTC penceresinde [−60·saatDilimi, 1440−60·saatDilimi) aranır; yalnız pencere içi ve yerelTarih=girdi.tarih olan olaylar o güne atanır, komşu yerel günün doğuşu/batışı kaymaz",
    "tek-olay gününde eksik vakit ve gunUzunlugu sayısal alanları null; gunUzunlugu.durum tek-olay-gunu olur",
    "her olay gerçek yerelTarih ve gunOfseti alanını taşır; yerel gün penceresindeki her olay gunOfseti=0'dır",
    "rakım düzeltmesi yaklaşıktır ve yalnız gerçek gün doğumu/gün batımına uygulanır",
    "hava durumunu ve gerçek ufuk engellerini bilmez",
    "ay doğumu hesaplamaz"
  ],
  "kaynakDogrulanmadi": []
}
