8. Lorenz time table

Author

이상민

Published

April 17, 2025

import torch
import numpy as np
import matplotlib.pyplot as plt
from synthetic import simulate_lorenz_96
from models.clstm import cLSTM, train_model_ista
import numpy as np
import matplotlib.pyplot as plt

# simulate_lorenz_96 함수는 이미 있다고 가정

p = 20
F_list = [10, 40]
T_list = [250, 500, 1000]

# 그림 만들기
fig, axes = plt.subplots(len(F_list), len(T_list), figsize=(15, 6), sharex=False, sharey=True)
fig.suptitle("Lorenz-96 (변수 0 선 그래프) - 다양한 F, T", fontsize=16)

for i, F in enumerate(F_list):
    for j, T in enumerate(T_list):
        # 시뮬레이션
        X, _ = simulate_lorenz_96(p=p, F=F, T=T)

        # 선 그래프로 시각화
        ax = axes[i, j]
        ax.plot(X[:, 0], color='tab:blue')
        ax.set_title(f"F={F}, T={T}")
        ax.set_xlabel("Time")
        if j == 0:
            ax.set_ylabel("x₀ value")

plt.tight_layout()
plt.subplots_adjust(top=0.88)
plt.show()
/tmp/ipykernel_196839/3375532367.py:27: UserWarning: Glyph 8320 (\N{SUBSCRIPT ZERO}) missing from current font.
  plt.tight_layout()
/root/anaconda3/envs/pypy/lib/python3.10/site-packages/IPython/core/pylabtools.py:152: UserWarning: Glyph 8320 (\N{SUBSCRIPT ZERO}) missing from current font.
  fig.canvas.print_figure(bytes_io, **kw)