Reply
Thread Tools
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#1
I am glad to announce SymPy (Computer Algebra System - CAS, written in pure Python), Integral, Derivative and Limit for Maemo 4 (Diablo).

Also, IPython 0.10.2 is now released, so SymPy is updated with better interface (icon, automatic definitions, etc) and simpler installation.

See the topics here in Talk Maemo.org :

SymPy (Computer Algebra System) for Maemo 4 & 5 & 6

IPython for Maemo 4 & 5 & 6

Integral - calculating mathematical integrals for Maemo 4 & 5

Derivative - calculating mathematical derivatives for Maemo 4 & 5

Limit - calculating mathematical limits for Maemo 4 & 5

SymPy and its dependency python2.5-dev on Maemo 4 take more than 30 MB after install.

Integral/Derivative/Limit and the TTF-DejaVu font dependency add more 8 MB, so you need approx. 40 MB free on your Maemo 4.

(* Important *)
For the users of Integral v1.1.4 and Derivative v1.0.0 for Maemo 4, which were not running because of the missing python2.5-dev dependency, the solution is :
- uninstall "Integral"/"Derivative"/"Limit" from the application manager (it will uninstall python-sympy_0.7.1-maemo3);
- update the application manager;
- install "Integral"/"Derivative"/"Limit" so that the new python-sympy (and python2.5-dev) will be installed.


I will continue to release new versions as well as other softwares for Maemo 4/5.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-03-10 at 14:20. Reason: IPython and SymPy updates
 

The Following 9 Users Say Thank You to rcolistete For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#2
Now "Derivative" is released for Maemo 4 (Diablo) and Maemo 5 (Fremantle), see the Maemo.org topic about "Derivative".

Compared to Nokia N900, "Derivative" on Nokia N810 is :
* slower to load (about 16 s instead of 7 s) on my N810 with cloned Maemo;
* has nicer font (DejaVu Sans Mono) for bidimensional output (next version for Maemo 5 will also have it);
* just a little bit slower on calculations.

So N8x0 users, be happy as your tablet is excellent to run Python, hence SymPy, Integral, Derivative, etc.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2011-11-02 at 02:42. Reason: N810 slower than N900
 

