本記事は,学部1年時の実験におけるデータ処理のために表計算ソフトを用いることを主題として話を進める.
表計算ソフト
表計算ソフトは,多数のデータに同様の処理を行うのに長けている.また,表として目に見えているため,プログラムを作成するよりも直感的かつ短時間で処理ができる.本実験のデータ処理に表計算ソフトを使うと良い.主流なソフトウェアとオンラインサービスを1つずつ紹介しておく.
Excel
Microsoft 社の Excel である.最もよく知られた表計算ソフトである.様々な関数が用意されており,グラフの描画や回帰解析が容易であるため,大変便利である.
回帰解析とは,簡単に言うと,最小二乗法を用いて,近似直線に関する係数や切片情報を理論的に計算する解析のことである.ある座標値のデータセットを入力すると,その座標値からすべての点からの距離が最も短くなるような直線を出力する.回帰解析は,Excelアドイン(add-in)機能であり,場合によっては標準搭載ではないため,別途個人で取得しなければならない.ただ,無料のツールであり,簡単に取得できる.回帰解析は,アドインの分析ツール内に用意されている.その分析ツールの取得方法が以下のURLに載っているため,使いたい者はそこから取得すると良い.
もしくは,単純に散布図上で近似曲線を引き,その傾きと切片を求めることからも可能である.
Spread Sheet
Google社のオンラインサービスであり,オフラインでも使用可能である.基本的な操作方法は,Excelと同じであり,Excelが使える者には,問題なく使用できる.Microsoft社特有の自動更新や,よくわからないところでの処理落ちなどが少ないと感じられるため,筆者は最近こちらを使用している.
また,自動保存や,クラウド上での保存であるため,データが消えることがあまりないのも,また良い.
回帰分析は,Excel 同様にアドオン(add-on)の機能となっているが,単回キッ分析については,散布図上で近似曲線とその傾き・切片を求めることも可能である.
演算方法
数式を用いた実験データの処理方法を以下に記す.
数式の導入
Excel の表,1マスのことをセルと呼ぶ.セルに半角 = を打つと,数式モードとなる.= に続けて数式を入力すると,計算結果がそのセルに表示されるようになる.つまり,A1 のセルに=1+1
と入力すると2
が表示される.
A1 のセルに 1
を,B1のセルに 2
を,C1のセルに =A1+B1
と入力すると,C1のセルに 3
が表示される.これは,A1やB1のセルの名前が変数となり,その変数ごとの足し算として計算されるためである.
四則演算は,通常の演算規則通りに行うことができる.
-
- :加法
-
- :減法
- *:乗法
- /:除法
組み込み関数
表計算ソフトには,もとから用意されている関数が多数存在する.単に,数学の計算にとどまらず,確率統計や,文字列の検索機能など多岐に渡っている.
三角関数
三角関数は,組み込み関数として用意されている.角度は弧度法を用いている.$\pi$の組み込み関数は,PI()
である.
関数 | 表計算ソフト上 | 引数備考 | 戻り値備考 |
---|---|---|---|
$\sin \theta $ | SIN(角度) | 弧度法[ rad ] | [ -1 , 1 ] |
$\cos \theta $ | COS(角度) | 弧度法[ rad ] | [ -1 , 1 ] |
$\tan \theta $ | TAN(角度) | 弧度法[ rad ] | $( -\infty , \infty )$ |
$\arcsin x $ | ASIN(数値) | [ -1 , 1 ] | $[ -\pi/2 , \pi/2 ]$ |
$\arccos x $ | ACOS(数値) | [ -1 , 1 ] | $[ 0 , \pi ]$ |
$\arctan x $ | ATAN(数値) | $( -\infty , \infty )$ | $( -\pi/2 , \pi/2 )$ |
度数表記 (degree of angle)
組み込み関数の三角関数が弧度法を用いているため,度数表記をそのまま代入しても正しい演算が行われない.つまり,=COS(60)
は,0.5
とはならず,-0.952413
と返される.そこで,度数表記を弧度法に変換する関数RADIANS()
と弧度法を度数表記に変換する関数DEGREES()
を用いる.つまり,=COS(RADIANS(60))
のようにすると0.5
と返され,=DEGREES(ACOS(0.5))
とすると,60
と返される.
また,この変換を自分で入力してもよく,=COS(PI()*60/180)
とすると,正しく,0.5
と出力される.同様に, =180*ACOS(0.5)/PI()
で,60
と返される.
指数関数と対数関数
計算の中では,自然対数を底とする指数関数がよく使われる.その自然対数の底の指数関数を定義しているのが,EXP()
である.引数には,冪乗の指数を与える.
EXP(1) = 2.7182818
自然対数は,LN()
で定義され,引数に自然対数の真数を取る.そのため,製の実数である必要がある.
LN(2.7182818)=1
また,それ以外の対数は,LOG(数値,[底])
で定義され,底は,省略可能である.省略された場合,底が10の常用対数を意味する.
冪乗は,底^指数
もしくは,POWER(底,指数)
で定義されている.
関数 | 表計算ソフト上 | 引数備考 |
---|---|---|
$e$ の指数関数 | EXP(指数) | |
冪乗 | POWER(底,指数) | |
冪乗 | 底^指数 | |
自然対数 | LN(真数) | 真数は,正の実数 |
対数関数 | LOG(真数,[底]) | 真数は,正の実数.底の省略は,底を10とみなす. |
物理学と表計算ソフト
物理学で行う計算を表計算ソフト上で行うことができる.ここでは,例として,平均速度 $ \bar{v} $ の計算を考える.
物体の測定時刻と変位を$ t,x $とすると,
$$\bar{v} = \frac{x - x_0 }{t - t_0}$$
と表すことができる.したがって,この計算を表計算ソフトで実行すればよい.
A列を時間,B列を変位,C列を速度とする.今,あるA列k行目のセルをA[k]
と記すことにする.このとき,k,k+1 番目の時間と変位を用いて,その区間の平均速度を求めようとすると,
=(B[k+1]-B[k]) / (A[k+1]-A[k])
とC[k]
に入力すれば良いことがわかる.ただ,この速度は,k 番目の変位での速度でも k+1 番目の速度でもないことに注意しなければならない.そこで,速度が変位に対して一次関数で変化すると考えると,平均速度を中点の k+1/2 での速度であるとできる.このとき,表を誤読するのを防止するために,D列を中点の変位,E列を平均速度とするとよい.
離散と連続
以上の計算で注意しなければならないことがある.表計算ソフト上では,ある変数の値を連続的に考えることは,できないのである.解析的に物理学の計算を行うときは,変数は連続の値を持つが,実験で得られたデータは,細かくデータを取得することはできるが,必ず,飛び飛びでしかデータを取得することができず,離散的な値となってしまう.また,それを用いた表計算ソフトでは,離散的な計算による処理しかできないことを理解しておく必要がある.
それは,速度は,時刻と変位を用いると
$$ v = \frac{\mathrm{d} x}{\mathrm{d} t}$$
であり,上の計算で用いた式が,
$$\bar{v} = \frac{x - x_0 }{t - t_0}$$
であることからも伺える.これが,離散化にすべき近似であり,誤差が生じる.この誤差を小さくするために,近似精度を良くすることがなされてきた.そのような方法を数値計算では用いている.
グラフの描画
グラフにしたいデータをすべて選択し,挿入 → グラフ → 散布図
の順にたどると,グラフが完成する.凡例や,色,座標軸等は,グラフエリアの書式設定
から変更できる.右クリックしたときのメニューの中から選択できる.
近似直線は,グラフのデザイン → グラフ要素を追加 → 近似曲線
から挿入できる.近似曲線の式は,式の表示を選択すると表示される.
大量に選択するときは,Shiftキーを押しながらセルを選択することで,以前選択していたセルから新たに選択したセルまでのすべてのセルが選択されるため,便利である.macOSでは,Commandキー,Windowsでは,Controlキーを押しながら複数セルを選択すると,選択されたセルのみがすべて選択される.
以上のような方法で,実験のデータを処理することができる.他にも様々な関数や表計算ソフトの使い方があるため,遊んでみることを勧めておく.