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?

「一次分数変換(linear fractional transformation)とは何ですか。」をAI先生に聞きました。

Last updated at Posted at 2025-04-06

ChatGPT先生へ

一次分数変換について教えて下さい。
wikipediaの一次分数変換の記事に日本の文献がありませんでした。
日本の文献を教えて下さい。
一次分数変換を研究しておられるのは、数研出版様だけですか。
https://ja.m.wikipedia.org/wiki/一次分数変換#参考文献

(回答抜粋)
ご指摘のとおり、ウィキペディアの「一次分数変換」記事の参考文献には日本語の文献が含まれていません。​しかし、...
・「一次分数変換を利用した連立代数方程式の高精度計算法」(1996年)
・「連立代数方程式の数値解法における一次分数変換の新たな適用について」(1998年)

例えば、大阪教育大学や佐賀大学のリポジトリ...

Gemini先生へ

質問リスト

・質問リストの追番は無視して下さい。1個ずつです。途中の回答表示は省略しています。

質問リスト
1.一次分数変換とは何ですか。
2.上記をsympyのソースコードで教えて下さい。結果も一緒に表示して下さい。
3.上記を作図で教えて下さい。
from sympy import symbols, simplify

# 変数の定義
z, a, b, c, d = symbols('z a b c d')

# 一次分数変換の定義
def linear_fractional_transform(z, a, b, c, d):
  return (a*z + b) / (c*z + d)

# 例1: 平行移動
w1 = linear_fractional_transform(z, 1, 1, 0, 1)
print("例1 (平行移動): w = ", simplify(w1))

# 例2: 拡大・縮小
w2 = linear_fractional_transform(z, 2, 0, 0, 1)
print("例2 (拡大・縮小): w = ", simplify(w2))

# 例3: 反転
w3 = linear_fractional_transform(z, 0, 1, 1, 0)
print("例3 (反転): w = ", simplify(w3))

# 例4: 単位円板から上半平面への変換
w4 = linear_fractional_transform(z, 1, -1, 1, 1)
print("例4 (単位円板から上半平面への変換): w = ", simplify(w4))
実行結果:
例1 (平行移動): w = z + 1
例2 (拡大・縮小): w = 2*z
例3 (反転): w = 1/z
例4 (単位円板から上半平面への変換): w = (z - 1)/(z + 1)

実行結果:

import sympy
import matplotlib.pyplot as plt
import numpy as np

# 変数の定義
z = sympy.symbols('z')

# 一次分数変換の定義
def linear_fractional_transform(z, a, b, c, d):
  return (a*z + b) / (c*z + d)

# 変換する図形の定義 (例: 単位円)
theta = np.linspace(0, 2*np.pi, 100)
z_vals = np.exp(1j*theta)

# 変換のパラメータ
a, b, c, d = 1, -1, 1, 1

# 変換後の図形を計算
w_func = linear_fractional_transform(z, a, b, c, d)
w_vals = [sympy.lambdify(z, w_func)(val) for val in z_vals]

# 作図
plt.figure(figsize=(8, 4))

plt.subplot(1, 2, 1)
plt.plot(np.real(z_vals), np.imag(z_vals))
plt.title("Original Figure")
plt.xlabel("Real")
plt.ylabel("Imaginary")
plt.axhline(0, color='black', linewidth=0.5)
plt.axvline(0, color='black', linewidth=0.5)
plt.grid(True)
plt.axis('equal')

plt.subplot(1, 2, 2)
plt.plot(np.real(w_vals), np.imag(w_vals))
plt.title("Transformed Figure")
plt.xlabel("Real")
plt.ylabel("Imaginary")
plt.axhline(0, color='black', linewidth=0.5)
plt.axvline(0, color='black', linewidth=0.5)
plt.grid(True)
plt.axis('equal')

plt.tight_layout()
plt.show()

copilot先生へ

いつもの? sympyの実行環境と 参考のおすすめです。

(テンプレート)

いつもと違うおすすめです。

wikipedia

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?