The Following 4 Users Say Thank You to rcolistete For This Useful Post:
Posts: 670 | Thanked: 367 times | Joined on Mar 2009
#3
rcolistete, thanks for remembering us N8x0 folks and for posting in this subforum! (I haven't paid attention to the other subforums for a year or so.)

I installed Integral and Derivative from the Application Manager. I ran them from the menu and nothing happened. So I went into the terminal, navigated to "/opt/derivative", entered "python derivative.py" and after a 20s or so pause got "ImportError: No module named timeit":

Code:
/opt/derivative $ python derivative.py
Traceback (most recent call last):
File "derivative.py", line 1008, in <module>
from sympy import *
File "/usr/lib/python2.5/site-packages/sympy/__init__.py", line 20, in <module>
from sympy.core import *
File "/usr/lib/python2.5/site-packages/sympy/core/__init__.py", line 8, in <module>
from expr import Expr, AtomicExpr
File "/usr/lib/python2.5/site-packages/sympy/core/expr.py", line 2020, in <module>
from mul import Mul
File "/usr/lib/python2.5/site-packages/sympy/core/mul.py", line 1197, in <module>
from numbers import Rational, igcd
File "/usr/lib/python2.5/site-packages/sympy/core/numbers.py", line 1993, in <module>
from function import FunctionClass
File "/usr/lib/python2.5/site-packages/sympy/core/function.py", line 43, in <module>
from sympy.utilities import default_sort_key
File "/usr/lib/python2.5/site-packages/sympy/utilities/__init__.py", line 13, in <module>
from runtests import test, doctest
File "/usr/lib/python2.5/site-packages/sympy/utilities/runtests.py", line 22, in <module>
from timeit import default_timer as clock
ImportError: No module named timeit
/opt/derivative $
I got the same error with integral:

Code:
/opt/integral $ python integral.py
Traceback (most recent call last):
File "integral.py", line 841, in <module>
from sympy import *
File "/usr/lib/python2.5/site-packages/sympy/__init__.py", line 20, in <module>
from sympy.core import *
File "/usr/lib/python2.5/site-packages/sympy/core/__init__.py", line 8, in <module>
from expr import Expr, AtomicExpr
File "/usr/lib/python2.5/site-packages/sympy/core/expr.py", line 2020, in <module>
from mul import Mul
File "/usr/lib/python2.5/site-packages/sympy/core/mul.py", line 1197, in <module>
from numbers import Rational, igcd
File "/usr/lib/python2.5/site-packages/sympy/core/numbers.py", line 1993, in <module>
from function import FunctionClass
File "/usr/lib/python2.5/site-packages/sympy/core/function.py", line 43, in <module>
from sympy.utilities import default_sort_key
File "/usr/lib/python2.5/site-packages/sympy/utilities/__init__.py", line 13, in <module>
from runtests import test, doctest
File "/usr/lib/python2.5/site-packages/sympy/utilities/runtests.py", line 22, in <module>
from timeit import default_timer as clock
ImportError: No module named timeit
/opt/integral $
Please let me know if I can try some other test for you.
__________________
* n810 since Feb 2009
* Most-used apps: Opera, gPodder, Panucci, Tomiku, Canola, Quasar, MaemoMapper, ATI85, Maemopad+, AisleRiot Solitaire, Anagramarama, Rapier, Gnumeric, pyRDesktop
* Mobile-friendly URLs of popular sites
 

The Following User Says Thank You to buurmas For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#4
Hi buurmas,

This is a unknown problem, so let me ask you to do some tests about SymPy :

- open an "X terminal" window;
- type "python" to launch the Python interactive shell;
- type from the cursor prompt :
>>> from sympy import *

Tell me if the error messages are present or not.

Thanks in advance,
Roberto
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 
Posts: 1 | Thanked: 2 times | Joined on Feb 2011
#5
Originally Posted by buurmas View Post
rcolistete, thanks for remembering us N8x0 folks and for posting in this subforum! (I haven't paid attention to the other subforums for a year or so.)

I installed Integral and Derivative from the Application Manager. I ran them from the menu and nothing happened. So I went into the terminal, navigated to "/opt/derivative", entered "python derivative.py" and after a 20s or so pause got "ImportError: No module named timeit":

Code:
/opt/derivative $ python derivative.py
Traceback (most recent call last):
File "derivative.py", line 1008, in <module>
from sympy import *
File "/usr/lib/python2.5/site-packages/sympy/__init__.py", line 20, in <module>
from sympy.core import *
File "/usr/lib/python2.5/site-packages/sympy/core/__init__.py", line 8, in <module>
from expr import Expr, AtomicExpr
File "/usr/lib/python2.5/site-packages/sympy/core/expr.py", line 2020, in <module>
from mul import Mul
File "/usr/lib/python2.5/site-packages/sympy/core/mul.py", line 1197, in <module>
from numbers import Rational, igcd
File "/usr/lib/python2.5/site-packages/sympy/core/numbers.py", line 1993, in <module>
from function import FunctionClass
File "/usr/lib/python2.5/site-packages/sympy/core/function.py", line 43, in <module>
from sympy.utilities import default_sort_key
File "/usr/lib/python2.5/site-packages/sympy/utilities/__init__.py", line 13, in <module>
from runtests import test, doctest
File "/usr/lib/python2.5/site-packages/sympy/utilities/runtests.py", line 22, in <module>
from timeit import default_timer as clock
ImportError: No module named timeit
/opt/derivative $
I got the same error with integral:

Code:
/opt/integral $ python integral.py
Traceback (most recent call last):
File "integral.py", line 841, in <module>
from sympy import *
File "/usr/lib/python2.5/site-packages/sympy/__init__.py", line 20, in <module>
from sympy.core import *
File "/usr/lib/python2.5/site-packages/sympy/core/__init__.py", line 8, in <module>
from expr import Expr, AtomicExpr
File "/usr/lib/python2.5/site-packages/sympy/core/expr.py", line 2020, in <module>
from mul import Mul
File "/usr/lib/python2.5/site-packages/sympy/core/mul.py", line 1197, in <module>
from numbers import Rational, igcd
File "/usr/lib/python2.5/site-packages/sympy/core/numbers.py", line 1993, in <module>
from function import FunctionClass
File "/usr/lib/python2.5/site-packages/sympy/core/function.py", line 43, in <module>
from sympy.utilities import default_sort_key
File "/usr/lib/python2.5/site-packages/sympy/utilities/__init__.py", line 13, in <module>
from runtests import test, doctest
File "/usr/lib/python2.5/site-packages/sympy/utilities/runtests.py", line 22, in <module>
from timeit import default_timer as clock
ImportError: No module named timeit
/opt/integral $
Please let me know if I can try some other test for you.
You have to install python2.5-dev package to get the missing modules (about 18Mb). To save space on your disk its also possible to
(1) install above package,
(2) copy your /usr/lib/python2.5 folder to a temporary directory,
(3) deinstall package,
(4) start integral or derivative from terminal, watch error message
(5) copy the missing module from your temporary folder,
(6) repeat steps (4) and (5) until no error occurs. - there are 3 or 4 more modules missing
(7) delete your temporary folder
 

The Following 2 Users Say Thank You to petzik For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#6
(* Solved, read the next post. *)

I confirm what petzik said. Only on Maemo 4 the "python2.5" package does not contain all of the Python 2.5.2 files (on Maemo 5, "python2.5" has the usual Python 2.5.4 files).

So SymPy on Maemo 4 needs another dependency, "python2.5-dev" which contains the missing files "doctest.py", "unittest.py" and "timeit.py" in "/usr/lib/python2.5/". I have had "python2.5-dev" installed on my Nokia N810 so I overlooked this problem. Sorry for my fault.

So the (temporary) solution is to install the "python2.5-dev" package (14.8 MB after install) :
- open the X-terminal;
- become root by typing "sudo gainroot";
- type "apt-get install python2.5-dev" and confirm.

One problem on Maemo 4 is that "Integral"/"Derivative" will install python-sympy, python2.5-dev and ttf-dejavu, about 40 MB. For N8x0 users without cloned Maemo in internal SD, it can be an issue to have this free space.

(* Released *)
I will soon release a new version of "python-sympy" for Maemo 4 including "python2.5-dev" as a dependency.

If somebody has a better and easy to use solution for this problem, feel free to share here.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2011-10-23 at 19:08. Reason: Issue solved
 

The Following 2 Users Say Thank You to rcolistete For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#7
"Integral", "Derivative" and SymPy for Maemo 4 Diablo are updated, solving the dependency problem.

(* Not so easy... *)
Just update the catalog in Application Manager and install the new versions of "Integral"/"Derivative".
(* It is need to uninstall Integral v1.1.4 / Derivative 1.0.0 for Maemo 4 and then install again. *)

Pay attention because the dependencies on Maemo 4 Diablo (python-sympy, python2.5-dev, ttf-dejavu) can take about 40 MB after install.

But they are common to "Integral", "Derivative" and "Limit" (released today on extras repository, I will announce it here).
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2011-10-24 at 11:56.
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#8
"Limit" (calculating mathematical limits) is released for Maemo 4 Diablo as well as Maemo 5 Fremantle.

"Limit" on Nokia N810 loads approx. 9 s slower than on Nokia N900 and the calculations are also slower (about half the speed).
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2011-11-02 at 02:40. Reason: N810 slower than N900
 
Posts: 670 | Thanked: 367 times | Joined on Mar 2009
#9
Strangely, I still have the problem. I don't appear to have python2.5-dev installed yet; that is, it does not appear in the PackageView program.

Here's what I did. I ran the Application Manager, saw the updates to Integral & Derivative, installed them, and ran them but nothing happened. I also installed Limit -- same thing.

For completeness, here is the test you requested earlier (this was run after doing all the things I mentioned above):

Code:
~ $ python
Python 2.5.2 (r252:60911, Sep 8 2008, 19:47:42)
[GCC 3.4.4 (release) (CodeSourcery ARM 2005q3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from sympy import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.5/site-packages/sympy/__init__.py", line 20, in <module>
from sympy.core import *
File "/usr/lib/python2.5/site-packages/sympy/core/__init__.py", line 8, in <module>
from expr import Expr, AtomicExpr
File "/usr/lib/python2.5/site-packages/sympy/core/expr.py", line 2020, in <module>
from mul import Mul
File "/usr/lib/python2.5/site-packages/sympy/core/mul.py", line 1197, in <module>
from numbers import Rational, igcd
File "/usr/lib/python2.5/site-packages/sympy/core/numbers.py", line 1993, in <module>
from function import FunctionClass
File "/usr/lib/python2.5/site-packages/sympy/core/function.py", line 43, in <module>
from sympy.utilities import default_sort_key
File "/usr/lib/python2.5/site-packages/sympy/utilities/__init__.py", line 13, in <module>
from runtests import test, doctest
File "/usr/lib/python2.5/site-packages/sympy/utilities/runtests.py", line 22, in <module>
from timeit import default_timer as clock
ImportError: No module named timeit
>>>
On a hunch, I tried to check for updates again in the Application Manager with Extras-devel enabled, but there was nothing for these programs.
__________________
* n810 since Feb 2009
* Most-used apps: Opera, gPodder, Panucci, Tomiku, Canola, Quasar, MaemoMapper, ATI85, Maemopad+, AisleRiot Solitaire, Anagramarama, Rapier, Gnumeric, pyRDesktop
* Mobile-friendly URLs of popular sites

Last edited by buurmas; 2011-10-24 at 02:59. Reason: clarification
 

The Following User Says Thank You to buurmas For This Useful Post:
Posts: 670 | Thanked: 367 times | Joined on Mar 2009
#10
I installed python2.5-dev from the terminal (sudo apt-get) and now everything appears to be working. Perhaps the dependencies on SymPy still aren't correctly being handled?

Code:
~ $ sudo apt-get install python2.5-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libmimedir-gnome0 libgpepimc0 libeventdb2
madplay libsoundgen0 mediabox-compat-theme
gpe-calendar libtododb0 libhandoff0
libxsettings-client0 libgpevtype1
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
python2.5-distutils
The following NEW packages will be installed:
python2.5-dev python2.5-distutils
0 upgraded, 2 newly installed, 0 to remove and 7 not upgraded.
Need to get 4212kB of archives.
After unpacking 17.0MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
WARNING: The following packages cannot be authenticated!
python2.5-distutils python2.5-dev
Install these packages without verification [y/N]? y
Get:1 http://repository.maemo.org diablo/free python2.5-distutils 2.5.2-1osso4 [570kB]
Get:2 http://repository.maemo.org diablo/free python2.5-dev 2.5.2-1osso4 [3643kB]
Fetched 4212kB in 31s (134kB/s)
Selecting previously deselected package python2.5-distutils.
(Reading database ... 45578 files and directories currently installed.)
Unpacking python2.5-distutils (from .../python2.5-distutils_2.5.2-1osso4_armel.deb) ...
Selecting previously deselected package python2.5-dev.
Unpacking python2.5-dev (from .../python2.5-dev_2.5.2-1osso4_armel.deb) ...
Setting up python2.5-distutils (2.5.2-1osso4) ...
Setting up python2.5-dev (2.5.2-1osso4) ...
~ $ python
Python 2.5.2 (r252:60911, Sep 8 2008, 19:47:42)
[GCC 3.4.4 (release) (CodeSourcery ARM 2005q3-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from sympy import *
>>>
__________________
* n810 since Feb 2009
* Most-used apps: Opera, gPodder, Panucci, Tomiku, Canola, Quasar, MaemoMapper, ATI85, Maemopad+, AisleRiot Solitaire, Anagramarama, Rapier, Gnumeric, pyRDesktop
* Mobile-friendly URLs of popular sites

Last edited by buurmas; 2011-10-24 at 03:19. Reason: added more to the code section
 

The Following User Says Thank You to buurmas For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 20:14.