The sharetools package

The sharetools package has been designed to access and use the Maple V Release 5 Share Library in Maple 6 & 7.

The Share Library includes a lot of functions re mathematics, biology, chemistry, etc., that have been written by various Maple programmers. You can download it for free from

Install the Share Library in any location of your hard drive, preferably in a Maple subdirectory.

If you have got the original Maple V Release 5 distribution, install the Share Library from the second CD-ROM.

The current version is:



In order to further improve the package I need your feedback, suggestions, bug reports or general comments. Please send your message to the author Alexander Walz via E-mail:


See file 'how2inst.all' included in the compressed archives for information on how to install the package.

Netscape users should press and hold the SHIFT key when clicking on the UNIX TAR/GZIP links.

Version 1.0.0 for Maple 7 as of December 16, 2001 

Version 1.0.0 for Maple 6 as of December 16, 2001 


Note that you must have added the path to the sharetools package to libname.

> restart:

> libname := libname, `e:/MapleV5/Share`;

libname := "e:/maple7/utils", "e:/maple7/math", "e:/maple7/sgesim", "e:/maple7/sharetools", "E:\\maple7/lib", "e:\\MapleV5\\Share"

> with(sharetools);

[loaded, readshare]

> readshare(partials);
Warning, help has been reassigned
Share Library: partials
Authors: Cheb-Terrab, Edgardo
Description: procedures for partial and functional derivatives

["Has", "Intc", "Int2c", "Int3c", "Int4c", "pdiff", "usepdiff", "Value", "evalDi", "fdiff", "odiff", "parameters", "seldiff", "usediff"]

> D[2](L)(q(t),D(q)(t)):

> L(q(t),D(q)(t)):= cos(omega*diff(q(t),t)^(1/2))*q(t):

> usepdiff(%%);


> readshare(ODE);
Share Library: ODE
Authors: Daniel Schwalbe
Description: package for solving ODE's numerically and plottingtheir solutions

["directionfield", "impeuler", "rungekutta", "rungekuttahf", "phaseplot"]

> eulerpts:=firsteuler((t,y)->t-y,[0,1],.1,10);

eulerpts := array(0 .. 10, [
        (0) = [0., 1.]
        (1) = [.1, .9]
        (2) = [.2, .82]
        (3) = [.3, .758]
        (4) = [.4, .7122]
        (5) = [.5, .68098]
        (6) = [.6, .662882]
        (7) = [.7, .6565938]
        (8) = [.8, .66093442]
        (9) = [.9, .674840978]
        (10) = [1.0, .6973568802]

> plot(makelist(eulerpts));

> readshare(FPS);
Share Library: FPS
Authors: Gruntz, Dominik
Description: FPS function attempts to find a formal power seriesexpansion for a function in terms of a formula for the coefficients

["Abramowitz", "ChebyshevT", "ChebyshevU", "ComplexApart", "Fibonacci", "FindDE", "FormalPowerSeries", "GegenbauerC", "HermiteH", "JacobiP", "LaguerreL", "Legendre_P", "Legendre_Q", "Limit", "PS", "PSInt", "Pochhammer", "RationalAlgorithm", "RecursionSimplify", "SimpleDE", "SimpleRE", "UpdateCoeff", "constantRE", "de2re", "hypergeomRE", "hypergeomRsolve", "printDE", "simp", "simpl", "simplify/Pochhammer", "simplify/factorial"]

> FPS(sin(x), x=0);

Sum((-1)^k/(2*k+1)!*x^(2*k+1),k = 0 .. infinity)

> readshare(elliptic);
Share Library: elliptic
Authors: Von York, Eric
Description: Determines the order of the group of points on a non-singular elliptic curve y^2 = x^3+A*x+B over a finite field Z mod p

["FP", "babyset", "elliptic", "giantset", "gsEmodP", "nP", "plus", "powers_of_2"]

> elliptic(47,1,1);


> readshare(turtle);
Share Library: turtle
Authors: Lozano, Eugenio Roanes
Description: package for supporting the Turtle graphics

["ClearScreen", "PenUp", "PenDown", "Forwd", "Back", "SetPosition",
"SetX", "SetY", "Home", "TurnRight", "TurnLeft", "SetHeading",
 "SetHeadingTowards", "FullScreen", "SetPenColor", "Dot", "Modu"]

> espiexag:=proc(n::integer) local l,i;
>     l:=2;
>     for i to n do
>           TurnRight(60);
>           l:=l+2;
>           Forwd(l)
>        od
>     end:

> ClearScreen();

> espiexag(60);

> FullScreen();


Author: Alexander F. Walz,
Original file location: