0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonプログラミングで学ぶ高専微基礎数学

Posted at

第1章 数と式の計算

1. 数とその計算

  • 数学内容:有理数・無理数、指数法則、絶対値の定義、平方根の性質。

  • 工学応用

    • 単位変換(例:mA → µA → nA)、オームの法則計算。
    • 精度管理(有効数字や誤差範囲の扱い)。
    • 物理定数のスケーリング(電子の電荷 e ≈ 1.6×10⁻¹⁹C など)。

2. 整式の計算

  • 数学内容:展開、因数分解、多項式の加減乗除。

  • 工学応用

    • 制御工学の伝達関数(分子・分母の展開)。
    • 信号処理における z 変換の分母多項式。
    • 電磁波解析の特性方程式。

3. 整式の除法

  • 数学内容:余りの定理、因数定理、整式の割り算。

  • 工学応用

    • システムの極と零点の解析。
    • 回路のインピーダンス関数の安定性解析。

4. 方程式

  • 数学内容:一次方程式・二次方程式、解の公式、判別式。

  • 工学応用

    • 振動回路(LC回路)の固有周波数解。
    • 力学での運動方程式解(放物運動、摩擦を含む場合)。
    • 制御工学での特性方程式(システム安定性判定)。

第2章 集合と論理

5. 集合と論理

  • 数学内容:集合の表現、Venn図、集合演算、論理記号。

  • 工学応用

    • デジタル回路設計(AND, OR, NOT のゲート回路)。
    • 真理値表と論理演算 → CPU・FPGA設計基礎。
    • 信号系統分類(フィルタバンクや通信路選択)。

6. 等式と不等式の証明

  • 数学内容:同値変形、背理法、数学的帰納法。

  • 工学応用

    • 構造物の強度設計における「安全率」の数式化。
    • アルゴリズム設計での正当性証明。
    • 不等式で表す許容誤差・許容電流。

第3章 いろいろな関数

7. 2次関数とそのグラフ

  • 数学内容:放物線、頂点の位置、最大最小。

  • 工学応用

    • 放物運動の解析(投射角度と飛距離)。
    • アンテナの放射パターン。
    • レンズの焦点特性。

8. 2次関数と2次方程式・2次不等式

  • 数学内容:解の判別式とグラフの関係。

  • 工学応用

    • RLC回路の共振周波数解。
    • 振動系の安定性解析(臨界減衰条件)。

9. 関数とグラフ

  • 数学内容:逆関数、合成関数、グラフの平行移動。

  • 工学応用

    • センサの非線形補正。
    • 音声信号処理(入力信号と出力波形の関数関係)。
    • 入出力関数のモデリング。

第4章 指数関数と対数関数

10. 指数関数

  • 数学内容:a^x の定義、性質、増加関数。

  • 工学応用

    • RC回路の放電曲線 v(t)=V₀e^(−t/RC)。
    • 放射線の減衰。
    • 人口増加モデル。

11. 対数関数

  • 数学内容:log の性質、底の変換公式。

  • 工学応用

    • デシベル表記 (20log₁₀(Vout/Vin))。
    • 音響工学・無線通信の信号強度表現。
    • 化学分野:pH = −log₁₀[H⁺]。

第5章 三角関数

12. 三角関数

  • 数学内容:単位円による定義、周期性。

  • 工学応用

    • 交流電流の解析(位相差、cosφ)。
    • フーリエ解析の基礎。

13. 三角関数のグラフと方程式・不等式

  • 数学内容:周期性・振幅・位相。

  • 工学応用

    • 機械振動解析。
    • 電力の力率補償。

14. 三角関数の加法定理

  • 数学内容:sin(a±b), cos(a±b)。

  • 工学応用

    • 信号変調・復調。
    • 干渉・ビート現象。

15. 三角比と三角形への応用

  • 数学内容:正弦定理・余弦定理。

  • 工学応用

    • 測量・GPS測位。
    • ロボットアームの運動解析。

第6章 平面図形

16. 点と直線

  • 数学内容:傾き、切片、直線の方程式。

  • 工学応用

    • 画像処理での直線検出(Hough変換)。
    • 構造設計での軸配置。

17. 平面上の曲線

  • 数学内容:円、放物線、楕円、双曲線。

  • 工学応用

    • アンテナ(放物面反射)。
    • レンズの形状設計。

