Main > Free Download Search >

Free math software software for linux

math software

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 250
MathWar 0.2.4

MathWar 0.2.4


MathWar project is a flashcard math game for kids. more>>
MathWar project is a flashcard math game for kids.

MathWar is a flashcard math game in which the child plays against the computer to solve simple addition, subtraction, and multiplication problems before the computer player answers.

MathWar is aimed at kids who are just learning their math facts, and can easily be tailored to fit different skill levels.

<<less
Download (0.80MB)
Added: 2006-10-16 License: GPL (GNU General Public License) Price:
1106 downloads
Math::String 1.27

Math::String 1.27


Math::String module contains arbitrary sized integers having arbitrary charsets to calculate with key rooms. more>>
Math::String module contains arbitrary sized integers having arbitrary charsets to calculate with key rooms.

SYNOPSIS

use Math::String;
use Math::String::Charset;

$a = new Math::String cafebabe; # default a-z
$b = new Math::String deadbeef; # a-z
print $a + $b; # Math::String ""

$a = new Math::String aa; # default a-z
$b = $a;
$b++;
print "$b > $a" if ($b > $a); # prove that ++ makes it greater
$b--;
print "$b == $a" if ($b == $a); # and that ++ and -- are reverse

$d = Math::String->bzero( [0...9] ); # like Math::Bigint
$d += Math::String->new ( 9999, [ 0..9 ] );
# Math::String "9999"

print "$dn"; # string "00000n"
print $d->as_number(),"n"; # Math::BigInt "+11111"
print $d->last(5),"n"; # string "99999"
print $d->first(3),"n"; # string "111"
print $d->length(),"n"; # faster than length("$d");

