Computação numérica em TypeScript para o navegador

MathJSLab leva um laboratório matemático para a web.

MathJSLab simula um subconjunto da linguagem MATLAB®/Octave. Use um dos aplicativos online para conhecer os recursos do MathJSLab. Use o pacote npm em seu projeto para executar expressões, funções, matrizes, com resultados renderizados em MathML e compatibilidade completa no navegador web.

Instalar pacote npm install mathjslab
>> A = [1 2; 3 4]
A=[1234]
>> det(A)
det(A)=-2
>> f = @(x) a*x^2+b*x+c
f=@(x)ax2+bx+c

Fluxo de execução

Como o MathJSLab processa uma expressão

O MathJSLab lê a entrada, transforma o texto em uma representação interna, avalia expressões e comandos, e renderiza resultados matemáticos em MathML para o navegador.

Diagrama mostrando o pipeline do MathJSLab desde a entrada do usuário até parser, avaliação, processamento de comandos e renderização em MathML.

Recursos

MathJSLab é um interpretador com sintaxe semelhante ao MATLAB®/Octave, criado para finalidades educativas e disponível no navegador.

Motor interpretador

O pacote principal é escrito em TypeScript e simula um subconjunto da sintaxe MATLAB®/Octave.

Saída matemática

O interpretador trabalha com aritmética de precisão arbitrária via decimal.js e pode gerar expressões e resultados renderizados em MathML.

Ecossistema

Ecossistema do projeto

A Organização MathJSLab no GitHub detém os repositórios do projeto: o pacote npm, os aplicativos web, a página do projeto e o perfil da própria organização.

Publicação

Publicação e identificadores

O MathJSLab é publicado como software livre, distribuído como um pacote reutilizável e com identificadores persistentes atribuídos a ele.

O pacote interpretador é publicado no registro npm como mathjslab. O código-fonte é mantido na organização MathJSLab no GitHub, e o pacote, a aplicação Web complementar, a calculadora e a aplicação em lote possuem DOI e ISBN para citação em contextos acadêmicos e institucionais.

Aplicação Web

mathjslab-app

A aplicação de navegador demonstra o interpretador, é mantida no GitHub e possui registros próprios de DOI e ISBN.

Aplicação calculadora

mathjslab-calc

A aplicação calculadora oferece uma interface de prompt simplificada hospedada em calc.mathjslab.com, com DOI próprio e badges de publicação do projeto.

Aplicação em lote

mathjslab-batch

A aplicação em lote oferece uma interface em área de texto com realce de sintaxe para executar comandos MathJSLab em sequência.

Arquivo

Arquivo

Arquivos e documentos relacionados ao projeto MathJSLab.

Links

Links úteis

Experimente os aplicativos web pelo hub de aplicativos. Instale o pacote npm, navegue pelo perfil da organização no GitHub ou consulte a ajuda de comandos.

O MathJSLab é voltado a fins educacionais, ajudando professores e estudantes a usar uma ferramenta de cálculo assistido que roda no navegador.

MathJSLab não é afiliado, patrocinado nem endossado pela The MathWorks, Inc. MATLAB® é marca registrada da The MathWorks, Inc.

Contato

Contato

Para entrar em contato com a organização do projeto MathJSLab, escreva para o endereço

mathjslab@gmail.com

Licença

Licença MIT

O MathJSLab é distribuído como software livre sob a Licença MIT, permitindo uso, modificação e redistribuição nos termos abaixo.

MIT License

Copyright (c) 2016-2026 Sergio Lindau, mathjslab.com, ISBN 978-65-00-82338-7

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.