18. 平面上の領域

  • 数学内容:領域の面積。

  • 工学応用

    • 構造物断面の面積 → 応力分布解析。
    • 重心・慣性モーメント計算。

第7章 個数の処理

19. 場合の数

  • 数学内容:順列・組合せ、二項定理。

  • 工学応用

    • 暗号学(鍵の組合せ数)。
    • 通信工学(符号化のパターン数)。
    • 情報理論(通信路容量の計算)。

第1章 数と式の計算

1. 数とその計算

  • 工学応用課題
  1. Pythonで直流回路の電力計算をせよ。I=2A, V=12V のとき P=IV を求めよ。
  2. SI単位系で長さ [m] → [mm] → [µm] の変換をPython関数で作成せよ。
  3. 電子の電荷 e=1.6×10⁻¹⁹C とアボガドロ数 NA=6.02×10²³ を使って、1 mol の電子の総電荷をPythonで計算せよ。

2. 整式の計算

  • 工学応用課題
  1. 制御工学:伝達関数 H(s)=(s+2)(s+3) を展開し、極と零点をSymPyで求めよ。
  2. 通信工学:多項式 (x²+1)(x²+4) を展開し、フィルタの特性多項式として根を計算せよ。
  3. 機械工学:ばね‐質量系の特性方程式 m s² + c s + k を因数分解して固有振動数を求めよ(m=1, c=2, k=3)。

3. 整式の除法

  • 工学応用課題
  1. 回路工学:インピーダンス関数 Z(s)=(s²+3s+2)/(s+1) を割り算して多項式の形に直せ。
  2. 制御系:分母多項式 (s²+5s+6) を (s+2) で割り、安定性に関わる余りを求めよ。
  3. 通信理論:z変換多項式 (z²−0.5z+0.25) を (z−0.5) で割り、システムの極を確認せよ。

4. 方程式

  • 工学応用課題
  1. 力学:放物運動 y=−4.9t²+20t の解から飛距離をPythonで求めよ。
  2. 電気回路:LC回路の固有周波数 ω=1/√(LC)。L=1mH, C=1µF のとき ω を計算せよ。
  3. 制御工学:特性方程式 s²+2s+2=0 の解を求め、安定かどうか判定せよ。
  4. 振動工学:質点の運動方程式 m x''+c x'+k x=0 の判別式をPythonで計算し、振動モードを判定せよ。

第2章 集合と論理

5. 集合と論理

  • 工学応用課題
  1. デジタル回路:Pythonで NAND, NOR, XOR の真理値表を作成せよ。
  2. FPGA設計:集合 {0,1}³ を生成し、3入力ANDの出力を列に追加せよ。
  3. 通信工学:集合 A={AM,FM}, B={PSK,QAM} の直積 A×B を作成し、変調方式の組合せを列挙せよ。
  4. システム設計:集合 {A,B,C} の部分集合をすべて生成し、冗長系の構成パターンを列挙せよ。

6. 等式と不等式の証明

  • 工学応用課題
  1. 材料力学:応力 σ=F/A の不等式をPythonで計算し、F=1000N, A=10mm² のとき σ≤許容応力(200MPa)を確認せよ。
  2. 電気回路:オームの法則 V=IR の検証をPythonで自動化し、I=0.1A, R=47Ω のときVが5V±1%に収まるか判定せよ。
  3. 制御工学:不等式 |H(jω)|≤1 を確認するPython関数を作り、H(s)=1/(s+1) で ω=0〜10 の範囲でプロットせよ。

第3章 いろいろな関数 ― Pythonプログラミング課題

7. 2次関数とそのグラフ(放物線)

  1. f(x)=x²−4x+3 を Python でプロットせよ。頂点の座標を求めよ。
  2. f(x)=−2x²+8x−5 の最大値を SymPy で計算せよ。
  3. 投射運動 y=−4.9t²+10t の軌跡をプロットし、最大高度を求めよ。
  4. 投射運動で初速20 m/s、角度30°の場合の飛距離をPythonで計算せよ。
  5. アンテナ放射パターンを 2次関数近似して、f(θ)=cos²θ を 0≤θ≤π でプロットせよ。

