ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

数学ソフトコミュのJavascriptのライブラリ

  • mixiチェック
  • このエントリーをはてなブックマークに追加
Javascriptだけでwebページだけで気軽に実装できるの理想ですが、
便利なライブラリがあれば教えてください

コメント(13)

https://github.com/arian/Array.Math
JavascriptのArrayを拡張して行列操作を簡単に記述できるライブラリ

Javascriptのシンタックスに準拠して記述しやすくしようとするとこうなるよねという例
昨年類似のライブラリをつくったので親近感があります。

内積
[1, 2, 3].dot([4, 5, 6]) // 3
外積
[1, 2, 3].cross([4, 5, 6]) // [-3, 6, -6]
行列式
[[4, 6], [3, 5]].determinant() // 2
などなど

他にもいろいろやればおもしろそう。

https://github.com/bjornharrtell/jsts

JSTS Topology Suite
計算幾何学のライブラリ便利でつかっています。
http://r3mi.github.io/poly2tri.js/

ドロネー三角形分割のライブラリ
凸領域だけでなくいろんな形状の三角形分割に対応しているのがうれしい
JavascriptによるCAS(ほかにもありそうですが)
https://github.com/aantthony/javascript-cas

したみたいなことができる。

var y = M('x^2 + 3');
// Differentiate with respect to x
var dy = y.differentiate(y.unbound.x);
// Compile a javascript function
var fn = dy.compile('x');
// now evaluation of the deriviative is fast:
var x = fn(3.1); // Returns a javascript number.
4のjavascript-casはかなり使いやすかったです。
ただし複素数など未実装(実装しかかり)でした。
Node.JSで実行するサンプル

var M = require("./javascript-cas/lib/index.js");
var y = M('t + x^2 + 3');
var fn = y.compile('x,t');
var x = fn(5,1);
console.log(x);

別の実装はこれがよさそうでしたが、こちらも複素数はサポートされていない
式変形などしてくれるのがよさげ。
http://matthewja.com/Coffeequate/

C/C++の実装をEmscriptenで変換するのが吉かもしれない
GIACというCASをEmscriptenでJavascriptへ変換したものあり
ダウンロード中のままでかたまっていまいますですが、ローカルに保存すれば普通に実行できます。
当然複素数もサポートされているのでこれは使えそうです。
http://www-fourier.ujf-grenoble.fr/~parisse/webxcasfr.html
giac.jsで使える書式はソースコードのstatic_help.hに記載がある

例)
simplify(Det([[1,2,3],[1,3,6],[2,5,7]]))
http://mathjs.org/index.html
高精度の計算ができるライブラリ math.js

例)
var cos = math.cos(math.bignumber(0.3));
console.log(cos.toString());

Math -> mathに置き換えてちょっとずつ移植できるんがよい
JavaScriptdemoUnicode文字が変数名につかえるんですね。
http://rosettacode.org/wiki/Unicode_variable_names#JavaScript
数学記号が自然にかけるといいですね
ES6のGeneratorをつかったフィボナッチ数列の定義

http://raganwald.com/2016/03/17/programs-must-be-written-for-people-to-read.html
ES6で遅延評価
http://postd.cc/laziness-is-a-virtue/
xcas
https://www-fourier.ujf-grenoble.fr/~parisse/xcasen.html
https://github.com/likr/emlapack
Porting BLAS / LAPACK to JavaScript.

CLAPACK is compiled with emscripten.

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

数学ソフト 更新情報

数学ソフトのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。