Commit Graph

167 Commits

Author SHA1 Message Date
Don Cross
bbd16d299a Minor cleanup in Python documentation. 2021-04-01 10:43:37 -04:00
Don Cross
4cc2a14a38 Python docs: provide mechanism for documenting constants.
Python docstrings don't work for variables, so I hacked
a special comment format for helping pydown generate Markdown
text for the README.md for the exported constant KM_PER_AU,
or any other constants I may want to expose in the future.
2021-04-01 09:39:51 -04:00
Don Cross
c3c8ffeb0f Finished documenting ObserverVector() in topic indexes. 2021-03-31 21:49:35 -04:00
Don Cross
4e868732c5 PY: Implemented ObserverVector function and unit test. 2021-03-31 21:10:24 -04:00
Don Cross
cef88bcb79 Added missing topic index entries in Python and JavaScript README.md.
I forgot to add topic index entries for the new functions
IdentityMatrix and Pivot to the README.md files for
JavaScript and Python. Fixed it.
2021-03-27 21:12:59 -04:00
Don Cross
5cd0e60d74 Updated obsolete comments about how Delta-T is calculated.
Astronomy Engine used to use USNO historical and predictive tables,
along with linear interpolation, to calculate Delta-T values.
The problem with the USNO tables is, they did not work well outside
a few centuries around present day.

Later I replaced with Espenak & Meeus piecewise polynomials
that work over a much larger time span (thousands of years).
I just discovered there were still comments in the code referring
to the USNO models. I updated the ones I could find to reflect
the current truth about how the code works today.
2021-03-27 19:44:37 -04:00
Don Cross
6f98095cae Reworked ecliptic coordinate types to contain a vector type.
This is technically a breaking change, but only for clients
that use the cartesian coordinates in an ecliptic coordinate
return type.  Before now, the coordinates were just separate
floating-point members ex, ey, ez. Now they are a standard
vector type.

The purpose is to allow seamless interfacing with vector
rotation functions, and to be consistent with the equatorial
coordinate types.
2021-03-27 12:26:27 -04:00
Don Cross
0426272da4 Eliminated obsolete function VectorFromEquator.
Now that equatorial coordinates include both angles
and cartesian coordinates, there is no need for the
VectorFromEquator function. It has been removed
from all four supported languages.

The expression "VectorFromEquator(equ, time)" can be
replaced with "equ.vec" in any calling code.
2021-03-27 08:24:42 -04:00
Don Cross
a97fc7da9c Ported IdentityMatrix, Pivot functions to Python. Added tests and camera demo. 2021-03-27 05:19:27 -04:00
Don Cross
9c940d7432 Fixed #69 - Support calculating Pluto without any year range limit.
Fixed lingering documentation and code that refers to a limited
year range for calculating Pluto's position.
2020-07-08 19:20:47 -04:00
Don Cross
2f13b463f1 Fixed two documentation formatting mistakes. 2020-06-14 16:49:02 -04:00
Don Cross
100417dbe3 Fixed #52 - Finished documenting transit functions.
This completes work on eclipses and transits.
2020-06-14 15:05:01 -04:00
Don Cross
f9ef46c5cc Implemented Python version of transit search functions. 2020-06-14 14:55:52 -04:00
Don Cross
0a4e0c48a0 Documentation fixes for eclipse functions.
Added global/local solar eclipse functions to topic indexes for
C#, JavaScript, and Python.

Revised wording "eclipse found may be" --> "eclipse may be".

Python:
- Added missing Attributes section in class GlobalSolarEclipseInfo.
- Added classes EclipseEvent, LocalSolarEclipseInfo.
- Added stub functions SearchLocalSolarEclipse, NextLocalSolarEclipse.
2020-06-06 10:42:57 -04:00
Don Cross
9187e3e966 Python: Implemented GlobalSolarEclipse. 2020-06-04 19:01:39 -04:00
Don Cross
a8b29b4509 Renamed lunar eclipse info member from 'center' to 'peak'.
This makes the name consistent with the solar eclipse fields.
2020-05-25 21:07:36 -04:00
Don Cross
30c2141ca6 Added documentation about lunar eclipse functions to topic indexes. 2020-05-16 20:41:57 -04:00
Don Cross
fe18eb81e4 Implemented Python version of lunar eclipse predictor. 2020-05-16 17:38:00 -04:00
Don Cross
9ea6a0664f Python: Use Espenak/Meeus formula for calculating Delta T. 2020-05-15 19:28:54 -04:00
Don Cross
540d9d7cef Added constellation function to Python code. 2020-05-03 21:37:28 -04:00
Don Cross
f754a6de82 Fixed #58 - Solar System Barycenter, Earth/Moon Barycenter.
Can now calculate the heliocentric Solar System Barycenter (SSB)
and Earth/Moon Barycenter (EMB).

