Blog

  • apt-get install orbtimes

    add to /etc/sources.list.d/

    deb [ arch=amd64 signed-by=/etc/apt/keyrings/nickstrauss.gpg ] http://apt.nick-strauss.com/apt/debian stable main

    and place a binary public key nickstrauss.gpg in the directory /etc/apt/keyrings

    from the ascii armored key nickstrauss.asc

    —–BEGIN PGP PUBLIC KEY BLOCK—–

    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
    =lv0N
    —–END PGP PUBLIC KEY BLOCK—–

  • computing solar eclipse August 12, 2026

    orbtimes –help
    orbtimes –location –timezone –daylight
    –query returns 1 if query is true, 0 otherwise
    –selftest will run exhaustive test cases
    –verbose will print diagnostic information

    Examples:
    orbtimes --location "36.048202N 114.950131W 0ft" --timezone -8.0  --daylight 1 
    Called with no (or partial) arguments, and it will guess at timezone, location, and daylight savings.
    orbtimes --location="48.22N 11.54E 0ft" -v
    Called with --moon and/or other orbs.
    orbtimes --moon --location="36.048621N 114.951226W" -v
    Called with a query
    orbtimes --moon --query "sunset>moonrise"
    Called on a particular date and time
    orbtimes -J 2457957.0 -vv
    Called with two stars, solve for location with synthetic sightings
    --star Vega --star Arcturus --location="36N90W"
    Called with two stars, solve for location with two sightings
    --star Vega --star Arcturus --sighting 58.725774 --sighting 61.740039
    TBD solve for time and date with two sightings
    
    All Options:
    --location (-l) Specify location (latitude, longitude, elevation) e.g. "48.22N 11.54E 0ft"
    --query (-q) Specify a query e.g. "sunrise<sunset"
    --date (-D) Specify the date yyy-mm-day
    --ztime (-Z) Specify the Zulu (UT) time. Use in conjunction with date. e.g. "23:6.1"
    --datejd (-J) Specify the Julian day
    --timezone (-t) Specify the timezone
    --daylight (-d) Specify the daylight savings offset
    --twilight_angle (-e) Specify a twilight angle (radians)
    --solar_eclipse (-E) Run solar eclipse calculation for probability and time
    --selftest (-s) Run self test mode
    --verbose (-v) Print more information
    --ascii_art (-A) Display option
    --map (-m) Specify map (spacechart catalog)
    --moon (-M) Display lunar (i.e. Moon) info
    --moondays (-N) Display lunar new and full info
    --mercury --venus --mars --jupiter --saturn --uranus --neptune (--orbs) Display each planets info (or all) 
    --star (-9) Display star celestial (RA.DEC) and topographic (EL.AZ) info for date, time, location and epoch. 
      solve for location given two stars circle of equal position intersect.
      "An analytical solution of the Two Star Sight Problem of Celestial Navigation." Van Allen 1981.
      if no sightings, then guess elevation (EL) angles.
    --sighting (-C) Set sighting elevation angle (EL) for respective star. 
    --twilight (-T) Display twilight info [0..3] civil,nautical,astronomical,general

    $ orbtimes –solar_eclipse
    SOLAR_ECLIPSE CALCULATE -E
    location is latitude 36.000000 longitude -90.000000 daylight offset 1.000000
    Sunset local day Tuesday 19:50.505922 August 11 2026
    Sunrise local day Wednesday 6:16.183105 August 12 2026
    Check: Solar eclipse possible. MUST be at new moon 46245.468565 == 46245.234619 (12.000000 8.000000 2026.000000)
    argument latitude 2.990440 event day 46245.000000 event fraction 0.234619
    Check: calculating solar eclipse on date 2026 8 12 and location -90.000000 36.000000
    moon_lat 0.151152
    eclipse probability 1.000000 at UT time 18.017936

  • And to the angel of the church in Philadelphia write; These things saith he that is holy, he that is true, he that hath the key of David, he that openeth, and no man shutteth; and shutteth, and no man openeth;

    And to the angel of the church in Philadelphia write; These things saith he that is holy, he that is true, he that hath the key of David, he that openeth, and no man shutteth; and shutteth, and no man openeth;

  • I will fear no evil.

    Yea, though I walk through the valley of the shadow of death, I will fear no evil: for thou art with me; thy rod and thy staff they comfort me.

  • orbtimes variables JD and DJ

    Julian Day Number JD began at 12:00 PM (noon) Universal Time on January 1, 4713 BC. the variable JD is an extended precision floating point number, with the fractional part determining fractions of a day with respect to Universal Time (UT).

    // Sunrise Friday   6:2.257904 July 25 2025 (local day)  Julian 2460881.959901 (hours UT=11.037632 )        
    // location is latitude 36.000000 longitude -90.000000 daylight offset 1.000000       
        dj = JulianDays(25, 7, 2025);                                                                               
        jd = trueJulianDays(dj);                                                                                    
        icheck = (fabs(jd-2460881.959901)<1.0);                                                                     
                              

    /* in our system we work with a modified
    julianDay from 1900
    */
    extended trueJulianDays(extended jd)
    {
    return jd + 2415020;
    }

  • We shall overcome

    A song I heard many times. A song I sung many times. A song I play on the guitar. I believe the song references John 16:33.

    These things I have spoken unto you, that in me ye might have peace. In the world ye shall have tribulation: but be of good cheer; I have overcome the world.

    He has overcome the world, and so we can too.

  • Don’t ask questions.

    My father was a scientist. I asked him, “What’s science?” He said that scientists ask questions, and make experiments to get answers. The question is called a hypothesis. Of course you don’t need to make a controlled experiment, many answers can be drawn from careful observation. This is called the scientific method.

    Another method is called the Socratic method. In this, you are supposed to engage others in a dialog with questions and answers.

    Both of these methods could be about uncovering truth.

    Then, there is the method of blog, or diaries. One keeps a daily record, it could be weekly, or randomly of one’s Fear, feelings, fantasies, Love, observations. To what end? For what purpose?

    I feel a need to search, to find answers. I feel a need to fill that hole in my life. I feel a need to communicate, to share, to love. I feel a need to be honest with myself.

    “Why?”

    “Because I said so.”

  • Ecstasy of Gold

    I recorded Morricone’s theme from the film “The good bad and ugly” back in 2018. The movie is a spaghetti western about the U.S. Civil war. There is a three-way gunfight in the climax of the movie between Clint Eastwood, Lee Van Cleef, and Eli Wallach where this theme plays. The setting is a soldiers’ graveyard.

    I recorded from a guitar tabulature from my program vguitar driving a MIDI synth.