8. 2次関数と2次方程式・不等式

  1. 方程式 x²−5x+6=0 を解の公式を使ってPythonで解け。
  2. 判別式 D=b²−4ac をPython関数に実装し、x²+2x+1=0 の解の重解を確認せよ。
  3. 不等式 x²−4≤0 を解き、グラフ上に範囲をハイライトせよ。
  4. RLC回路の共振角周波数 ω=1/√(LC) を計算せよ。L=1mH, C=1µF。
  5. 減衰振動の判別式 D=c²−4mk をPythonで計算し、過減衰/臨界/不足減衰を判定せよ(m=1, k=4, c=4)。

9. 関数とグラフ(逆関数・合成関数)

  1. f(x)=2x+3 の逆関数をPythonで求めよ。
  2. f(x)=x², g(x)=√x の関数をプロットし、逆関数関係を確認せよ。
  3. f(x)=sin(x), g(x)=x² の合成関数 g(f(x)) を Python で定義し、x=0〜2πでプロットせよ。
  4. 音声信号モデル s(t)=sin(2π100t) をサンプリングし、出力 y(t)=s(t)² をプロットせよ。
  5. センサ出力が非線形 f(V)=V²+0.1V のとき、逆関数を近似して入力Vを推定するPython関数を作れ。

応用演習(統合課題)

  1. 放物線 y=ax²+bx+c の係数 a,b,c を入力して、頂点・軸・判別式を自動出力するPythonプログラムを作成せよ。
  2. 投射運動のシミュレーションを行い、角度を変化させた場合の飛距離をPythonでプロットせよ。
  3. f(x)=x² と g(x)=1/x を同一グラフに描き、交点を数値的に求めよ。
  4. 制御工学:伝達関数 H(s)=1/(s²+2s+2) を定義し、極と零点をPythonで計算せよ。
  5. 音声処理:f(t)=cos(2πf₁t)+cos(2πf₂t)(f₁=100Hz, f₂=200Hz)の信号を生成し、Matplotlibで波形を描け。

第4章 指数関数と対数関数 ― Pythonプログラミング課題

10. 指数関数

  1. f(x)=2^x を Python で定義し、x=−3〜3 でグラフを描け。
  2. f(x)=e^x の微分が e^x になることを SymPy で確認せよ。
  3. f(x)=e^(−x) のグラフをプロットし、x→∞ で 0 に収束することを確認せよ。
  4. RC回路の放電 v(t)=5·e^(−t/0.1) を t=0〜1 でプロットせよ。
  5. 放射性物質の減衰 N(t)=N₀·e^(−λt) を λ=0.1, N₀=100 としてシミュレーションせよ。
  6. 人口モデル P(t)=P₀·e^(rt) を r=0.02, P₀=1000 として 100 年後の人口を計算せよ。
  7. 連続複利計算 A(t)=P·e^(rt) を Python で計算し、P=100, r=0.05, t=10 の場合を出力せよ。
  8. f(x)=exp(−x²) を NumPy でプロットし、ガウス分布の形を確認せよ。
  9. e^(jx) の実部と虚部をプロットし、オイラーの公式 e^(jx)=cos(x)+jsin(x) を確認せよ。
  10. 微分方程式 dy/dt=−y の解 y(t)=e^(−t) を Python で数値的に確認せよ。

11. 対数関数

  1. f(x)=log(x) を x=0.1〜10 の範囲でプロットせよ。
  2. log₁₀(x) と ln(x) を同一グラフに描き、違いを比較せよ。
  3. 底の変換公式 logₐ(x)=ln(x)/ln(a) を Python 関数で実装し、a=2, x=8 の場合を計算せよ。
  4. デシベル変換 20·log₁₀(Vout/Vin) を関数化し、Vin=1V, Vout=0.5V の場合を求めよ。
  5. 通信における SNR=10·log₁₀(Psignal/Pnoise) を計算せよ(Psignal=100, Pnoise=1)。
  6. 音の強さ I=10^(L/10) を用い、L=60dB のときの I を計算せよ。
  7. 化学における pH=−log₁₀[H⁺] を計算せよ。[H⁺]=1e−7 mol/L の場合を求めよ。
  8. 対数グラフを使って y=x² と y=2^x を同一図に描き、成長速度を比較せよ。
  9. 対数微分法を使い、f(x)=x^x の導関数を SymPy で求めよ。
  10. 対数スケールで RC回路のボード線図を描き、ゲイン特性を確認せよ。

第5章 三角関数 ― Python演習

12. 三角関数(基礎と周期性)

課題1 sin(x), cos(x) を x=0〜2π で NumPy を使ってプロットせよ。

  • ヒント:

    • np.linspace(0, 2*np.pi, 200) で刻みを生成。
    • np.sin(x)np.cos(x) を計算。
    • plt.plot で重ね書きし、凡例をつける。

