« 「シーソーモンスター」(伊坂幸太郎さん)を読んだ。8作家が共通ルールで歴史を追って競作する豪華版の1冊だが、それを置いておいても単独で面白い!昭和後期のシーソーモンスター(バブル期!)と近未来のスピンモンスター(AIもの)の2篇。 | トップページ | JavaScriptの数値計算ライブラリmathjsを使う(3) Plotlyを併用して関数をグラフ表示する。ココログでもグラフ表示できるようになった。 »

2022年12月 8日 (木)

JavaScriptの数値計算ライブラリmathjsを使う(2) 次は複素数演算。四則演算や平方根、べき乗、expなどが簡単にできる。このココログで直接計算できる簡易電卓を作ってみた。

JavaScriptの数学ライブラリmath.jsを使って

https://mathjs.org/

いろいろ計算するシリーズ第二弾。

今回は複素数演算だ。実はmath.complex('1+2i')みたいに複素数の文字列そのままで複素数が定義できる。

Re,ImでやってももちろんOK。math.complex(1,2)みたいな感じ。

で設定は最初に

    <script src="https://unpkg.com/mathjs@11.4.0/lib/browser/math.js"></script>

を入れておいて、以下のような感じで複素数電卓ができる。

Mathjs12062

電卓っぽいのを作ったのがこれ。Z1,Z2に普通の複素数表記ができるのが便利。

Mathjs12061

テキストでも書いておきます。

       // 演算の関数あれこれ(四則演算、平方根、べき乗、exp)
        function add1206() {
            const z1 = math.complex(z1input.value)
            const z2 = math.complex(z2input.value)
            zanswer.textContent = math.add(z1,z2)
        }
        function sub1206() {
            const z1 = math.complex(z1input.value)
            const z2 = math.complex(z2input.value)
            zanswer.textContent = math.subtract(z1,z2)
        }
        function mul1206() {
            const z1 = math.complex(z1input.value)
            const z2 = math.complex(z2input.value)
            zanswer.textContent = math.multiply(z1,z2)
        }
        function div1206() {
            const z1 = math.complex(z1input.value)
            const z2 = math.complex(z2input.value)
            zanswer.textContent = math.divide(z1,z2)
        }
        function sqrt1206() {
            const z1 = math.complex(z1input.value)
            zanswer.textContent = math.sqrt(z1)
        }      
        function pow1206() {
            const z1 = math.complex(z1input.value)
            const z2 = math.complex(z2input.value)
            zanswer.textContent = math.pow(z1,z2)
        }
        function exp1206() {
            const z1 = math.complex(z1input.value)
            zanswer.textContent = math.exp(z1)
        }    

このココログで直接実行できるようにしてみた。こちら。複素数を通常の数学の表記でZ1,Z2を入れてボタンを押して計算する。



答え:

過去のもの:

JavaScriptの数値計算ライブラリmathjsを使う(1) まずは行列演算。LU分解で一次方程式を解き、逆行列と行列式を求める。このココログで直接計算できる機能も付けた。 

« 「シーソーモンスター」(伊坂幸太郎さん)を読んだ。8作家が共通ルールで歴史を追って競作する豪華版の1冊だが、それを置いておいても単独で面白い!昭和後期のシーソーモンスター(バブル期!)と近未来のスピンモンスター(AIもの)の2篇。 | トップページ | JavaScriptの数値計算ライブラリmathjsを使う(3) Plotlyを併用して関数をグラフ表示する。ココログでもグラフ表示できるようになった。 »

パソコン・インターネット」カテゴリの記事

学問・資格」カテゴリの記事

日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« 「シーソーモンスター」(伊坂幸太郎さん)を読んだ。8作家が共通ルールで歴史を追って競作する豪華版の1冊だが、それを置いておいても単独で面白い!昭和後期のシーソーモンスター(バブル期!)と近未来のスピンモンスター(AIもの)の2篇。 | トップページ | JavaScriptの数値計算ライブラリmathjsを使う(3) Plotlyを併用して関数をグラフ表示する。ココログでもグラフ表示できるようになった。 »

最近の記事

最近のコメント

2023年2月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28        
フォト
無料ブログはココログ