Skip to content

kranjan94/Math

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Math

Packages that support more complex mathematical processes than the standard java.lang.Math package. Functions can be stored and operations can be performed on those functions. Matrix math is also supported, as is usage of complex numbers.

Intended operations include:
*Summation *Multiplication by sequence *Integration *Differentiation

###Data The Data class is a superclass for all non-Java number types, such as complex numbers. It contains the operations central to all data types, such as addition.

ComplexNumber stores a real and an imaginary component as double values. Addition and multiplication are supported.

###Functions All functions are subclasses of the class Function, which has abstract methods for evaluation and functional differentiation. These methods must be implemented by all subclasses. Function also has a scalar field which gives the scalar multiple applied to the function (1 by default).

Polynomials are stored as linkedlists of coefficients, starting with the constant term and going up until the leading coefficient. Evaluation is performed by traversing this list and raising the argument to the appropriate power, multiplying by coefficient, and adding the result to the total.

Sinusoidal functions are subclasses of the Sinusoid class, which is itself a subclass of Function. All sinusoids have a phase shift (0 by default) and an angular frequency constant (1 by default). For example, a Sine function with a scalar of 3, an angular frequency of 5, and a phase shift of -2 would be 3Sin(5x-2).

###Matrix Math Matrices are currently stored as two-dimensional double arrays. Addition and multiplication is supported. Invertible matrices can be inverted, and thus a functionality for the solution of determined systems is supplied. Non-determined systems (with more than one or no solutions) will cause exceptions to be thrown.

About

Packages for performing more complex mathematical processes than the standard Java Math library.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages