I don't know if this is helpful but using the Python package Skyfield one can calculate the positions of things including comet C/2020 F3 (NEOWISE) and the times that they rise and set for the month of July:
Here are the rise and set times of the Sun and the comet for reference for the next week
sunset: 2020-07-12T03:06:17Z
sunrise: 2020-07-12T12:51:20Z
sunset: 2020-07-13T03:05:55Z
sunrise: 2020-07-13T12:51:56Z
sunset: 2020-07-14T03:05:32Z
sunrise: 2020-07-14T12:52:33Z
sunset: 2020-07-15T03:05:07Z
sunrise: 2020-07-15T12:53:10Z
sunset: 2020-07-16T03:04:41Z
sunrise: 2020-07-16T12:53:48Z
sunset: 2020-07-17T03:04:13Z
sunrise: 2020-07-17T12:54:27Z
sunset: 2020-07-18T03:03:43Z
sunrise: 2020-07-18T12:55:06Z
cometset: 2020-07-12T04:15:12Z
cometrise: 2020-07-12T10:46:43Z
cometset: 2020-07-13T04:34:10Z
cometrise: 2020-07-13T10:48:01Z
cometset: 2020-07-14T04:54:27Z
cometrise: 2020-07-14T10:51:29Z
cometset: 2020-07-15T05:15:33Z
cometrise: 2020-07-15T10:57:33Z
cometset: 2020-07-16T05:36:48Z
cometrise: 2020-07-16T11:06:45Z
cometset: 2020-07-17T05:57:17Z
cometrise: 2020-07-17T11:19:29Z
cometset: 2020-07-18T06:16:07Z
cometrise: 2020-07-18T11:36:02Z
Here's the python script:
from skyfield.api import Topos
from skyfield.api import Loader
from skyfield.data import mpc
from skyfield import almanac
import numpy as np
import matplotlib.pyplot as plt
from skyfield.constants import GM_SUN_Pitjeva_2005_km3_s2 as GM_SUN
from skyfield.api import load
loaddata = Loader('~/Documents/fishing/SkyData') # avoids multiple copies of large files
ts = loaddata.timescale() # include builtin=True if you want to use older files (you may miss some leap-seconds)
with load.open(mpc.COMET_URL) as f:
comets = mpc.load_comets_dataframe(f)
comets = comets.set_index('designation', drop=False)
print(len(comets), 'comets loaded')
row = comets.loc['C/2020 F3 (NEOWISE)']
print(row)
eph = loaddata('de421.bsp')
earth, sun, moon = [eph[x] for x in ('earth', 'sun', 'moon')]
comet = sun + mpc.comet_orbit(row, ts, GM_SUN)
times = ts.utc(2020, 7, range(1, 32))
ra, dec, distance = earth.at(times).observe(comet).radec()
RA, Dec = [thing._degrees for thing in (ra, dec)]
plt.plot(RA, Dec, 'ok')
plt.gca().set_aspect('equal')
plt.show()
t0 = ts.utc(2020, 7, 12)
t1 = ts.utc(2020, 7, 19)
LA = Topos('34.05 N', '118.25 W') # 34.05, -118.25
times, is_sunrises = almanac.find_discrete(t0, t1, almanac.sunrise_sunset(eph, LA))
for time, is_sunrise in zip(times, is_sunrises):
if is_sunrise:
print('sunrise: ', time.utc_iso())
else:
print('sunset: ', time.utc_iso())
times, is_rises = almanac.find_discrete(t0, t1, almanac.risings_and_settings(eph, comet, LA))
for time, is_sunrise in zip(times, is_rises):
if is_sunrise:
print('cometrise: ', time.utc_iso())
else:
print('cometset: ', time.utc_iso())