Skip to main content

This is a Python reimplementation of the Java Jama package utilized in the original Imapct Java application - https://sourceforge.net/projects/impact/ The original Java code was implemented by The MathWorks, Inc. and the National Institute of Standards and Technology. This code implents version 5 from August 1998

Project description

Impact Matrix

This project is a Python port of the Jama Matrix library.

Jama = Java Matrix class.

The Java Matrix Class provides the fundamental operations of numerical linear algebra. Various constructors create Matrices from two dimensional arrays of double precision floating point numbers. Various "gets" and "sets" provide access to submatrices and matrix elements. Several methods implement basic matrix arithmetic, including matrix addition and multiplication, matrix norms, and element-by-element array operations. Methods for reading and printing matrices are also included. All the operations in this version of the Matrix Class involve real matrices. Complex matrices may be handled in a future version.

Five fundamental matrix decompositions, which consist of pairs or triples of matrices, permutation vectors, and the like, produce results in five decomposition classes. These decompositions are accessed by the Matrix class to compute solutions of simultaneous linear equations, determinants, inverses and other matrix functions. The five decompositions are:

  • Cholesky Decomposition of symmetric, positive definite matrices.
  • LU Decomposition of rectangular matrices.
  • QR Decomposition of rectangular matrices.
  • Singular Value Decomposition of rectangular matrices.
  • Eigenvalue Decomposition of both symmetric and nonsymmetric square matrices.

Example of use:

Solve a linear system A x = b and compute the residual norm, ||b - A x||.

double[][] vals = { { 1., 2., 3 }, { 4., 5., 6. }, { 7., 8., 10. } };
Matrix A = new Matrix(vals);
Matrix b = Matrix.random(3, 1);
Matrix x = A.solve(b);
Matrix r = A.times(x).minus(b);
double rnorm = r.normInf();

Author: The MathWorks, Inc. and the National Institute of Standards and Technology. Version: 5 August 1998

Conclusion

Summary of the complete Python port:

All JAMA decomposition classes are now fully implemented:

Class Methods
Matrix All constructors, arithmetic, norms, getters/setters, solve, inverse, etc.
CholeskyDecomposition get_L(), is_spd(), solve()
EigenvalueDecomposition get_V(), get_D(), get_real_eigenvalues(), get_imag_eigenvalues()
LUDecomposition get_L(), get_U(), get_pivot(), det(), is_nonsingular(), solve()
QRDecomposition get_Q(), get_R(), get_H(), is_full_rank(), solve()
SingularValueDecomposition get_U(), get_V(), get_S(), norm2(), cond(),

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

impact_matrix-0.0.1.tar.gz (22.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

impact_matrix-0.0.1-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file impact_matrix-0.0.1.tar.gz.

File metadata

  • Download URL: impact_matrix-0.0.1.tar.gz
  • Upload date:
  • Size: 22.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for impact_matrix-0.0.1.tar.gz
Algorithm Hash digest
SHA256 7efd40d7a5d41ffad5f83863c57cf79c29bd723c108d28c515c0edd66909b5cf
MD5 4f6a1eaafef3a7f84c7a4ed24b87a137
BLAKE2b-256 a28834be6879f4db2f409967caf216c3faaed028b0c97e4cdf6366385694c43c

See more details on using hashes here.

File details

Details for the file impact_matrix-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: impact_matrix-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for impact_matrix-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 46441f6cef9d955a5ece0709bc2502c59107987cd781adc6f83e1aa1c4dafb15
MD5 f3b755cce4961f410a65697cfba505e2
BLAKE2b-256 5e11332fcf952a5be5d99e42ed1493ff18d2f9bf74c96239cac3456dcb635834

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page