Notices


Reply
Thread Tools
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#1
"Derivative" is an easy to use free and open-source (LGPL v3) application to calculate mathematical derivatives with many features :
* ordinary and partial derivatives from 1 to 3 variables;
* multiple derivatives;
* calculation of gradient, divergent, curl and laplacian in 3 dimensions and different coordinate systems (cartesian, cylindrical and spherical); (* Only on Maemo 4/5 for the moment *)
* 5 simplification methods for non-numerical results;
* option to show the calculation time;
* option to show the not calculated derivative before the result;
* 7 output types : simple, bidimensional, LaTeX, (MathML), C, Fortran, (Javascript), (Python/SymPy);
* copy&paste available in all entry fields and also in the result, allowing copying the result to anywhere;
* history and line completion editing in the input expressions. (* Only on Maemo 4/5 for the moment *)

See the Derivative web site : http://www.robertocolistete.net/derivative/.

"Derivative" runs on :
- Sailfish OS with Python 3.4, SymPy 0.7.5 and Qt5/PyOtherSide (v0.6 released in 22/05/2014 at OpenRepos.net);
- Maemo 4 (Nokia N800/N810), Maemo 5 (Nokia N900) or any smartphone/tablet/computer where Python, SymPy and PyQt are available.

SymPy is a computer algebra system (CAS) written in pure Python, it is free and open source project, see http://sympy.org/. SymPy version 0.7.3 (14/07/2013) is available for Maemo 4 (Diablo) and Maemo 5 (Fremantle), and SymPy 0.7.5 for Python 2.7 and Python 3.x is available on Sailfish, see the SymPy thread in Talk Maemo.org.

Screenshots of Derivative

On Sailfish :


On Maemo 5 :


On Maemo 4 :


On Maemo 5 :


Installing Derivative on Sailfish

Derivative v0.6 (22/05/2014) released.

Derivative v0.7 (26/05/2014) released.

Derivative for Sailfish OS uses Python 3 and PyOtherSide, so you need Sailfish v1.0.3.8 (31/01/2014) or newer (so they are in the official Jolla repositories).

Install Warehouse (OpenRepos.net client) for Sailfish OS, see the Jolla Tides guide with screenshots.
Then open Warehouse, search for "Derivative", enable the repository, then install it.

Derivative takes only 0.4 MB after installation, but its dependency (which is automatically installed) "python3-sympy" (SymPy), if not installed, takes approx. 30 MB. Python 3 and PyOtherSide will also be installed if not already installed.

Installing Derivative on Maemo 4 & 5

(16/10/2011)
Derivative v1.0.0 is available for Maemo 5 (Fremantle) in the extras repositories and Maemo.org Downloads
:
* 1st public release for Maemo 4 Diablo and Maemo 5 Fremantle on extras-devel/extras-testing/extras repository;
* using SymPy 0.7.1 (07/2011);
* time to load is approx. 16 seconds on Nokia N810 and 7 seconds on Nokia N900 @ 600 MHz.

(22/10/2011)
Derivative v1.0.2 for Maemo 4 (Diablo) is in extras repository as well as Maemo.org Downloads :
* depends on python-symPy_0.7.1-maemo4 which fixes the missing dependency of python2.5-dev on Maemo 4 Diablo;
* saves the last used coordinate system;
* uses 'Symplify terms' as the default simplification method.

For the users of Derivative v1.0.0 for Maemo 4, which was 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.


The "About" dialog shows "In loving memory of my wife Lorena" because unfortunately she left this world in 19/09/2011.

Python, PyQt and SymPy will also be installed if not installed before.

"Derivative" is small (60 KB) but it installs "SymPy" (about 18.5 MB after install, with .pyc compiled Python files). "Derivative" and "SymPy" are optified on Maemo 5.

On Maemo 4 (Diablo) "Derivative" and its dependencies takes about 40 MB after install :
* SymPy (about 18.5 MB);
* python2.5-dev for SymPy, about 15 MB after install;
* "ttf-dejavu" (7,7MB after install) font because the Monospace font on Maemo 4 lacks many mathematical symbols for bidimensional output, so DejaVu Sans Mono is used.

For Maemo 5 users, please help promote "Derivative" (v1.0.0 promoted in 30/10/2011) to extras repository by voting in :
Derivative 1.0.0-1fremantle1

See also "Integral" and "Limit" for Maemo 4 & 5 & Sailfish, which calculate mathematical integrals and limits.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.

Last edited by rcolistete; 2014-05-27 at 04:56. Reason: Derivative v0.7 for Sailfish released
 

The Following 11 Users Say Thank You to rcolistete For This Useful Post:
Posts: 536 | Thanked: 81 times | Joined on May 2011 @ Russia
#2
hey i dont know how to use it. can u give a lil tutorial? i have started differentiation in my uni and this would be helpful. can this solve equations which use the chain or the product rule? or is it just to find the derivative of k or x? plx explain how to use thansks
 
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#3
In the Derivative mode (there are also Grad, Div, Curl and Laplacian modes), just :
- type the expression to derivate in the "Expression" field, using the syntax shown in "Help";
- choose which variable with respect to derivative in "Var.1" field, and the number of multiple derivatives (e.g. 2 for second derivative) in "#" field. For partial derivatives, "Var.2" and "Var.3" can also be used.
- type enter in any field to calculate;
- see the "Settings" for many options.

zurrain101, "Derivative" does not solve equations. If you tell me exactly what you want maybe SymPy can be useful to make a sequence of calculations using derivatives, etc.

And try to learn and calculate by hand in your Calculus classes. This software is an aid to calculate more difficult derivatives and differential operators (gradient, etc).

Feel free to tell me your opinion, make questions, 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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#4
Comparing "Derivative" with "SymPy" :

- everything "Derivative" calculates uses Python/SymPy, but "Derivative" is a lot easier to use;

- launching SymPy and typing "simplify(diff(sqrt(x/(1+x**3)),x,x))" is easy, but "Derivative" has time measuring, shows non-calculated derivative, has zoom in/out for output, many simplification options, output types, etc;

- SymPy does not know how to calculate gradient, divergence, curl and laplacian, it needs to be programmed to do it, like it is done in "Derivative" (see the end of the source code);

- it is better to use SymPy (interactive shell, i.e., tapping the SymPy icon) when it is needed a sequence of calculations, like derivate some expression, use the result in a equation, solve it, take the result and replace some variables, etc.

The last item will be further addressed because I hope to release "MathSymPy", a SymPy front-end in Python/Qt, mixing some features (easy of use of graphical user interface, many options, etc) of "Integral", "Derivative", etc, with the flexibility of the iSymPy interactive shell. In the best scenario, MathSymPy will be first released in 2-3 months for Maemo 4 & 5 and then MeeGo 1.2 Harmattan.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.

Last edited by rcolistete; 2011-10-20 at 15:46.
 
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#5
Derivative v1.0.2 (22/10/2011) for Maemo 4 (Diablo) is in extras repository as well as Maemo.org Downloads :
* depends on python-symPy_0.7.1-maemo4 which fixes the missing dependency of python2.5-dev on Maemo 4 Diablo;
* saves the last used coordinate system;
* uses 'Symplify terms' as the default simplification method.

See in the topic SymPy, Integral, Derivative, etc - CAS for Maemo 4 (Diablo) the discussion about the missing dependency of python2.5-dev on Maemo 4 Diablo.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#6
Derivative is now promoted to extras repository, thanks for the votes.

It is also visible in Maemo.org Downloads.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.
 
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#7
Corrected the time to open Derivative, it is faster due to byte compiling of Python files of last SymPy package version :

- on Nokia N900, about 7 s instead of 23 s;

- on Nokia N810, about 16 s instead of 18 s.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.
 
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#8
Derivative for Sailfish is now released, available at OpenRepos.net. Using the new Python 3.4 (16/03/2014) and SymPy 0.7.5 (22/02/2014).

This first public Sailfish release, v0.6 (22/05/2014) :
- calculates mathematical derivatives (only symbolically);
- shows bidimensional output with mathematical and greek symbols;
- calculation result is automatically copied to clipboard;
- simplification of the result;
- doesn't have all the features of Derivative for Maemo 4 & 5.
Newer releases of Derivative will have more features (simplification options, gradient, divergence, curl, laplacian, etc)

Screenshots of Derivative on Sailfish

Sailfish on Nexus 4 running Derivative, it always starts loading loading Python 3 and SymPy :

Calculating a derivative with respect to x :

Help on Derivative :


See the 1st post about installing Derivative on Sailfish.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.

Last edited by rcolistete; 2014-05-23 at 04:00.
 

The Following 4 Users Say Thank You to rcolistete For This Useful Post:
Posts: 836 | Thanked: 1,277 times | Joined on Jul 2010 @ Brittany, France
#9
Thanks Rcolistete.

Speaking of the several mathematical tools you have been developping, do you plan on porting R to Sailfish? I remember being able to run my R scripts or do calculations in R using Easy Debian in Maemo 5, and it was very convenient. I don't remember if it was working on your Easy Debian version for Harmattan. Anyway, I think there is nothing on Sailfish yet, and R would be a very good integrated mathematical software where almost any calculation would be possible.
 

The Following User Says Thank You to Kabouik For This Useful Post:
Posts: 1,244 | Thanked: 3,807 times | Joined on May 2011 @ Brazil
#10
Originally Posted by Kabouik View Post
Thanks Rcolistete.

Speaking of the several mathematical tools you have been developping, do you plan on porting R to Sailfish? I remember being able to run my R scripts or do calculations in R using Easy Debian in Maemo 5, and it was very convenient. I don't remember if it was working on your Easy Debian version for Harmattan. Anyway, I think there is nothing on Sailfish yet, and R would be a very good integrated mathematical software where almost any calculation would be possible.
There is already R language for MeeGo Harmattan, packaged by paolo :
https://openrepos.net/content/paolo31415926/r-base
https://openrepos.net/content/paolo31415926/r-extended

But there is no R for Saiflish/Mer/Nemo, AFAIK.

And I don't plan to package R, as I am not used to it.
__________________
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 ---
2 Jolla 1, Jolla C, Jolla Tablet. 2 Nokia N9. Nexus 4 with Sailfish. Nokia N900 & N810.
 

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

Thread Tools

 
Forum Jump


All times are GMT. The time now is 09:19.