CITE THIS NOTEBOOK: Possible Naked-Eye Comet C/2022 E3 (ZTF) by Jeff Bryant. Wolfram Community JAN 13 2023.
Comet C/2022 E3 (ZTF) will be relatively easy to view now through early February with a look of blurry, little fuzzy patch in the sky, best seen with binoculars or a telescope from dark skies. It will be closest to the Earth on Feb. 1, and closest to the sun on Jan. 12. If it has ever passed through the solar system before, it would have last been seen in the sky more than 10,000 years ago,” says Jon Giorgini, a senior analyst at NASA’s Jet Propulsion Laboratory. If C/2022 E3 didn’t gain enough energy to fling out of our solar system, it might remain bound to its elliptical orbit for another trip around the sun.
It’s name doesn’t exactly roll off the tongue. The “common” name of comets is typically named after its discoverer. In this case, it was an automated survey called the Zwicky Transient Facility (ZTF). As such, its not the only comet to bear that name. The unique name is C/2022 E3. The “C” refers to a comet with an orbital period greater than 30 years and 2022 refers to its year of discovery. The letter encodes the half month of the discovery, e.g. A = Jan. 1-15, B = Jan. 16-31, C = Feb. 1-15, D = Feb 16-28, E = Mar 1-15, etc. The trailing number enumerates the number of the comet within that half month. So C/2022 E3 means the 3rd comet found within the first half month of March 2022. For ease of communication, I will refer to this particular comet as comet ZTF throughout this document (even though its not a unique name).
At the time of writing this, comet ZTF has just passed its closest point to the Sun, known as periapsis.
In[]:=
Entity["Comet","CometC2022E3ZTF"]["PeriapsisTimeLast"]
Out[]=
Thu 12 Jan 2023
The orbital eccentricity of this comet, when fit to observed data, is greater than 1 making it a hyperbolic orbit.
In[]:=
Entity["Comet","CometC2022E3ZTF"]["Eccentricity"]
Out[]=
1.000269
This makes discussions about orbital period complicated since its not a periodic orbit. In actuality its likely extremely elliptical near 1, but errors in fitting result in a hyperbolic value. If indeed it is truly hyperbolic (came from outside the solar system and will leave the solar system after this passage), then this comet will never return. Online sources sometimes claim an inbound orbital period of about 50000 years, but many millions of years outbound due to orbital perturbations during this passage.
Starting in version 13.2 of the Wolfram Language, AstroPosition was introduced as a way to symbolically represent the position of objects in space. The initial version of AstroPosition can accept solar system entities and compute the position of the referenced solar system entity, but this is limited to major solar system bodies like planets and moons, not minor bodies like minor planets and comets. So, in order to compute the position of a comet we need to rely on EntityValue and feed the results into AstroPosition. The current position can be computed using:
In[]:=
AstroPosition[Entity["Comet","CometC2022E3ZTF"][{"RightAscension","Declination","DistanceFromEarth"}],"Equatorial"]
Out[]=
AstroPosition
Right ascension:
h
15
m
48
s
14.9
Declination: 40°15'52.4"

Version 13.2 also introduced AstroGraphics allowing the plotting of such positions. The following generates the position of comet ZTF over a range of dates, Sept 2022 through the first week of February 2023, and plots them.
In[]:=
dr=DateRange[DateObject[{2022,9,1},"Instant"],DateObject[{2023,2,7},"Instant"],Quantity[1,"Days"]];
In[]:=
pos=Tooltip[Point[#[[1]]],DateString[#[[2]]]]&/@Transpose[{AstroPosition[#,"Equatorial"]&/@Transpose[{Entity["Comet","CometC2022E3ZTF"][Dated["RightAscension",#]&/@dr],Entity["Comet","CometC2022E3ZTF"][Dated["Declination",#]&/@dr],Entity["Comet","CometC2022E3ZTF"][Dated["DistanceFromEarth",#]&/@dr]}],dr}];
As shown in the following result, the comet starts out near Corona Borealis and takes a backwards loop before moving north towards Polaris and speeding up as the comet gets closer to Earth and appears to speed up.
In[]:=
AstroGraphics[{Cyan,Line[pos[[All,1,1]]],pos},AstroReferenceFrame->"Equatorial",AstroGridLines->Quantity[10,"AngularDegrees"],ImageSize->{500,500}]
Out[]=
The distance between comet ZTF and Earth can be plotted with the following example. As can be seen, the comet is closest to Earth at the beginning of February 2023:
In[]:=
DateListPlot[Transpose[{dr,#["Distance"]&/@pos[[All,1,1]]}]]
Out[]=
A 3D perspective can be explored using a Wolfram Function Repository item. Here, I’ve plotted the position of comet ZTF on Feb 1, 2023 when the comet is near its closest point to Earth (more easily seen if you rotate the 3D scene interactively). The comet tail only represents the correct direction (directed away from the Sun) of the ion tail and does not accurately represent the actual length.
In[]:=
ResourceFunction["SolarSystemPlot3D"][{Cyan,Opacity[.2],EdgeForm[],Cone[{1.5Entity["Comet","CometC2022E3ZTF"],Entity["Comet","CometC2022E3ZTF"]},.05]},DateObject[{2023,2,1}],ViewAngle->Pi/200,​​"SunStyle"->{Yellow,​​Lighting->{​​{"Ambient",GrayLevel[.3]},​​{"Directional",White,ImageScaled[{0,0,1}]}​​},Sphere[{0,0,0},.05]},LabelingFunction->Callout]
Out[]=
​
For a more dynamic experience, you can use Manipulate to change the date. It will be a bit sluggish due to the requirement to call the Alpha server to perform the necessary computations.
In[]:=
Manipulate[ResourceFunction["SolarSystemPlot3D"][{Cyan,Opacity[.2],EdgeForm[],Cone[{1.5Entity["Comet","CometC2022E3ZTF"],Entity["Comet","CometC2022E3ZTF"]},.05]},date,ViewAngle->Pi/200,​​"SunStyle"->{Yellow,​​Lighting->{​​{"Ambient",GrayLevel[.3]},​​{"Directional",White,ImageScaled[{0,0,1}]}​​},Sphere[{0,0,0},.05]},LabelingFunction->Callout],{date,DateObject[{2022,11,1}],DateObject[{2023,2,5}],Quantity[1,"Days"]},SynchronousUpdating->False]
Out[]=
​
date
$FailedCyan,Opacity[0.2],EdgeForm[],Cone1.5
C/2022 E3 (ZTF)
,
C/2022 E3 (ZTF)
,0.05,
FE`date$$5800231210523488618585814728794220374975,ViewAngle
π
200
,SunStyle{Yellow,Lighting
{{Ambient,
},{Directional,White,ImageScaled[{0,0,1}]}},Sphere[{0,0,0},0.05]},LabelingFunction
Callout
AnimationVideo can similarly be used to export a video file if you are interested.
In[]:=
AnimationVideo[ResourceFunction["SolarSystemPlot3D"][{Cyan,Opacity[.2],EdgeForm[],Cone[{1.5Entity["Comet","CometC2022E3ZTF"],Entity["Comet","CometC2022E3ZTF"]},.05]},date,ViewAngle->Pi/200,​​"SunStyle"->{Yellow,​​Lighting->{​​{"Ambient",GrayLevel[.3]},​​{"Directional",White,ImageScaled[{0,0,1}]}​​},Sphere[{0,0,0},.05]},LabelingFunction->Callout],{date,DateObject[{2022,11,1}],DateObject[{2023,2,5}],Quantity[1,"Days"]}]
Out[]=
It remains to be seen if comet ZTF will perform up to the predictions of being a naked-eye object (from dark skies) at the end of January 2023. But with the Wolfram Language, you can track the position of the comet and then observe it yourself with binoculars to see. Always remember the quote from David H. Levy: “Comets are like cats: they have tails, and they do precisely what they want.”