2024-09-30

anond:20240930141005

import numpy as np

def lorentz_transform(t, x, v):
    """
    ローレンツ変換を行う関数
    
    引数:
    t: 元の座標系での時間
    x: 元の座標系での位置
    v: 新しい座標系の速度(光速に対する比率戻り値:
    t_prime: 新しい座標系での時間
    x_prime: 新しい座標系での位置
    """
    c = 1  # 光速単位系を簡単にするため1とする)
    
    # ローレンツ因子(γ)の計算
    gamma = 1 / np.sqrt(1 - v**2 / c**2)
    
    # ローレンツ変換の実行
    t_prime = gamma * (t - v * x / c**2)
    x_prime = gamma * (x - v * t)
    
    return t_prime, x_prime

# 使用例
t = 0
x = 1
v = 0.5  # 光速50%

t_prime, x_prime = lorentz_transform(t, x, v)

print(f"元の座標系: t = {t}, x = {x}")
print(f"新しい座標系: t' = {t_prime:.4f}, x' = {x_prime:.4f}")

ハイ論破

記事への反応 -

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん