atsunatsu 9971f4c4ce fix: prevent sunrise/sunset times being identical when Phase 3 convergence ends below threshold
The findSunRiseSet algorithm's Phase 3 converges on the sunrise elevation
using a symmetric stepping approach. Due to the convergence step size,
the final elevation can land slightly below the -0.8333° threshold (e.g.
-0.838° instead of -0.8333°). When this happens, Phase 4's while-loop
condition (sunPos.elevation > -threshold) evaluates to false immediately,
causing it to skip entirely. Phase 5 then converges to the same point,
producing identical sunrise and sunset times.

The fix adds a small offset (daynum = sunrise + 0.001, ~1.4 minutes) at
the start of Phase 4, ensuring the sun is clearly above the threshold
before the sunset search begins. This is a deterministic fix — the bug
was reproducible 100% of the time for any location where the convergence
lands below threshold (e.g. equator at equinox).

Fixes: sunrise/sunset showing identical times (~30% of location/date combinations)
2026-08-19 20:30:08 +08:00

Look4Sat: Satellite tracker

Look4Sat CI

Get it on Google Play Get it on F-Droid

Radio satellite tracker and pass predictor for Android, inspired by Gpredict

Track satellite passes with ease!

Thanks to Celestrak and SatNOGS you have access to over 9000 active satellites.
You can search the entire database by NORAD Catalog Number or the satellite's name.

Orbital positions and passes are calculated relative to your location.
To get reliable data make sure to set the station position via the app Settings.

The application is built using Kotlin, Coroutines, Jetpack Compose and Navigation.
It is now and always will be completely ad-free and open-source.

Main features:

  • Predicting satellite positions and passes for up to 10 days
  • Showing the list of currently active and upcoming satellite passes
  • Showing the active pass progress, polar trajectory and transceivers info
  • Showing the satellite positional data, footprint and ground track on the map
  • Custom TLE satellite data import is available via Three Line Element .txt files
  • Offline first: calculations are made offline. Weekly TLE data update is recommended.

Star History

Star History Chart
S
Description
No description provided
Readme GPL-3.0
53 MiB
0 Stars 1 Watchers 0 Forks
Languages
Kotlin 79.6%
Java 20.4%