4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

PythonをWindowsの関数電卓代わりに使う

Last updated at Posted at 2019-05-26

概要

  • windows標準の関数電卓やExcelは工学系にとって使いづらい。
  • Pythonを関数電卓として使うと便利。

はじめに

複雑な数式を扱う工学系の学生や電気/機械設計エンジニアにとってwindows標準の関数電卓は使いづらくありませんか。計算式の途中を間違えると最初からやり直しですし、変数も使えないうえ、複素数も扱えません。
Excelであれば実数と虚数でセルを分けて計算できるため少しマシですが、直感的ではなく扱いづらいですし、何よりスマートでないです。
代わりとして、Pythonを用いればすべての問題を解決できます。

比較

例題

私は回路設計エンジニアで、複素数を扱います。例えば以下のような計算が日常的に現れます。

\Gamma = \left | \frac{Z_{L}-Z_{0}}{Z_{L}+Z_{0}} \right | \\
Z_{L}=52.35+39.54j \\
Z_{0}=76.89-20.87j

これを例に計算をおこないます。

Windowsの関数電卓を用いる場合

Γの計算をwindowsの関数電卓で行う場合、手順は以下のようになります。
1.実部のみを計算

(52.35-76.89)/(52.35+76.89)≒-0.120

2.虚部のみを計算

(39.54-20.87)/(39.54+20.87)≒0.485

3.絶対値を計算

\sqrt{(-0.120)^2+(0.485)^2}≒0.499

これらを手打ちするのはかなりハードです。同じ数字を何度も打つので時間がかかりますし、途中で打ち間違えに気が付いても修正できません。

Pythonを用いる場合

先ほどと同じ計算をPythonでおこないます。Pythonが標準で複素数をサポートしているので楽に計算ができます。

#変数に代入する。
zl = 52.35+39.54j
z0 = 76.89-20.87j

#計算する。
gamma = abs((zl-z0)/(zl+z0))
print(gamma)

実行結果 : 0.4993364571001565

こちらの計算方法は直感的で、打ち間違えの修正も簡単です。
効率や簡単さの点からPythonの圧勝です。

起動時にmathライブラリをimportする

Pythonのコンソールを開いてすぐの状態では、対数や三角関数などの基本的な計算がサポートされていません。Pythonを日常的に使う場合には不便なので、起動時にmathライブラリをインポートします。

calc.py
from math import *
calc_lancher.bat
@echo off
python -i calc.py

calc_lancher.bat実行後の計算例:
'計算例'

複素数を扱う場合はmathライブラリの代わりにcmathライブラリをimportしてください。

このバッチをキーボードの電卓キーに登録すると、いつでも簡単に開けて便利です。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?