IDL2Matlab
automatically partially converts IDL code to MATLAB / Octave code.
However, this project appears to be abandoned; there haven’t been updates in a few years.
I avoid converting code if possible, because it can introduce subtle errors.
Here are some alternatives to run the unmodified IDL code for free.
Install idl2matlab for Linux: download prereqs and code:
apt install libbison-dev flex
git clone https://github.com/farhi/idl2matlab
cd idl2matlab
Prepare to install in $HOME directory
./configure --prefix=$HOME
Edit Makefile
CFLAGS = -g -fno-stack-protector
Compile and install under $HOME
make && make install
The MATLAB code that idl2matlab produces uses a sort of cumbersome Matlab script that calls its own Matlab functions to do common tasks.
The converted code can be further optimized.
Still, probably easier than doing it all manually.
For any Git remote repo, you can undo (delete from git history) previous commits to eliminate wrong files via git push.
If you only git revert, this leaves the big mess inside the .git directory, slowing down operations and wasting space.
Implicit in this procedure is that those with write access to the remote Git repo can overwrite history, potentially causing permanent file loss.
Remember that Git is a revision tracking system, NOT a backup system.
Restrict Git remote write access: for GitHub, from the repo branches Settings page, Add Rules according to the needs.
The Python
Skyfield
library replaces the
deprecated PyEphem.
Skyfield brings functionality for Python that the NAIF SPICE package has for C, FORTRAN, IDL, and MATLAB.
Specifically, performing high-precision astronomical calculations.
AstroPy
has more comprehensive astronomical functions.
Generally the latest compilers are available from Homebrew for Linux and macOS.
Instead of putting Homebrew environment variables into ~/.profile, consider putting them into ~/brew.sh activate them when needed, instead of constantly being active.
Either choice is fine of course.
Some older Prolific-based USB interfaces–such as used to program two-way radios–can fail to be recognized on Windows upon first plugin.
Looking in Windows Device Manager, the device shows up with a yellow caution sign, and an error message like:
This device cannot start. (Code 10) {Not Enough Quota}
Not enough virtual memory or paging file quota is available to complete the specified operation.
Usually the fix is to install an older version of the Prolific driver that is less sensitive to Prolific chip version.
We have experienced that the Prolific 3.6 - 3.8 drivers are subject to this issue.
We can’t vouch for the older Prolific 3.2 drivers available but they do work.
Many PyPI packages can be installed with pip as usual.
On Windows, the appropriate version of Microsoft Visual Studio may be required to compile packages from source.
pypy3 -m pip install numpy
Some packages don’t work yet easily, particularly on Windows where the compilers and prerequisite libraries may need to be manually built.