v 2.0, Nov. 1st, 2013
- Support of Maxima 5.31.3
- Auto line breaking of Mathjax enabled
- Improvement of rendering performance on Jerry Beans MR1 or later Android OS.
- Scaling of Maxima main view and Manual view are now preserved
- Reuse by touch is improved so that input command lines displayed
during batch() or playback() are now reusable.
- Entire rewriting of "About MoA" (this document)
- MoA Users Manual is now included
- Lapack can't be loaded.
Download "Maxima on Android"
Please visit here for the download of Maxima on Android from Google Play.
You can perform many many math operations such as integral, differentiation, matrix operations, rational numbers, symbolic treatment of constants such as pi, e, euler's gamma, symbolic and numerical treatment of special functions such as sin(x), cos(x), log(x), exp(x), zeta(s).
Maxima on Android is a port of Maxima on the Android operating system. Thanks to Sylvain Ageneau' effort on porting Embeddable Common Lisp to the Android OS, the latest Maxima code runs nicely on ECL on Android with very small changes to the source code.
The installation of the software requires total of 90MB on the storage. 30MB needs to be installed on the internal storage. The rest 60MB can be installed either on the external or the internal storage. The first run of the apk will ask you where you want the 60MB to be installed.
Then you can enjoy Maxima / Macsyma on your mobile phone or tablet based on Android OS.
Yasuaki dot honda at gmail dot com, Chiba, Japan
When first run, the program will display the messages seen in the left picture (without showing the progress dialog box). You may choose the internal or external storage. If the available capacity is less than necessary, the one (or both) choice will be grayed out. After selecting one radio button, you can click "Install" button or "Cancel" button.
If you press "Install" button, the installation starts and the progress dialog box appears on the screen until installation finishes.
If you press "Cancel" button, this additional install process is terminated and nothing will be installed in addition. Then entire program will quit itself. Later run of this program will start again from this install window in such a case as necessary binary and data are not yet installed.
Start up screen
The white large space below (%i1) is the place for displaying the command you typed for execution by Maxima, and also the place for displaying corresponding result.
Enlarge / shrink by fingers
You can enlarge/shrink the displayed text (including math formula) by using two fingers in a standard ways.
Maxima command input area
In the left picture, the bottom rectangle area surrounded by the orange lines is called the Maxima command input area. The area may not be orange line surrounded in the beginning, but if you touch the area, the orange lines appear, indicating that the input focus is given to this text edit area.
This is a standard text input field and many edit aids (such as software keyboard, cut and paste) are available.
Here you can enter any Maxima commands. Then Maxima performs the computation according to the command. The result will be rendered beautifully using MathJax 2.0, then displayed along with the command in the white space above the orange surrounded box.
Re-using the previous input by touch
All the previous input commands displayed after the prompt are touchable. When touched, it appears in the Maxima command input area. This is a very handy command history mechanism.
Tap for Execution of Examples
In the Maxima manual, so many examples are presented as session examples. On touching one of them, you can execute such examples in the Maxima itself.
Touching a session example (that appear in gray rectangle, with each input / output with prompts), the viewing of manual is finished and getting back to Maxima. Then, the first input line of the session example is copied to the Maxima command input area.
You can type "enter" key to execute the command, or you can edit it as usual before execution.
For further example execution, you can use "Next example" menu. This will paste the next input line of the session example. Repeating to choose "Next example" from menu will paste next ones into the Maxima command input area.
Maxima commands for beginners
You need to know syntax and semantics of the Maxima commands. They are not very difficult, but there are a number of such commands. Documentation can be found here in English or here in Japanese.
The followings are simple command examples. You may note that all lines are ended with a semi-colon. Actually a line may be ended with a semi-colon or a dollar sign.
You can just copy each of the followings in the browser and paste it into the command input area.
[34^2, 9+10*2-8/10, 8!, sqrt(162)];
Maxima Command Examples
Maxima implements example() command which works in Maixma on Android as well. Try the followings:
Maxima manual is available in the menu. You can choose the language of the manual from the settings menu. Japanese, English, and German languages are available.
Gnuplot for graph drawing
Now the graph drawing is supported with gnuplot 4.6. You can use the following commands:
plot2d, plot3d, implicit_plot, countour_plot, draw, draw2d, draw3d
Here are some examples of graph drawing commands:
Also, after you are back from graph window to the Maxima session screen, you can redraw the graph again by choosing Graph in the menu.
Working with your software keyboard
The best software keyboard suitable for math input is the Android keyboard (IMHO). If you are using Kanji input keyboard and / or some special software keyboard for your language, that is usually NOT the best one for use with Maxima on Android.
It is easy to change one software keyboard to the other. 'Long pressing' the Maxima command input area will pop up a list of actions you can do. Among them is for selecting the software keyboard for use. Try changing the software keyboard to Android keyboard.
Save/Restore the Maxima session
In the Session menu, you can see Save / Restore / Playback sub menus. Choosing one of them, you can save the current session, restore the saved session, and playback the display of the results.
User level customization in maxima-init.mac
If /data/local/tmp/maxima-init.mac exists, the file is loaded automatically when Maxima starts up. Arbitrary maxima commands and programs can be placed in the file. The directory /data/local/tmp is writable by ADB (Android Debug Bridge) so it is convenient to push maxima-init.mac from your PC/Mac.
Due to a bug in WebView of Android OS 3.x and 4.0.x, Maxima manual in MOA causes link error when navigating. From MOA 1.8, I have added a workaround for these OS versions.
You need to separately install Maxima manual using ADB (Android Debug Bridge, a tool provided in Android SDK).
You need to download a manual package from here. Then you extract the zip archive. You have a folder "maxima-doc" as the result. Then, in the terminal program of your OS,
% adb push maxima-doc /data/local/tmp/maxima-doc
This will push the document files into /data/local/tmp/maxima-doc folder in your Android device.
From MOA 1.8, if /data/local/tmp/maxima-doc folder exists, files in the folder will be used for manual viewing, and this will NOT cause any link error.
To terminate the Maxima on Android program, you can choose Quit in the menu.
From MOA 1.5, I have added a command to display misc information of this software. Please choose About MoA in the menu.