【理系大学生必見】最強の計算サイトwolfram alphaのススメ

こんにちは、しば(@akahire2014)です。

理系大学生になると、学校の課題や勉強で数式を計算する機会が多くなると思います。でもその時に全部自分の手で計算するのはめんどくさいですよね?

今回は積分やグラフ描画など幅広い機能を備えたWolfram Alphaというサイトを紹介します。

Wolfram Alphaとは?

f:id:umauma01:20170408095315p:plain

方程式、グラフ、最小・最大値問題、微分・積分などの高度な計算もやってくれる検索エンジンです。Wolfram Alphaにアクセスすると上の画像のように検索窓が表示されるのですが、ここにコマンドを打ち込むとあらゆる計算を一発でやってくれます。

理系大学生である僕は授業で出てきた数式をグラフ化したり、宿題の計算や検算をしています。便利すぎて感動するレベルで計算がはかどります。

作った人はスティーブン・ウルフラム(Stephen Wolfram)氏。なんとこの人、理論物理学者なんです!しかもめっちゃ天才….

  • 15歳 素粒子論の学術論文を書く
  • 17歳 オックスフォード大学卒業
  • 20歳 理論物理学の研究でカリフォルニア工科大学で博士号

という経歴を持っています。

計算コマンドの紹介

Wolfram Alphaで使えるコマンドの紹介をしていきます。まずWolfram Alphaにアクセスしてください。そしたら検索窓にこれから紹介するコマンドを打ち込んでください。

数式の打ち方

  • 三角関数

特に特別なことはせず、そのまま打ち込むだけでいいです。

例:

sin(x),  cos(3x+y), tan(2x)

  • 指数関数

Exp[x]

と書きます。

  • 対数関数

底がa真数がxの対数は

Log[a,x]

底がネイピア数の時は

Ln[x]

です。

  • ルート関数

2乗根は

Sqrt[x]

a乗根は

x^(1/a)

と表記します。

簡単な計算

  • 因数分解、二進数への変換

これは検索窓に打ち込むだけです。例えば

{ \displaystyle  54 = 2 \times 3^3 }

という因数分解をWolfram Alphaにやってもらいましょう

f:id:umauma01:20170408103402p:plain

しっかり素因数分解(Primme factorization)できてますね。上のBinary formが二進数表記になります。

  • 式の展開
{ \displaystyle  (x^3+xy+1) \frac{x^5+8xy+1}{x+2y} }

このめちゃくちゃめんどくさそうな式を展開してもらいましょう!

expand[展開したい数式]

と打ち込んでください

f:id:umauma01:20170408104327p:plain

一瞬でできてしまいます。

  • 因数分解

コマンド:factor[因数分解したい数式]

例:factor[x^2+3x+2]

  • 関数のグラフ化

描画したい数式を打ち込むだけです。2変数関数も描画することができます。

例:

{ \displaystyle  \frac{log(x)}{x} } f:id:umauma01:20170408105145p:plain

プロット範囲を変えるには有料プランじゃないとできないみたいです。

  • 部分分数分解

積分の計算でよく使ったあれです。

コマンド:apart[部分分数分解したい数式]

  • 方程式の解

コマンド:solve[解きたい方程式]

例:solve[x^2+3x+2=0]

  • 連立方程式

解きたい式を「,」で区切ってください

例: x+y=3, x+5y=9

微分・積分

この機能を使うことが、理系大学生にとっては最も多いです。僕も計算方法はわかっているけど、手を動かすのがめんどくさい時や、自分で計算した結果があっているのか調べるときによく使っています。

  • 微分

コマンド: D[微分したい数式]

  • n階微分

コマンド: D[ 微分したい数式,{変数,n} ]

例: D[ x^5+x, {x, 3} ]

  • 偏微分

コマンド: D[ 微分したい数式,微分する変数 ]

例: D[x^3+xy, y]

  • 不定積分

コマンド: int[被積分関数]

  • 定積分

コマンド: int_0^{2}[被積分関数]

例えば、x+1をx:0→2の範囲で積分したい時は

{ \displaystyle  \int^2_0 (x+1)dx }

<コマンド: int_0^{2}x+1]

もしくは

コマンド: Integrate[ x+1, {x, 0, 2]

と打つことで計算ができます。

  • 二重積分

なんと二重積分の計算もできます

例: int_0^1 int_0^1 sin(xy)dxdy

f:id:umauma01:20170409093045p:plain
  • テーラー展開・マクローリン展開

物理の計算では死ぬほど使うので、めちゃくちゃ使います。

例えばx=0近傍で、exp(x)をxの4次項まで展開する時は以下のように書きます

コマンド: Series[ Exp[x], {x, 0, 4}]

行列

  • 行列式

2行2列、3行3列の行列式なら簡単に計算できるのですが、4行4列とかになると計算が面倒くさくなります。自分で計算できるようになるのはもちろん必要ですが、検算に使ったり、面倒くさい時に重宝します。

f:id:umauma01:20170409090652p:plain

この行列式を計算します。コマンドは少し面倒くさいですが、以下のようになります。

コマンド: determinant[{{1,2,5,5},{3,4,8,6},{4,6,7,9},{3,5,76,8}}]

行列式の計算は計算ミスがよく起こるので、検算に使うとかなり便利です。

  • 逆行列

逆行列も計算がかなり面倒です。2行2列なら高校で習う公式で一発ですが、3行3列以上はかなり面倒くさい計算をしなければいけません。

f:id:umauma01:20170409091028p:plain

先ほどの行列の逆行列を求めてみましょう。間違っても自分の手で計算したくないですよね。コマンドの入力は以下のようになります。

コマンド:inverse[{{1,2,5,5},{3,4,8,6},{4,6,7,9},{3,5,76,8}}] f:id:umauma01:20170409091213p:plain

  • 固有値

固有値も求めることができます

例: eigenvalue[{{1,2,0},{1,2,2},{3,2,1}}] f:id:umauma01:20170409091530p:plain

最後に

ここまで読んでいただけたら、Wolfram Alphaの便利さがわかっていただけたと思います。他にも便利なコマンドがあったら教えてください!