npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@matajm/matrix-js

v1.0.1

Published

libreria para el procesamiento de matrices

Downloads

60

Readme

matrix-js

Librería para el procesamiento de matrices.

Instalación

instalar matrix-js es facil con el manejador de dependencias npm.

npm install --save @matajm/matrix-js

Uso

Matrix-js es facil de usar y su sintaxis es muy similar Octave en el manejo de matrices.

    var Matrix = require("@matajm/matrix-js");
    var A = new Matrix({
        width: 2,
        height: 2,
        data: [
            1, 2,
            3, 4
        ]
    });
    console.log(A.toString());
    /* Resultado:
        1 2
        3 4
    */

Uso del lado cliente

Existe la versión transpilada para el lado cliente

    <script type="text/javascript" src="dist/matrix.js"></script>

Tambien puedes transpilar el codigo con el siguiente comando.

npm run build

Genera dos archivos el codigo fuente para navegadores y el comprimido.

Getter/Setter

La clase Matrix cuenta con sus propios getter y setter para el acceso rapido a la matriz.

    var row = A.get(x, y); // getter
    A.set(x, y, val); //setter

Soporte de datos

De acuerto al tipo de matriz selecciona en las configuraciones, la Api soporta los siguientes tipos de datos.

Data type | String --------: | :----- Int8Array | "int8" Int16Array | "int16" Int32Array | "int32" Uint8Array | "uint8" Uint16Array | "uint16" Uint32Array | "uint32" Float32Array | "float32" Float64Array | "float64" Uint8ArrayClamped | "uint8_clamped" Buffer | "buffer"

Matrix.width

Retorna el ancho de la matriz

Matrix.height

Retorna el alto de la matriz

Matrix.dimension

Retorna la dimensión de la matriz

Matrix.size

Para la versión 1.x size será la propiedad que contiene la cantidad de elementos en total de la matriz, en el caso del metodo size a sido removido.

Matrix.forEach

Recorre la matriz en orden de fila ubicando el elemento en el plano cartesiano.

    Matrix.forEach(function (row, x, y, index) {
        // codigo a ejecutar por iteracion.
    });

Donde:

row: Valor del elemento actual.

x: Representa la posición en el plano de las x.

y: Representa la posición en el plano de las y.

index: Representa el indice del arreglo rectangular de la matriz.

Matrix.map

Recorre y reemplaza la matriz en orden de fila ubicando el elemento en el plano cartesiano.

    Matrix.map(function (row, x, y, index) {
        // codigo a ejecutar por iteracion.
        return row;
    });

Donde:

row: Valor del elemento actual.

x: Representa la posición en el plano de las x.

y: Representa la posición en el plano de las y.

index: Representa el indice del arreglo rectangular de la matriz.

Matrix.transposed

Retorna una nueva matriz transpuesta de la matriz original.

    var matrix2 = Matrix.transposed();

Matrix.sum

Retorna una nueva matriz con la suma de todas las matrices o escalares pasados como argumentos.

    // suma de matrices.
    var result = Matrix.sum(matrix2, matrix3, ...);
    // suma de una matriz mas escalares.
    var result = Matrix.sum(2, 3, ...)

Nota: Para la suma de matrices los argumentos deben ser objetos Matrix.

Matrix.subtract

Retorna una nueva matriz con la resta de todas las matrices o escalares pasados como argumentos.

    // resta de matrices.
    var result = Matrix.subtract(matrix2, matrix3, ...);
    // resta de una matriz mas escalares.
    var result = Matrix.subtract(2, 3, ...)

Nota: Para la resta de matrices los argumentos deben ser objetos Matrix.

Matrix.inmultiply

Retorna una nueva matriz con la multiplicación de todas las matrices o escalares pasados como argumentos.

    // multiplicacion de matrices.
    var result = Matrix.inmultiply(matrix2, matrix3, ...);
    // multiplicacion de una matriz mas escalares.
    var result = Matrix.inmultiply(2, 3, ...)

Nota: Para la multiplicacion de matrices los argumentos deben ser objetos Matrix.

Matrix.inverse

Retorna una nueva matriz con la inversa de la matriz original.

    var matrix2 = Matrix.inverse();

Nota: El calculo de la matriz la realiza por el metodo de la determinante.

Para obtener el valor de la determinante de la matriz use el metodo.

    var det = Matrix.det();

Matrix.divide

Retorna una nueva matriz con lo que se considera una división de matrices.

A / B == A * B^-1

Para el caso de escalares se aplica la división de cada elemento dentro de la matriz por el escalar.

    // División de matrices.
    var result = Matrix.divide(matrix2, matrix3, ...);
    // División de una matriz mas escalares.
    var result = Matrix.divide(2, 3, ...)

Nota: Para la división de matrices los argumentos deben ser objetos Matrix.

License

(c) 2018-2025 Jhonny Mata. MIT License