課題2 tan(x) のグラフを描き、漸近線の位置を確認せよ。

  • ヒント:

    • np.tan(x) を用いる。
    • x=π/2, 3π/2,… に発散 → plt.axvline で縦線を引く。

課題3 sin²(x)+cos²(x)=1 が成り立つことを Python で数値的に確認せよ。

  • ヒント:

    • sin(x)**2 + cos(x)**2 を計算し、1との差を np.allclose で確認。

課題4 sin(x) の周期性 f(x)=f(x+2π) を数値計算で確認せよ。

  • ヒント:

    • sin(x)sin(x+2*np.pi) を比較。
    • 差分を出してグラフ化。

課題5 交流電流 i(t)=I₀·sin(ωt+φ) を I₀=10, ω=2π60, φ=π/6 としてプロットせよ。

  • ヒント:

    • t = np.linspace(0, 0.05, 1000) (50ms程度)。
    • i = 10*np.sin(2*np.pi*60*t + np.pi/6) を計算。

13. 三角関数のグラフと方程式・不等式

課題6 sin(x)=0.5 の解を SymPy で求め、数直線にプロットせよ。

  • ヒント:

    • sp.solve(sp.Eq(sp.sin(x), 0.5), x) を使う。
    • 0〜2π の解をプロット。

課題7 cos(x)=0 の解を 0〜2π の範囲で求めよ。

  • ヒント:

    • x=π/2, 3π/2 が解。
    • solve でも可能。

課題8 y=2·sin(3x) のグラフを描き、振幅・周期を確認せよ。

  • ヒント:

    • 振幅=2, 周期=2π/3。
    • プロットして確認。

課題9 不等式 sin(x) > 0 を解き、区間を表示せよ。

  • ヒント:

    • SymPy の solveset で不等式を扱う。
    • 解は (0,π) mod 2π。

課題10 振動系 y(t)=sin(2πft) を f=5Hz, 10Hz で描き、周波数による違いを比較せよ。

  • ヒント:

    • t=0〜1s を linspace で。
    • sin(2*np.pi*5*t)sin(2*np.pi*10*t) を重ねて描く。

14. 三角関数の加法定理

課題11 sin(a+b) と sin(a)cos(b)+cos(a)sin(b) が等しいことを Python で確認せよ。

  • ヒント:

    • SymPy で simplify(sin(a+b) - (sin(a)*cos(b)+cos(a)*sin(b))) → 0 になる。

課題12 cos(a−b) と cos(a)cos(b)+sin(a)sin(b) の等式を数値的に検証せよ。

  • ヒント:

    • NumPy でランダムな a, b を生成。
    • 両辺の差を計算。

課題13 sin(a)+sin(b)=2sin((a+b)/2)cos((a−b)/2) の恒等式を確認せよ。

  • ヒント:

    • SymPy の simplify を使う。

課題14 信号変調例:cos(2π10t)·cos(2π2t) をプロットし、和周波・差周波を観察せよ。

  • ヒント:

    • cosA cosB = 0.5[cos(A+B)+cos(A−B)] の公式。
    • FFTでスペクトル確認しても良い。

課題15 ビート現象:sin(2π50t)+sin(2π52t) を 0〜1s の範囲でプロットせよ。

  • ヒント:

    • sin(2π50t)+sin(2π52t) を時間領域で描く。
    • ゆっくり変動する包絡波が見える。

15. 三角比と三角形への応用

課題16 三角形の3辺 a=3, b=4, c=5 に対し、余弦定理で角Cを求めよ。

  • ヒント:

    • 余弦定理 cosC=(a²+b²−c²)/(2ab)。
    • np.arccos で角度を計算。

課題17 正弦定理を用いて、a=5, A=30°, B=60° のときの辺 b を計算せよ。

  • ヒント:

    • a/sinA = b/sinB。
    • sinB=√3/2, sinA=0.5。

課題18 GPS測位モデル:三角測量をシミュレーションし、2点の距離と角度から位置を算出せよ。

  • ヒント:

    • 2点 (x1, y1), (x2, y2) と角度から三角測量。
    • 直線の交点を NumPy で計算。

課題19 ロボットアーム(2リンク)の順運動学を Python で計算し、先端座標を出力せよ。

  • ヒント:

    • x = l1 cosθ1 + l2 cos(θ1+θ2)。
    • y = l1 sinθ1 + l2 sin(θ1+θ2)。

課題20 振動解析:y(t)=sin(2π60t+φ) と y(t)=sin(2π60t) の位相差 φ=π/3 を確認し、cosφ による力率を計算せよ。

  • ヒント:

    • 2波形を重ねて描画。
    • 力率 cosφ=cos(π/3)=0.5。

第6章 平面図形 ― Python課題

16. 点と直線

  1. 2点 (0,0), (2,4) を通る直線の方程式を Python で求め、グラフに描け。
  2. 傾き m=2, 切片 b=1 の直線を描け。
  3. 点 (3,2) から直線 y=2x+1 への距離を計算せよ。
  4. 直線 y=−0.5x+2 と y=2x−1 の交点を計算せよ。
  5. 複数の直線 (ランダム生成) を描き、交点を NumPy で求めよ。

17. 平面上の曲線

  1. 半径 r=3 の円の方程式 x²+y²=r² を Python で描け。
  2. 放物線 y=x² を描き、頂点を確認せよ。
  3. 楕円 x²/9+y²/4=1 を Python で描け。
  4. 双曲線 x²−y²=1 を Python で描け。
  5. 放物線アンテナの開口径 d=2m, 焦点距離 f=0.5m の形状をシミュレーションせよ。

18. 平面上の領域

  1. 三角形 (0,0), (4,0), (2,3) の面積を計算せよ。
  2. 円の面積を数値積分で求めよ (半径 r=2)。
  3. 関数 y=x² と y=4 の間の面積を積分で求めよ。
  4. 領域をメッシュ化し、重心座標を計算せよ。
  5. 長方形断面 (幅=2m, 高さ=3m) の慣性モーメントを計算せよ。

工学応用課題

  1. Hough変換の基本:直線 y=2x+1 のパラメータ (ρ, θ) を求めよ。
  2. 放物線反射アンテナ:入射光線を焦点で反射させる様子をプロットせよ。
  3. レンズ近似:楕円の曲率半径を計算せよ。
  4. 構造物断面:I型鋼の断面形状を定義し、断面二次モーメントを計算せよ。
  5. 画像処理応用:ランダム点群に対して最小二乗法直線フィッティングを行え。

第7章 個数の処理 ― Pythonプログラミング課題

19. 場合の数(順列・組合せ・二項定理)

  1. 順列 P(5,3) を Python で計算せよ。
  2. 組合せ C(5,3) を Python で計算せよ。
  3. n=6, r=0〜6 の二項係数を求め、リストとして表示せよ。
  4. 二項定理 (a+b)⁵ を展開し、係数を表示せよ。
  5. n=10, p=0.3 の二項分布の確率を全て求めよ。

応用例(暗号学・通信工学)

  1. 4桁の数字暗証番号の総数を求めよ。
  2. 英大文字26文字から長さ8のパスワードを作る場合の組合せ数を計算せよ。
  3. 鍵長128ビットの暗号鍵の組合せ数を 2ⁿ を用いて計算せよ。
  4. エラー検出符号:3ビットの組合せで可能な符号数を求めよ。
  5. 通信チャネルが2状態(0,1)を持つ場合、長さ10ビットの全組合せ数を求めよ。

Pythonで実装する演習

  1. itertools を使って、{1,2,3,4} の順列をすべて列挙せよ。
  2. itertools を使って、{A,B,C,D} の組合せを2つ選ぶ場合を列挙せよ。
  3. n=20, k=10 の組合せ数を math.comb で計算せよ。
  4. パスワード総当たり時間:毎秒10⁶回試行できる場合、8文字の小文字パスワード (26文字) を突破するのにかかる時間を計算せよ。
  5. 通信符号長 n=7, 情報ビット数 k=4 の場合、可能な符号語の総数を求めよ。

工学応用(情報理論)

  1. 情報エントロピー H=−Σp log₂p を Python で計算せよ (p={0.5,0.25,0.25})。
  2. 通信路容量 C=log₂(1+S/N) を S/N=10 で計算せよ。
  3. 2進信号を長さ5で送信する場合の全コード数を求めよ。
  4. 多重アクセス通信で、4人が2チャンネルを共有するときの割り当て組合せ数を求めよ。
  5. 二項分布の近似として正規分布を Python でシミュレーションせよ (n=100, p=0.5)。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?