Class to model Venus planet.
This table contains the parameters to compute Venus’ orbital elements for the mean equinox of date. Based in Table 31.A, page 212
This table contains the parameters to compute Venus’ orbital elements for the standard equinox J2000.0. Based on Table 31.B, page 214
This table contains Venus’s periodic terms (all of them) from the planetary theory VSOP87 for the heliocentric latitude at the equinox of date (taken from the ‘D’ solution). In Meeus’ book a shortened version can be found in page 420.
This table contains Venus’s periodic terms (all of them) from the planetary theory VSOP87 for the heliocentric longitude at the equinox of date (taken from the ‘D’ solution). In Meeus’ book a shortened version can be found in pages 418-420.
This table contains Venus’s periodic terms (all of them) from the planetary theory VSOP87 for the radius vector at the equinox of date (taken from the ‘D’ solution). In Meeus’ book a shortened version can be found in pages 420-421.
Class Venus models that planet.
list of weak references to the object (if defined)
This method computes the apparent heliocentric position of planet Venus for a given epoch, using the VSOP87 theory.
Parameters: | epoch (Epoch) – Epoch to compute Venus position, as an Epoch object |
---|---|
Returns: | A tuple with the heliocentric longitude and latitude (as Angle objects), and the radius vector (as a float, in astronomical units), in that order |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
This method computes the time of the eastern elongation closest to the given epoch, as well as the corresponding maximum elongation angle.
Parameters: | epoch (Epoch) – Epoch close to the desired eastern elongation |
---|---|
Returns: | A tuple with the time when the eastern elongation happens, as an Epoch, and the maximum elongation angle, as an Angle |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(2019, 10, 1.0)
>>> time, elongation = Venus.eastern_elongation(epoch)
>>> y, m, d = time.get_date()
>>> print(y)
2020
>>> print(m)
3
>>> print(round(d, 4))
24.9179
>>> print(round(elongation, 4))
46.078
This method computes the geocentric position of Venus (right ascension and declination) for the given epoch, as well as the elongation angle.
Parameters: | epoch (Epoch) – Epoch to compute geocentric position, as an Epoch object |
---|---|
Returns: | A tuple containing the right ascension, the declination and the elongation angle as Angle objects |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
>>> epoch = Epoch(1992, 12, 20.0)
>>> ra, dec, elon = Venus.geocentric_position(epoch)
>>> print(ra.ra_str(n_dec=1))
21h 4' 41.5''
>>> print(dec.dms_str(n_dec=1))
-18d 53' 16.8''
>>> print(elon.dms_str(n_dec=1))
44d 46' 8.9''
This method computes the geometric heliocentric position of planet Venus for a given epoch, using the VSOP87 theory.
Parameters: |
|
---|---|
Returns: | A tuple with the heliocentric longitude and latitude (as Angle objects), and the radius vector (as a float, in astronomical units), in that order |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
>>> epoch = Epoch(1992, 12, 20.0)
>>> l, b, r = Venus.geometric_heliocentric_position(epoch, tofk5=False)
>>> print(round(l, 5))
26.11412
>>> print(round(b, 4))
-2.6206
>>> print(round(r, 6))
0.724602
This function computes an approximation of the illuminated fraction of Venus disk, as seen from Earth.
Parameters: | epoch (Epoch) – Epoch to compute the illuminated fraction |
---|---|
Returns: | Illuminated fraction of Venus disk |
Return type: | float |
Raises: | TypeError if input values are of wrong type. |
>>> epoch = Epoch(1992, 12, 20)
>>> k = Venus.illuminated_fraction(epoch)
>>> print(round(k, 2))
0.64
This method computes the time of the inferior conjunction closest to the given epoch.
Parameters: | epoch (Epoch) – Epoch close to the desired inferior conjunction |
---|---|
Returns: | The time when the inferior conjunction happens, as an Epoch |
Return type: | Epoch |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(1882, 12, 1.0)
>>> conjunction = Venus.inferior_conjunction(epoch)
>>> y, m, d = conjunction.get_date()
>>> print(y)
1882
>>> print(m)
12
>>> print(round(d, 1))
6.7
This function computes the approximate magnitude of Venus.
Parameters: |
|
---|---|
Returns: | Venus’ magnitude |
Return type: | float |
Raises: | TypeError if input values are of wrong type. |
>>> sun_dist = 0.724604
>>> earth_dist = 0.910947
>>> phase_angle = Angle(72.96)
>>> m = Venus.magnitude(sun_dist, earth_dist, phase_angle)
>>> print(m)
-3.8
This method computes the orbital elements of Venus for the standard equinox J2000.0 for a given epoch.
Parameters: | epoch (Epoch) – Epoch to compute orbital elements, as an Epoch object |
---|---|
Returns: | A tuple containing the following six orbital elements: - Mean longitude of the planet (Angle) - Semimajor axis of the orbit (float, astronomical units) - eccentricity of the orbit (float) - inclination on the plane of the ecliptic (Angle) - longitude of the ascending node (Angle) - argument of the perihelion (Angle) |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
>>> epoch = Epoch(2065, 6, 24.0)
>>> l, a, e, i, ome, arg = Venus.orbital_elements_j2000(epoch)
>>> print(round(l, 6))
337.731227
>>> print(round(a, 8))
0.72332982
>>> print(round(e, 7))
0.0067407
>>> print(round(i, 6))
3.394087
>>> print(round(ome, 5))
76.49782
>>> print(round(arg, 6))
55.068476
This method computes the orbital elements of Venus for the mean equinox of the date for a given epoch.
Parameters: | epoch (Epoch) – Epoch to compute orbital elements, as an Epoch object |
---|---|
Returns: | A tuple containing the following six orbital elements: - Mean longitude of the planet (Angle) - Semimajor axis of the orbit (float, astronomical units) - eccentricity of the orbit (float) - inclination on the plane of the ecliptic (Angle) - longitude of the ascending node (Angle) - argument of the perihelion (Angle) |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
>>> epoch = Epoch(2065, 6, 24.0)
>>> l, a, e, i, ome, arg = Venus.orbital_elements_mean_equinox(epoch)
>>> print(round(l, 6))
338.646306
>>> print(round(a, 8))
0.72332982
>>> print(round(e, 7))
0.0067407
>>> print(round(i, 6))
3.395319
>>> print(round(ome, 5))
77.27012
>>> print(round(arg, 6))
55.211257
This function computes the time of passage by the nodes (ascending or descending) of Venus, nearest to the given epoch.
Parameters: |
|
---|---|
Returns: | Tuple containing: - Time of passage through the node (Epoch) - Radius vector when passing through the node (in AU, float) |
Return type: | tuple |
Raises: | TypeError if input values are of wrong type. |
>>> epoch = Epoch(1979, 1, 1)
>>> time, r = Venus.passage_nodes(epoch)
>>> year, month, day = time.get_date()
>>> print(year)
1978
>>> print(month)
11
>>> print(round(day, 1))
27.4
>>> print(round(r, 4))
0.7205
This method computes the time of Perihelion (or Aphelion) closer to a given epoch.
Parameters: |
|
---|---|
Returns: | The epoch of the desired Perihelion (or Aphelion) |
Return type: | Epoch |
Raises: | TypeError if input values are of wrong type. |
>>> epoch = Epoch(1978, 10, 15.0)
>>> e = Venus.perihelion_aphelion(epoch)
>>> y, m, d, h, mi, s = e.get_full_date()
>>> print(y)
1978
>>> print(m)
12
>>> print(d)
31
>>> print(h)
4
>>> epoch = Epoch(1979, 2, 1.0)
>>> e = Venus.perihelion_aphelion(epoch, perihelion=False)
>>> y, m, d, h, mi, s = e.get_full_date()
>>> print(y)
1979
>>> print(m)
4
>>> print(d)
22
>>> print(h)
12
This method computes the time of the 1st station in longitude (i.e. when the planet is stationary and begins to move westward - retrograde - among the starts) closest to the given epoch.
Parameters: | epoch (Epoch) – Epoch close to the desired inferior conjunction |
---|---|
Returns: | Time when the 1st station in longitude happens, as an Epoch |
Return type: | Epoch |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(2018, 12, 1.0)
>>> sta1 = Venus.station_longitude_1(epoch)
>>> y, m, d = sta1.get_date()
>>> print(y)
2018
>>> print(m)
10
>>> print(round(d, 4))
5.7908
This method computes the time of the 1st station in longitude (i.e. when the planet is stationary and begins to move eastward - prograde - among the starts) closest to the given epoch.
Parameters: | epoch (Epoch) – Epoch close to the desired inferior conjunction |
---|---|
Returns: | Time when the 2nd station in longitude happens, as an Epoch |
Return type: | Epoch |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(2018, 12, 1.0)
>>> sta2 = Venus.station_longitude_2(epoch)
>>> y, m, d = sta2.get_date()
>>> print(y)
2018
>>> print(m)
11
>>> print(round(d, 4))
16.439
This method computes the time of the superior conjunction closest to the given epoch.
Parameters: | epoch (Epoch) – Epoch close to the desired superior conjunction |
---|---|
Returns: | The time when the superior conjunction happens, as an Epoch |
Return type: | Epoch |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(1993, 10, 1.0)
>>> conjunction = Venus.superior_conjunction(epoch)
>>> y, m, d = conjunction.get_date()
>>> print(y)
1994
>>> print(m)
1
>>> print(round(d, 2))
17.05
This method computes the time of the western elongation closest to the given epoch, as well as the corresponding maximum elongation angle.
Parameters: | epoch (Epoch) – Epoch close to the desired western elongation |
---|---|
Returns: | A tuple with the time when the western elongation happens, as an Epoch, and the maximum elongation angle, as an Angle |
Return type: | tuple |
Raises: | TypeError if input value is of wrong type. |
Raises: | ValueError if input epoch outside the -2000/4000 range. |
>>> epoch = Epoch(2019, 1, 1.0)
>>> time, elongation = Venus.western_elongation(epoch)
>>> y, m, d = time.get_date()
>>> print(y)
2019
>>> print(m)
1
>>> print(round(d, 4))
6.1895
>>> print(round(elongation, 4))
46.9571