These programs are based on the VSOP87 theory, Variations séculaires des orbites planétaires. VSOP was developed and is maintained (updated with the latest data) by the scientists at the Bureau des Longitudes in Paris.
hvfSunMoonPlanets.zip
is a collection of Python3-programs to show data for Sun, Moon,
the Planets, Solstices, Perihels, Moon Phases and Perigees.
Longitude, latitude, right ascension, declination, altitude,
azimut, hour angle, time of rising, transition, and setting
and other data are calculated for Sun, Moon, and the planets.
It contains the following Python files:
$ Perihel.py 2021 2022 ./Perihel.py Version 1.0 hvf 30.03.2021 based on VSOP87 Ephemerides Perihelion UTC Aphelion UTC Date Time Radius(au) Radius(km) Date Time Radius(au) Radius(km) 2021-01-02 13:51 0.98325706 147093162 2021-07-05 22:27 1.01672922 152100525 2022-01-04 06:54 0.98333654 147105052 2022-07-04 07:10 1.01671536 152098453And here the values for 1896 until 1900; we see that the perihelion date meanders between December and January - the calendar years 1896 and 1898 have two perihelions, whereas in 1897 and 1899 there is none. But each year has one aphelion, of course.
$ Perihel.py 1896-1900 ./Perihel.py Version 1.0 hvf 30.03.2021 based on VSOP87 Ephemerides Perihelion UTC Aphelion UTC Date Time Radius(au) Radius(km) Date Time Radius(au) Radius(km) 1896-01-01 18:16 0.98321777 147087285 1896-07-03 20:50 1.01675230 152103978 1896-12-31 10:15 0.98327822 147096327 1897-07-02 03:38 1.01676740 152106237 1898-01-02 12:14 0.98326597 147094495 1898-07-02 15:02 1.01670900 152097502 1898-12-31 22:03 0.98323968 147090562 1899-07-04 08:57 1.01678777 152109284 1900-01-02 06:25 0.98326336 147094105 1900-07-02 13:23 1.01679003 152109622Here is the complete list of all perihelions and aphelions from 1601 (i.e. December 1600) until 2500: Perihelions and Aphelions from 1601 until 2500.
The harmonic oscillator is a standard problem in elementary physics,
and a simple pendulum is a populaar application of the harmonic
oscillator as long as the amplitude is small such that non-linear
effects can still be neglected.
The problem of two or more pendulums hanging on each other is far more
complicated. Analytical solutions, even for small amplitudes, are hard
to find.
My program Nfold-pendulum.py solves this problem numerically.
Using the Lagrange formalism, numerical integration of the equation of
motion is performed and a graphical display is produced.
The point masses are connected with massless rods. Units are kg for
the masses, meter for the rods, and degrees for the angles and
degrees/sec for the angular velocities.
The number of pendulums, N, is unlimited.
The gravitational constant g is set to 10 m/s^{2}.
The total energy shown on the display stays constant, this means that
the calculations do not lose precision.
Nfold-pendulum.zip
contains the code.
This video shows the standard case
$ Nfold-pendulum.py 2 2 1 1 2 180 -90 0 0
And here is a more complicated case with six coupled pendulums
$ Nfold-pendulum.py 6 2 1 2 1 2 1 1 1 1 1 1 1 180 180 180 180 180 -90 0 0 0 0 0 0 <- arms -> <- masses-> <- angles -> <- angular veloc. ->
fehashmac is a collection of 52 publicly known hash algorithms
integrated into a command-line utility. FEHASHMAC also contains a set
of known test vectors and results for each algorithm such that the
correct implementation for each hardware platform and compiler
version can directly be verified.
See the README
for more information. The current release is also available
here.
Sudoku is a well-known pastime that appealed to my penchant for
recursive algorithms. I therefore started in 2005 to write a sudoku
PERL script that will be capable to solve any square sudoku problem
with either square or rectangular subsets or subsets of any shape. The
maximum dimension is limited to 26x26.
Diagonals are also supported.
The script is written in PERL5. Once the input parameters are verified,
a Postscript file may be produced with the input configuration for
printout, possibly later converted to PDF.
© Copyright Harald von Fellenberg (2021)