$d = Math::String->new ( , Math::String::Charset->new ( {
minlen => 2, start => [ a..z ], } );

print $d->minlen(),"n"; # print 2
print ++$d,"n"; # print aa

<<less
Download (0.060MB)
Added: 2007-06-30 License: Perl Artistic License Price:
846 downloads
MathTables 0.3.4

MathTables 0.3.4


MathTables is a program that helps parents teach their children how to use the four basic math operations. more>>
MathTables is a program that helps parents teach their children how to use the four basic math operations, multiplication, substraction, addition and division.

With MathTables parents can print sheets full of math operations for their children to answer. They can also print corresponding sheets with the solutions so that either them, or the children themselves, can work on the corrections.

This program arose from the actual need to print math tables almost daily for my children, as requested by their school.

MathTables is written in Python using the PyGTK toolkit.

<<less
Download (0.038MB)
Added: 2006-02-17 License: GPL (GNU General Public License) Price:
1344 downloads
Math::String::Charset 1.27

Math::String::Charset 1.27


Math::String::Charset is a simple charset for Math::String objects. more>>
Math::String::Charset is a simple charset for Math::String objects.

SYNOPSIS

use Math::String::Charset;

$a = new Math::String::Charset; # default a-z
$b = new Math::String::Charset [a..z]; # same
$c = new Math::String::Charset
{ start => [a..z], sep => }; # with between chars

print $b->length(); # a-z => 26

# construct a charset from bigram table, and an initial set (containing
# valid start-characters)
# Note: After an a, either an b, c or a can follow, in this order
# After an d only an a can follow
$bi = new Math::String::Charset ( {
start => a..d,
bi => {
a => [ b, c, a ],
b => [ c, b ],
c => [ a, c ],
d => [ a, ],
q => [ ], # q will be automatically in end
}
end => [ a, b, ],
} );
print $bi->length(); # a,b => 2 (cross of end and start)
print scalar $bi->class(2); # count of combinations with 2 letters
# will be 3+2+2+1 => 8

$d = new Math::String::Charset ( { start => [a..z],
minlen => 2, maxlen => 4, } );

print $d->first(0),"n"; # undef, too short
print $d->first(1),"n"; # undef, to short
print $d->first(2),"n"; # aa

$d = new Math::String::Charset ( { start => [a..z] } );

print $d->first(0),"n"; #
print $d->first(1),"n"; # a
print $d->last(1),"n"; # z
print $d->first(2),"n"; # aa

This module lets you create an charset object, which is used to contruct Math::String objects. This object knows how to handle simple charsets as well as complex onex consisting of bi-grams (later tri and more).

In case of more complex charsets, a reference to a Math::String::Charset::Nested or Math::String::Charset::grouped will be returned.

The default charset is the set containing "abcdefghijklmnopqrstuvwxyz" (thus producing always lower case output).

<<less
Download (0.060MB)
Added: 2006-06-16 License: GPL (GNU General Public License) Price:
1226 downloads
Math::MagicSquare 2.04

Math::MagicSquare 2.04


Math::MagicSquare is a Magic Square Checker and Designer. more>>
Math::MagicSquare is a Magic Square Checker and Designer.

SYNOPSIS

use Math::MagicSquare;

$a= Math::MagicSquare -> new ([num,...,num],
...,
[num,...,num]);
$a->print("string");
$a->printhtml();
$a->printimage();
$a->check();
$a->rotation();
$a->reflection();

The following methods are available:

new

Constructor arguments are a list of references to arrays of the same length.

$a = Math::MagicSquare -> new ([num,...,num],
...,
[num,...,num]);

check

This function can return 4 value

0: the Square is not Magic
1: the Square is a Semimagic Square (the sum of the rows and the columns is equal)
2: the Square is a Magic Square (the sum of the rows, the columns and the diagonals is equal)
3: the Square ia Panmagic Square (the sum of the rows, the columns, the diagonals and the broken diagonals is equal)

print

Prints the Square on STDOUT. If the method has additional parameters, these are printed before the Magic Square is printed.

printhtml

Prints the Square on STDOUT in an HTML format (exactly a inside a TABLE)

printimage

Prints the Square on STDOUT in png format.

rotation

Rotates the Magic Square of 90 degree clockwise

reflection

Reflect the Magic Square

<<less
Download (0.007MB)
Added: 2007-07-02 License: Perl Artistic License Price:
845 downloads
Math::NoCarry 1.10

Math::NoCarry 1.10


Math::NoCarry is a Perl extension for no carry arithmetic. more>>
Math::NoCarry is a Perl extension for no carry arithmetic.

SYNOPSIS

use Math::NoCarry;

my $sum = Math::NoCarry::add( 123, 456 );

my $difference = Math::NoCarry::subtract( 123, 456 );

my $product = Math::NoCarry::multiply( 123, 456 );

No carry arithmetic doesnt allow you to carry digits to the next column. For example, if you add 8 and 4, you normally expect the answer to be 12, but that 1 digit is a carry. In no carry arithmetic you cant do that, so the sum of 8 and 4 is just 2. In effect, this is addition modulo 10 in each column. I discard all of the carry digits in this example:

1234
+ 5678
------
6802

For multiplication, the result of pair-wise multiplication of digits is the modulo 10 value of their normal, everyday multiplication.

123
x 456
-----
8 6 x 3
2 6 x 2
6 6 x 1

5 5 x 3
0 5 x 2
5 5 x 1

2 4 x 3
8 4 x 2
+ 4 4 x 1
-------
43878
Since multiplication and subtraction are actually types of additions, you can multiply and subtract like this as well.

No carry arithmetic is both associative and commutative.

<<less
Download (0.005MB)
Added: 2007-08-08 License: Perl Artistic License Price:
807 downloads
Math Objects 0.1.3

Math Objects 0.1.3


Math Objects is a math template library for C++ using generic programming techniques. more>>
Math Objects is a math template library written in C++ using generic programming techniques. In order to use the "Math Objects" library, the user only has to include the header files he needs (e.g. Matrix.h, Polynomial.h etc.).
In order to compile the library the user needs an ISO/IEC 14882:1998 standard compliant C++ compiler (e.g. one that supports partial template specializations).
The math library has math objects like matrices, polynomials, rational functions, extended precision numbers, complex numbers etc. that can be handled in a similar way like basic numerical types (e.g. integers or floating point numbers).
One can access properties of a mathematical type through a (partial) specialization of a traits class for that type (AlgebraicTraits). Having the traits classes to expose properties of mathematical objects, one can define for example matrices of polynomials having extended precision complex coefficients and apply to them basic linear algebra algorithms using normal C++ syntax.
This library also implements two functions using two deterministic algorithms that compute the Smith form for polynomial matrices, and the Smith-McMillan form of a transfer functions matrix also keeping track of the transformation matrices.
These algorithms can be used to describe a MIMO (multi input-multi output) system by means of its zeros and poles and also give the MFD (matrix fraction description) of the system.
Enhancements:
- Recoded the LongInt class aiming for better runtime efficiency.
<<less
Download (0.28MB)
Added: 2006-02-21 License: GPL (GNU General Public License) Price:
1343 downloads
Math::ODE 0.03

Math::ODE 0.03


Math::ODE Perl module allows you to solve N-th Order Ordinary Differential Equations with as little pain as possible. more>>
Math::ODE Perl module allows you to solve N-th Order Ordinary Differential Equations with as little pain as possible.

Currently, only IVPs (initial value problems) are supported, but native support for BVPs (boundary value problems) may be added in the future. To solve N-th order equations, you must first turn it into a system of N first order equations, as in MATLAB.

<<less
Download (0.005MB)
Added: 2007-06-13 License: GPL (GNU General Public License) Price:
867 downloads
Math::XOR 0.02

Math::XOR 0.02


Math::XOR is a package to handle XOR encryption of string buffers. more>>
Math::XOR is a package to handle XOR encryption of string buffers.

SYNOPSIS

use XOR;
print xor_buf("hello", "world"), "n";

The XOR module allows you to quickly XOR two strings together. This is the only method of encryption that (assuming the randomness of the pattern used as an encryption key) truly cannot be broken. It also has interesting, very direct mathematical properties which can be fun to play with:

XOR string 1 and string 2, you get string 3 XOR string 1 and string 3, you get string 2 XOR string 2 and string 3, you get string 1

FUNCTIONS

xor_buf($string1, $string2)

This function will return a scalar, which is the result of XORing the two strings passed to it together. The strings may contain binary data.

If $string2 is not at least as many characters long as $string1, xor_buf() will print an error and return undef. Only as many characters as there are in $string1 will be returned; excess characters in $string2 will be ignored. For this reason, when encrypting data it is good to think of $string1 as your "data" and $string2 as your "key".

<<less
Download (0.002MB)
Added: 2006-08-04 License: Perl Artistic License Price:
1176 downloads
TuxMathScrabble 4.2

TuxMathScrabble 4.2


TuxMathScrabble is a multi-user math-version of Scrabble for youngsters. more>>
TuxMathScrabble is a math-version of the popular board game for children aged 4-10. The game features drag-and-drop tiles for the user, while Tux moves his own.

The game challenges young people to construct compound equations and consider multiple abstract possibilities.

Dancing penguins come out of the tiles when your move is correct (like a cuckoo-clock). Tux is animated as well.

<<less
Download (0.81MB)
Added: 2007-07-28 License: GPL (GNU General Public License) Price:
821 downloads
Math::BaseArith 1.00

Math::BaseArith 1.00


Math::BaseArith is a Perl extension for mixed-base number representation (like APL encode/decode). more>>
Math::BaseArith is a Perl extension for mixed-base number representation (like APL encode/decode).

SYNOPSIS

use Math::BaseArith;
encode( value, base_list );
decode( representation_list, base_list );

The inspiration for this module is a pair of functions in the APL programming language called encode (a.k.a. "representation") and decode (a.k.a. base-value). Their principal use is to convert numbers from one number base to another. Mixed number bases are permitted.

In this perl implementation, the representation of a number in a particular number base consists of a list whose elements are the digit values in that base. For example, the decimal number 31 would be expressed in binary as a list of five ones with any number of leading zeros: [0, 0, 0, 1, 1, 1, 1, 1]. The same number expressed as three hexadecimal (base 16) digits would be [0, 1, 15], while in base 10 it would be [0, 3, 1]. Fifty-one inches would be expressed in yards, feet, inches as [1, 1, 3], an example of a mixed number base.

In the following description of encode and decode, Q will mean an abstract value or quantity, R will be its representation and B will define the number base. Q will be a perl scalar; R and B are perl lists. The values in R correspond to the radix values in B.

In the examples below, assume the output of print has been altered by setting $, = and that => is your shell prompt.

<<less
Download (0.006MB)
Added: 2007-07-20 License: Perl Artistic License Price:
826 downloads
Math::Complex 1.37

Math::Complex 1.37


Math::Complex is a Perl module with complex numbers and associated mathematical functions. more>>
Math::Complex is a Perl module with complex numbers and associated mathematical functions.

SYNOPSIS

use Math::Complex;

$z = Math::Complex->make(5, 6);
$t = 4 - 3*i + $z;
$j = cplxe(1, 2*pi/3);

<<less
Download (0.032MB)
Added: 2007-07-04 License: Perl Artistic License Price:
843 downloads
Math::MatrixReal 2.02

Math::MatrixReal 2.02


Math::MatrixReal is a nifty perl module for doing just about anything you could want with an NxN matrix. more>>
Math::MatrixReal is a nifty perl module for doing just about anything you could want with an NxN matrix, or vector of real numbers.
Main features:
- operator overloading, $a * $b multiplies 2 matrices, $a / $b is shorthand for $a * $b ** -1
- create matrices from strings or array references
- inverse
- determinant
- transpose (overloaded to ~)
- normalization
- diagonalization ( symmetric only )
- eigenvalues, eigenvectors ( symmetric only )
- boolean checks for: symmetric,orthogonal,diagonal,tridiagonal,triangular,
- gramian,binary,idempotent,periodic
- norms: p-norms, frobenius norm, 1-norm, 2-norm
- cofactor matrix
- minor matrix
- rank (order)
- Analytic solution of Ax=b with LR decomposition
- 3d vector product
- 3 iterative algorithms to solve Ax=b
- Single Step Method
- Global Step Method
- Relaxation Method
- export matrix to Matlab, Scilab, Yacas or LaTeX
<<less
Download (0.053MB)
Added: 2007-06-13 License: GPL (GNU General Public License) Price:
863 downloads
Math::Matrix 0.5

Math::Matrix 0.5


Math::Matrix can multiply and invert Matrices. more>>
Math::Matrix can multiply and invert Matrices.

The following methods are available:

new

Constructor arguments are a list of references to arrays of the same length. The arrays are copied. The method returns undef in case of error.

$a = new Math::Matrix ([rand,rand,rand],
[rand,rand,rand],
[rand,rand,rand]);

If you call new as method, a zero filled matrix with identical deminsions is returned.

clone

You can clone a matrix by calling:

$b = $a->clone;

size

You can determine the dimensions of a matrix by calling:

($m, $n) = $a->size;

concat

Concatenates two matrices of same row count. The result is a new matrix or undef in case of error.

$b = new Math::Matrix ([rand],[rand],[rand]);
$c = $a->concat($b);

transpose

Returns the transposed matrix. This is the matrix where colums and rows of the argument matrix are swaped.

multiply

Multiplies two matrices where the length of the rows in the first matrix is the same as the length of the columns in the second matrix. Returns the product or undef in case of error.

solve

Solves a equation system given by the matrix. The number of colums must be greater than the number of rows. If variables are dependent from each other, the second and all further of the dependent coefficients are 0. This means the method can handle such systems. The method returns a matrix containing the solutions in its columns or undef in case of error.

invert

Invert a Matrix using solve.

multiply_scalar

Multiplies a matrix and a scalar resulting in a matrix of the same dimensions with each element scaled with the scalar.

$a->multiply_scalar(2); scale matrix by factor 2

add

Add two matrices of the same dimensions.

substract

Shorthand for add($other->negative)

equal

Decide if two matrices are equal. The criterion is, that each pair of elements differs less than $Math::Matrix::eps.

slice

Extract columns:

a->slice(1,3,5);

determinant

Compute the determinant of a matrix.

dot_product

Compute the dot product of two vectors.

absolute

Compute the absolute value of a vector.

normalizing

Normalize a vector.

cross_product

Compute the cross-product of vectors.

print

Prints the matrix on STDOUT. If the method has additional parameters, these are printed before the matrix is printed.

pinvert

Compute the pseudo-inverse of the matrix: ((AA)^-1)A

EXAMPLE

use Math::Matrix;

srand(time);
$a = new Math::Matrix ([rand,rand,rand],
[rand,rand,rand],
[rand,rand,rand]);
$x = new Math::Matrix ([rand,rand,rand]);
$a->print("An");
$E = $a->concat($x->transpose);
$E->print("Equation systemn");
$s = $E->solve;
$s->print("Solutions sn");
$a->multiply($s)->print("A*sn");

<<less
Download (0.006MB)
Added: 2007-08-08 License: Perl Artistic License Price:
810 downloads
Math::Symbolic::Base 0.508

Math::Symbolic::Base 0.508


Math::Symbolic::Base is a case class for symbols in symbolic calculations. more>>
Math::Symbolic::Base is a case class for symbols in symbolic calculations.

SYNOPSIS

use Math::Symbolic::Base;

This is a base class for all Math::Symbolic::* terms such as Math::Symbolic::Operator, Math::Symbolic::Variable and Math::Symbolic::Constant objects.

METHODS

Method to_string

Default method for stringification just returns the objects value.

Method value

value() evaluates the Math::Symbolic tree to its numeric representation.

value() without arguments requires that every variable in the tree contains a defined value attribute. Please note that this refers to every variable object, not just every named variable.

value() with one argument sets the objects value (in case of a variable or constant).

value() with named arguments (key/value pairs) associates variables in the tree with the value-arguments if the corresponging key matches the variable name. (Can one say this any more complicated?) Since version 0.132, an alternative syntax is to pass a single hash reference.

Example: $tree->value(x => 1, y => 2, z => 3, t => 0) assigns the value 1 to any occurrances of variables of the name "x", aso.

If a variable in the tree has no value set (and no argument of value sets it temporarily), the call to value() returns undef.

Method signature

signature() returns a trees signature.

In the context of Math::Symbolic, signatures are the list of variables any given tree depends on. That means the tree "v*t+x" depends on the variables v, t, and x. Thus, applying signature() on the tree that would be parsed from above example yields the sorted list (t, v, x).

Constants do not depend on any variables and therefore return the empty list. Obviously, operators dependencies vary.

Math::Symbolic::Variable objects, however, may have a slightly more involved signature. By convention, Math::Symbolic variables depend on themselves. That means their signature contains their own name. But they can also depend on various other variables because variables themselves can be viewed as placeholders for more compicated terms. For example in mechanics, the acceleration of a particle depends on its mass and the sum of all forces acting on it. So the variable acceleration would have the signature (acceleration, force1, force2,..., mass, time).

If youre just looking for a list of the names of all variables in the tree, you should use the explicit_signature() method instead.

Method explicit_signature

explicit_signature() returns a lexicographically sorted list of variable names in the tree.

See also: signature().

Method set_signature

set_signature expects any number of variable identifiers as arguments. It sets a variables signature to this list of identifiers.

Method implement

implement() works in-place!

Takes key/value pairs as arguments. The keys are to be variable names and the values must be valid Math::Symbolic trees. All occurrances of the variables will be replaced with their implementation.

Method replace

First argument must be a valid Math::Symbolic tree.

replace() modifies the object it is called on in-place in that it replaces it with its first argument. Doing that, it retains the original object reference. This destroys the object it is called on.

However, this also means that you can create recursive trees of objects if the new tree is to contain the old tree. So make sure you clone the old tree using the new() method before using it in the replacement tree or you will end up with a program that eats your memory fast.

fill_in_vars

This method returns a modified copy of the tree it was called on.

It walks the tree and replaces all variables whose value attribute is defined (either done at the time of object creation or using set_value()) with the corresponding constant objects. Variables whose value is not defined are unaffected. Take, for example, the following code:

$tree = parse_from_string(a*b+a*c);
$tree->set_value(a => 4, c => 10); # value of b still not defined.
print $tree->fill_in_vars();
# prints "(4 * b) + (4 * 10)"

Method simplify

Minimum method for term simpilification just clones.

Method descending_operands

When called on an operator, descending_operands tries hard to determine which operands to descend into. (Which usually means all operands.) A list of these is returned.

When called on a constant or a variable, it returns the empty list.

Of course, some routines may have to descend into different branches of the Math::Symbolic tree, but this routine returns the default operands.

The first argument to this method may control its behaviour. If it is any of the following key-words, behaviour is modified accordingly:

default -- obvious. Use default heuristics.

These are all supersets of default:
all -- returns ALL operands. Use with caution.
all_vars -- returns all operands that may contain vars.

<<less
Download (0.10MB)
Added: 2007-08-09 License: Perl Artistic License Price:
806 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5