Changes made in C, C#, JavaScript and Python:
Added new body codes SSB, EMB.
Added support for calculating both in HelioVector functions.
Verified that all calculations match NOVAS.
Verified that all calculations match each other across languages.
2020-04-29 21:53:57 -04:00
Don Cross
7892b797ba Python: planet apsis search is working. 2020-01-06 20:49:49 -05:00
Don Cross
703f924210 Python: Added Time.Parse function.
Added function Time.Parse to convert a UTC date/time string
into a Time object. People should not have to keep reinventing
that wheel. I will be able to simplify astro_demo_common.py.
2020-01-03 14:03:01 -05:00
Don Cross
1fde8049c6 Added check_internal_links.py utility to look for broken links in markdown files.
Currently I ignore any errors when checking the C# documentation,
because there are broken links for the rotation functions I
haven't started adding yet.  I will turn that error check back on
once I finish those functions.
2019-12-21 15:41:39 -05:00
Don Cross
330b8447f3 Fixed #57 - Finished preamble for Python documentation.
Python documention: corrected internal links in Markdown prefix.
This concludes support for Python documentation fixes.
2019-12-19 13:46:15 -05:00
Don Cross
07e68707a6 Add prefix markdown to Python documentation. 2019-12-19 13:35:56 -05:00
Don Cross
fce1468a1c Fixed #55 - Python documentation internal links translated to Markdown.
pydown.py now searches description text for internal links
and expands them properly for Markdown file README.md.
For example:  "#Body" ==> "[`Body`](#Body)".
Fixed a couple of incorrect "Astronomy_..." names in Python docs.
2019-12-18 17:07:00 -05:00
Don Cross
7040ff8684 Cleaned up documented return types for Python functions.
Never use pound-signs inside documentation for Python return types.
Automatically create internal link just like for function parameter types.
Added special case logic in pydown.py for "Time or `None`".
Fixed minor documentation mistakes in JS version.
2019-12-18 16:53:13 -05:00
Don Cross
e168f37ac5 Python: Finished rotation logic and unit tests.
I thought I had finished the rotation functions last time,
but I missed a couple of them. Finishing the unit tests
revealed that, thankfully.
2019-12-18 10:05:00 -05:00
Don Cross
98deea4523 Python: Finished coding rotation functions. Need to finish test cases. 2019-12-17 20:32:37 -05:00
Don Cross
85d9113f77 Python: Added more rotation functions and unit tests. 2019-12-15 21:24:32 -05:00
Don Cross
d572edb10f Python: Implemented Rotation_ECL_EQJ. 2019-12-15 20:41:03 -05:00
Don Cross
126cc04d1d Python: Implemented CombineRotation. 2019-12-15 20:29:41 -05:00
Don Cross
8c590e4449 Python: implemented InverseRotation function. Cleaned up trailing whitespace.
Also added missing check in Python apsis test where
I did not verify that each apsis kind was correct.
2019-12-15 20:23:35 -05:00
Don Cross
92cc2d9783 Python: starting to implement rotation functions and associated unit tests. 2019-12-15 19:51:30 -05:00
Don Cross
4a449cc0a1 Python: InverseRefractionAngle, RotateVector. Minor doc fixes. 2019-12-15 13:11:47 -05:00
Don Cross
6440743052 Python: Added function RefractionAngle.
Separate the calculation of refraction angle from the Horizon function.
Added missing documentation for the parameters of the Horizon function.
Added definition of class Spherical. Not yet used, but soon will be.
2019-12-15 12:25:17 -05:00
Don Cross
ab8d8ba295 Python: Starting to port new rotation code.
Split _precession into _precession_rot/_precession.
Split _nutation into _nutation_rot/_nutation.
Removed trailing whitespace from readme.
2019-12-15 11:34:16 -05:00
Don Cross
ab648ac6ab Finished first pass of Python documentation.
Also make pydown.py generate an error, not just a warning,
for missing documentation, now that all the documentation is filled out.
2019-07-25 23:00:53 -04:00
Don Cross
44084cdf20 Python: added more documentation. 2019-07-19 21:33:19 -04:00
Don Cross
c64880a789 Python: added documentation for function SearchRiseSet. 2019-07-19 21:23:52 -04:00
Don Cross
91e4c7c8d2 Python: added documentation for function SearchHourAngle. 2019-07-19 21:11:54 -04:00
Don Cross
f7bda9890c Python: added documentation for function SearchPeakMagnitude. 2019-07-19 21:05:19 -04:00
Don Cross
972e43e952 Python: added documentation for function Illumination. 2019-07-19 21:01:13 -04:00
Don Cross
712f334146 Python: added documentation for class IlluminationInfo. 2019-07-19 20:57:20 -04:00
Don Cross
746dbe2409 Python documentation: remove extraneous blank lines from Markdown. 2019-07-17 20:21:36 -04:00
Don Cross
3ad7c7d9ec Python: Documented moon quarter type and functions. 2019-07-17 20:17:04 -04:00
Don Cross
8287a211a9 Python: added more documentation. 2019-07-17 20:09:34 -04:00
Don Cross
453e06e943 More documentation work.
In C code, replaced HTML italics with Markdown emphasis markers.
Added warnings for Python symbols with missing documentation.
Documented Python class Apsis.
2019-07-17 19:46:33 -04:00
Don Cross
8a18cdc58a Python: include documentation about function return values in Markdown. 2019-07-13 17:48:15 -04:00