{
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "yNiFcBU9f34Q"
      },
      "source": [
        "### Libraries"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 78,
      "metadata": {
        "id": "j91ZRxA3f34Y",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "b0e9b4ae-f795-424a-dc24-60d455715962"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Mounted at /content/drive\n"
          ]
        }
      ],
      "source": [
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "import seaborn as sns\n",
        "import os\n",
        "import torch\n",
        "import torch.nn as nn\n",
        "import glob\n",
        "import matplotlib.tri as tri\n",
        "import pandas as pd\n",
        "from PIL import Image\n",
        "from sklearn.preprocessing import MinMaxScaler\n",
        "import imageio\n",
        "from typing import Tuple, Union\n",
        "from torchsummary import summary\n",
        "from tqdm import tqdm as tqdm\n",
        "from sklearn.model_selection import train_test_split\n",
        "import torch.optim as optim\n",
        "import torch.nn.functional as F\n",
        "from torch.utils.data import DataLoader, TensorDataset\n",
        "import math\n",
        "from scipy.interpolate import interp1d\n",
        "from torch.utils.data import Dataset, DataLoader\n",
        "import copy\n",
        "from torchvision import transforms\n",
        "import torchvision\n",
        "import torch.nn.init as init\n",
        "from scipy.linalg import norm\n",
        "from skimage.transform import resize\n",
        "import shutil\n",
        "import cv2\n",
        "from scipy.linalg import svd\n",
        "import gzip\n",
        "\n",
        "import shutil\n",
        "from google.colab import drive\n",
        "drive.mount('/content/drive', force_remount=True)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "z6k9P75cf34a"
      },
      "source": [
        "### Load CFD Data"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "model = 'Sten' # or Sten\n",
        "bc_name = 'Wall' # or Wall\n",
        "state_lstm = 'load'  # train | load"
      ],
      "metadata": {
        "id": "c-D8zzrRg9fy"
      },
      "execution_count": 79,
      "outputs": []
    },
    {
      "cell_type": "code",
      "execution_count": 80,
      "metadata": {
        "id": "9QyXL92-f34c"
      },
      "outputs": [],
      "source": [
        "data = np.load(f'/content/drive/MyDrive/Paper/RoSo/{model}/{bc_name}/rylScty_patientSpec_StenosisModel_wallPre&OSI&WSS.npz')\n",
        "\n",
        "x = data['x']\n",
        "y = data['y']\n",
        "z = data['z']\n",
        "pre = data['pre']\n",
        "osi = data['osi']\n",
        "wss = data['wss']\n",
        "del data"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 81,
      "metadata": {
        "id": "0dqGc54nf34d"
      },
      "outputs": [],
      "source": [
        "variable = wss.T # (loc, time)\n",
        "variable_name = 'WSS'"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "ob-RwiNyf34d"
      },
      "source": [
        "### General Model Info"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 82,
      "metadata": {
        "id": "zj4OeyScf34d"
      },
      "outputs": [],
      "source": [
        "n_snapshots = 1000"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "qyURirjMf34e"
      },
      "source": [
        "### Read BCs"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 83,
      "metadata": {
        "id": "O6H0DvJZf34e"
      },
      "outputs": [],
      "source": [
        "df = pd.read_csv('/content/drive/MyDrive/Paper/RoSo/BC.csv')\n",
        "\n",
        "#Velocity Function Interpolation\n",
        "tv_values = df['t1'].tolist()\n",
        "v_values = df['v'].tolist()\n",
        "#Create interpolation function\n",
        "interp_func = interp1d(tv_values, v_values)\n",
        "# Generate 2000 uniform values\n",
        "uniform_tv_values = np.linspace(min(tv_values), max(tv_values), n_snapshots)\n",
        "interpolated_v_values = interp_func(uniform_tv_values)\n",
        "\n",
        "#Pressure Function Interpolation\n",
        "tp_values = df['t2'].tolist()\n",
        "tp_values = [x for x in tp_values if not math.isnan(x)]\n",
        "P_values = df['P'].tolist()\n",
        "P_values = [x for x in P_values if not math.isnan(x)]\n",
        "#Create interpolation function\n",
        "interp_func = interp1d(tp_values, P_values)\n",
        "#Generate 2000 uniform values\n",
        "uniform_tp_values = np.linspace(min(tp_values), max(tp_values), n_snapshots)\n",
        "interpolated_P_values = interp_func(uniform_tp_values)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "q7hVSxV9f34f"
      },
      "source": [
        "### POD"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 84,
      "metadata": {
        "id": "kv-AckWaf34g",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 54
        },
        "outputId": "f7523435-c0f7-4a12-d4b9-92ece52ed724"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 1000x600 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3wAAAJFCAYAAACGFvXzAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAACST0lEQVR4nOzdd3hUVeL/8c9k0kMSIAkhoQSIlEgRpAgoRTCKKIqCFRHbotiws6BfRdf9UdQFdUVXVFQEWaUoIC3SpQkWEAQEpIXQAgkJpCf39webMZOZSSaZSSbl/XqeeZw595x7z2SOYT65955jMgzDEAAAAACgxvHydAcAAAAAABWDwAcAAAAANRSBDwAAAABqKAIfAAAAANRQBD4AAAAAqKEIfAAAAABQQxH4AAAAAKCGIvABAAAAQA1F4AMAAACAGorABwCApPHjx8tkMjl89O3b19NdrBauueaaEn+O48eP93QXAaBWIfABqLG+/fZbqy+adevWVUZGhqe7hSqqfv36io2NVWxsrKe7Uq01atRIsbGxio6OrrBjlBQoy/to1qxZhfUXADzJ29MdAICKMn36dKvX586d09dff60RI0Z4qEeoyp588kk9+eSTki4GiqrA3tmwZs2a6b777qv0vjjrs88+kyStWbNGV199dYUcw2w2W57n5+dXyDEAoKYg8AGokRITE7Vs2TKb8unTpxP4UG28+uqrNmV9+vSp0oGvMuTl5VmeN2vWTIcPH7apM2bMGA0YMKDUfS1btkyTJk1ya/8AoCoh8AGokT755BO7f/nfsGGDfv/9d1166aUe6BWAytKmTRun7rs8dOhQhfcFADyJe/gA1DgFBQX65JNPHG4vfqknAABATUXgA1DjrFixwu4lXoVmzpyp7OzsSuwRgKoqIiJCV1xxhTp16uTprgBAhSDwAahxCs/gObps88yZM5o3b15ldglAFXXDDTdo8+bNWrBggae7AgAVgsAHoEY5efKkFi1aJEl65513FBcXZ7deeS7rNAxDy5Yt02OPPaZOnTopMjJSvr6+CgwMVFRUlHr06KEHHnhA06dP14EDB5za58GDB/Xaa68pPj5eTZo0UVBQkHx9fVW/fn21bdtWgwcP1j//+U+tW7fOaqIKSbrvvvtKnGa++MQeDz30UIn116xZY9O/0qayL2yzbds2jRgxQs2bN5e/v78aNmyoK6+8Uu+//76ysrKs9pmYmKgXX3xR7du3V2hoqIKCghQXF6enn35ax44ds/tzOnToUKl9KXovVmJiYqWuqXfmzBl98cUXeuyxx9S7d281adJEderUkbe3t0JCQtS4cWP169dPzz77rDZt2lTivoquB2jP2rVrS/2si/vxxx/13HPPqXv37oqKipKfn59CQkIUGxur22+/XTNmzCjTWe+srCxNmzZNAwYMUKNGjeTn56fIyEj169dPs2bNcno/nrBmzZoSf76FnB3727dv1yOPPKJWrVopODhYQUFBuvTSS/Xcc8/p5MmTZeqbq59Tab8TCse9YRj69ttvNXDgQDVt2lTe3t6WOp9++qnNfvft26fnn39enTp1UlhYmHx9fdWwYUNde+21mj59uvLz8536feTsEhnFtWvXzqnfcQAcMACgBpkwYYIhyWjRooVRUFBgvPnmm4Yku48//vjD6f1u2bLFaNeund39hIeHG40bNzbMZrNVefv27Y3Tp0/b3V9aWppx33332bSRZAQGBhpNmzY1goKCrMrDwsKMWbNmWfbxwgsvGLGxsUZMTIzdfo0YMcLqmGPHjjViY2ONevXq2a2/evVqm37GxsaW2ubtt982vL29Hf6cr7zySiMlJcUwDMNYsmSJw31JMurVq2ds2bLFph+JiYmWvgQHB9tte/DgQUv948ePW+rbq9unT58SP++ytNm/f7/N52g2m41GjRoZYWFhdvfVu3dvY9++fXb39/bbb5fYd39/f8v2wscLL7xgd19HjhwxrrnmGpt9REVFGf7+/lZlTZs2NZYtW1biz8UwDGPjxo1GkyZNHH6Gkow777zTWLlypd1tr7zySqnHKAtH43/GjBl2669evdpSpyTOjP1p06YZPj4+Dn8OERERxi+//FLqe3DX51T4O6GkcZ+bm2vce++9Dvtc/Oc2fvx4u++xfv36RmRkpCHJuOqqq4yhQ4fa3V9MTIxljMbGxhpNmza1W8/Ly8vS9+Kuv/56IzY21ggNDbX8nihp3AOwRuADUGMUFBRYvui8/vrrhmEYxsmTJx1+IXP2y8KXX35pdx933nmnVchISUkxxo0bZ5hMJrshpNDx48eNVq1a2eyvefPmxrJly4y8vDzDMAwjLy/PWLx4sREdHV3il+WDBw/afX/FA1+hV155xeEXWEcctXnyyScNSYafn5/RtGlTw8vLy269hx56yFi/fr3h6+trSDKaNGliBAQE2K3brFkzIzMz02FfRowYYbedvZ+1YZQtvJWnze7du62+BM+ePdvIzc21bN+7d68xePBgm/1FR0cbhw4dcls/itu+fbsRHh5u1TYwMNBYs2aNYRiGkZ6ebtMvb29vqz8qFLdhwwaHn1tAQIDRrFkzy2d800032a1XXQJfIUdj/6mnnjJMJpPh6+trxMTEOPw906pVKyM7O9vh/iviczIMx2Nn7NixlteNGjUy6tat6/DnNnr0aJt9BAUFGYsWLbLU2bx5sxEdHW31e6+k/y9zcnKsfqcVfezYsaPE93T55ZcbkozvvvuuxHoArBH4ANQYhWcUzGazcezYMUv5rbfeavfLRYMGDYycnJwS97l161bDz8/Ppm18fLxRUFBgt83TTz/t8MtObm6u0a1bN5v9+fn5Gfv377e7v59//tlyBqmqBb7C46SlpRmGcTFgd+jQwaaOl5eXUb9+feOSSy4xdu7caRjGxUB7//33293nF1984bAvVTnwOTrzkpuba3Tq1Mlmn0OGDHFbP4o6e/as3SD0/PPPW9U7efKkzdnJwMBAY/fu3Tb7vHDhgtG8eXO7fXriiSeMCxcuGIZhGKmpqcYdd9zhcLzUlMAnybj77rstZ68vXLhg3HzzzXbr/fe//7W774r4nArZ60dMTIzh6+trXHnllcbevXstdf/73/9a/lhT+HNbsmSJ3X384x//sDnWggULHP6M7P1/+dprr9mt+7e//c3h+/npp58M6eIfi/Lz8x3WA2CLe/gA1BiF9+UNHDhQ0dHRlvIHH3zQbv1Tp07p22+/LXGfzzzzjN17ZsaMGePwHqBx48bJbDbb3fbZZ5/pxx9/tCm/7bbbFBsba7dNp06ddMMNN5TYT0+Ji4vTxx9/rODgYElSgwYN9OSTT9rUKygo0NmzZzVr1iy1bdtWkmQ2m/Xyyy/b3W9CQkLFddrNfHx81KhRI/Xq1UvXXXed3Tre3t66//77bcrnz5+vU6dOub1Pb7zxht2ZagcOHGj1ukGDBurcubNVWUZGhl566SWbtp9//rkOHjxoU966dWtNnTpVgYGBkqTQ0FB99tlnioqKcuUtuOz++++3e9/X1Vdf7Zb9x8TE6NNPP1XdunUlSYGBgZoyZYrdusuWLbNbXhGfU0kOHz6sxo0ba+nSpWrVqpWl/Pbbb9egQYOs6r766qt293HrrbfalA0aNEghISFO92PkyJHy9fW1KZ81a5ZSUlLstin8/X7//ffLy4uvr0BZ8H8MgBrhzJkzlln2HnroIatt1113nRo1amS3XUmTt/zyyy9av369Tbmfn5+uuuoqh+3Cw8N12WWX2d32zjvv2C2/5pprHO7Pme2ecs8999iE2zZt2tit26pVK3Xr1s2qrFmzZna/+O3evdt9naxgsbGxSkxM1Lp160qsV/QLdiHDMLR27Vq39ic/P1/vv/++3W32JjFq3bq1Tdm3336r48ePW5V9/vnndvd5880323wB9/Pz05AhQ5ztcoVo0KCBYmNjbR5F/xjkittvv10+Pj5WZc2bN7f88aOo33//3aasoj6n0vzf//2f3T7ec889evDBB9WqVSv98ccf2rJli00db29vu/0wm81q3769032IjIzU7bffblOekZGhjz/+2G757Nmz5eXlpQceeMDp4wC4iMAHoEb4/PPPlZ2draioKJuzYWaz2eFsbgkJCVazOxbfZk9MTIz8/PxK7M+KFSt09OhRNWnSxFJ28uRJ7dixw259e2GgqIceekhHjx7VM888U2K9ytauXTubsvr169utW3hmr7h69erZlKWmprrUr6rI0ZhxNDNpeW3dutXuz89kMikiIsKm3F5ZXl6eVRDNysrSTz/9ZPd4jj7Xjh07OtfhCjJp0iTt37/f5uGuWUQ7dOhgtzw0NNSmzN5Zq4r4nEpjMpk0ePBgu9uGDh2qjz76SD179tQPP/xgt06DBg0cXr1Q1jO6TzzxhN3yadOmqaCgwKrsq6++Ulpamq699lrFxMSU6TgACHwAaoiPPvpI0sVpye19IXnggQfsXoJpGIalbXG//fab3fKGDRuW2p+wsDA1btzYqi87d+50WL+0fQYEBKhx48ZlumyqMtg7U+Ao2NirK8nuGb6yLBFQVRw9elRvvvmmbrzxRl1yySUKDQ21mu7e0aWE586dc2s/du3aZbfcz8/P7qVwAQEBdusXvfT48OHDysnJsVvP0Rd9Z/4/qc7sBTBJdn//2BvPFfE5laZZs2aWS1BLsm/fPrvlQUFBDtsUXtLrrG7dutmc8ZcuLlWzePFiq7LCKzH+9re/lekYAC7y9nQHAMBVGzZs0O+//y6TyeTwfr0WLVqob9++Wr16tc22GTNm6NVX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tWpViTMSF2Vv0qlOnTo5HfYkqUmTJpYJqO6++27CHuAm3p7uAAAAAKqea6+9VgUFBTp27JiioqIc1jt58qTdZWDuuusuu/W/+OILBQYG2iy3kJubq19++UUSk7UA7sQZPgAAANhlGIYmTZpUYp3JkyfbLPfSunVrPf7443brDx8+XHfddZfNmpIzZsxQUlKSunTp4nCZBgBlR+ADAACAQ2+//bYefvhh7du3z6r84MGDeuKJJ/Svf/3LqjwmJkZLly4tcf28nJwcvfbaa5Z1QletWqUXXnhBkvTiiy+6+R0AtRuTtgAAAMBGQECAsrKyrMr8/f3VoEEDpaenKyUlxWqb2WzWfffdp0mTJiksLMzhfk0mk+V5cHCw/Pz8lJycLEm699579dlnn7nxXQAg8AEAAMBGenq61q9fr02bNunXX3/VwYMHlZSUpPPnz8swDIWEhCgiIkIdOnRQz549deedd6phw4al7vff//631qxZo19//VXHjx+Xr6+vWrZsqb/97W968MEH5eXFBWiAO1X7wFdQUKD3339fY8eOVXp6ug4ePKhmzZq5Zd9JSUmaNGmSFi9erGPHjik0NFRdu3bVE088oeuuu67U9nv37tXkyZOVkJCgU6dOqX79+urVq5eeffZZdevWrcz96dy5s44fP67IyEitXbu2PG8JAAAAQA1gGIbS09MVHR1d8h9KPLP8n3vs3LnT6NGjh8NFU12xadMmo169ekZAQIAxefJkY8uWLcbcuXONDh06GJKMsWPHltj+m2++MQICAozw8HDj/fffN3788Ufj888/N5o1a2aYzWZj2rRpZe5TVFRUhS02y4MHDx48ePDgwYMHj+r3OHr0aIkZotqe4XvllVc0ceJEdevWTVdddZUmTpwoSW45w3f69GldeumlSk5O1oIFCzR48GDLtnPnzql9+/Y6evSoPv30U40YMcKm/e7du9W5c2fl5ORo8+bN6tKli2Xb4cOH1b59e124cEEJCQnq16+f0/1q1KiRkpKSFBUVpT179rj0Hl2Vm5urFStW6Nprr5WPj49H+4Lqh/EDVzB+UF6MHbiC8QNXVMT4SUtLU5MmTZSamqrQ0FCH9artOnxTp07VlClTNGrUKLff3Pvaa68pOTlZV1xxhVXYk6TQ0FCNHTtWjz76qMaMGaPbb79dAQEBVnVeeOEFZWZm6o477rAK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0hVXXKFly5Zp2bJl2rNnj8xms1V/ivetcDZPR30rrV9jx47VM888Y3kdFxenpKQk+fv7a+DAgU6/p4qQm5urhIQExcfHy8fHx6N9caeBkp58a60ST19wWOfO+Ja6vX/LyutUDVRTxw8qB+MH5cXYgSsYP3BFRYwfZ0+UufUMX2xsrB555BE98MADqlevntNthw8frq+++kqGYejaa68tsW7hDJfSxUXOHSm6rXHjxk73RZKaNGmiTz75RNOnT1dSUpKysrIUGRlpCWizZ8+WdDGAeXn9dRtk8b45CnyFfWvSpEmJ/fDz85Ofn5/lddEzqFXlF42Pj0+V6Ys7nDyboaRkx2Fv2IA2ujO+dSX2qGaraeMHlYvxg/Ji7MAVjB+4wp3jx9n9uCXwdezYUf/v//0/XXfddeVqP3ToULVp00aSdM0115RYNy4uTj4+PsrNzS1x8fbCbTExMTYLqDvLbDbbDWX79l2cpbF79+5W5R06dLA6vqOZOgv7VrQ+qobFP/ypAvuTyhL2AAAAUO24JfD179+/3GFPurgYuaOFyovz9fVV//79tWzZMm3bts1hva1bt0qSbrjhhnL3y57MzEzLvocNG2a1rWfPngoNDdW5c+e0bds29e3b16b9qVOnLLN5urtvcE1mdp4StljfwNc6pp7+OJyiuwl7AAAAqIZcXpahT58+atmycu9neuihhyRJK1eutLvG3p49e7R7926ZTCY98MADZdr3O++8o549e1qtr1fUl19+qaysLPXo0UN9+vSx2ubn56fhw4dLkubNm2e3/fz58yVdnKDmxhtvLFPfULFWbTuqC1l5ltcmk/TM3Zdr4Vs3E/YAAABQLbkc+NauXWu5xLGyDBkyRH369FFWVpbNLJaGYWjcuHGSpBEjRqhz585W2xctWqSIiAi1a9fO7iWhSUlJ2rRpk93AdvjwYY0bN04hISGaPn261T11hV5++WWFh4dr8+bNWrhwodW2tLQ0TZw4UZI0adKkUmctReUpKDC0aP2fVmVd4xoqOrziZmEFAAAAKppbLunctWuXPv/887Id2NtbERER6tKlS5kmeCk0d+5c9evXT1OmTFFmZqbuuece5eTk6L333tOCBQvUr18/vf/++zbtPvzwQyUnJys5OVnz58+3mgWzqAcffFD79+9X3759ZRiGfvjhB02ePFn+/v5avny52rZt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+nSX67giJydHK1eulCR17drVYb2uXbtq9+7d+u677/Tee+85vf+YmBjt3bvXYZgrWn7JJZc4vV+UTV5+gQ4lpVmVcYYPAAAAKJsyX9JpGIbDR2nbi9ctj927dys3N1eS9dm24gq3HT58WOfOnXNYr7h7771XkrRlyxa7s3F++eWXki6GvRtuuMHhfr788kvFx8crJiZGgYGBatSokW688UbNmjWL9QmdcPRkuvLyrWdajWUNPgAAAKBMyhz4SlpqoLTtReuVV9HLRSMiIhzWK7otMTHR6f0PGzZM48aNU25urgYNGqRVq1YpIyNDJ06c0JQpU/T666+rW7duWrJkifz9/R3u54knnlC/fv00a9YsrVu3Tq+99pr27dune+65R1dffbXOnj3rdJ9qo+L370XWD1SdQF/PdAYAAACoptw6S6erYc4Z6el/rctWUuAqui0tLc1hPXv++c9/aujQoXr22WfVv39/S7mvr6+efPJJPffcc4qMjLTbtm7durr++uv14YcfqnHjxpbyLl26aOjQoerZs6fWr1+v2267zXJpqiPZ2dnKzs62vC56ZrTwLKenFB6/ovrxx5EUq9fNo0M8/p7hPhU9flCzMX5QXowduILxA1dUxPhxdl9lCnyuXIpZXeTk5Gj8+PF688031bhxY/3nP/9Ru3btlJaWplWrVmnq1KmaNm2aJk+erMcee8ymfceOHbVkyRK7+w4NDdWECRN08803a9WqVVq2bJkGDBjgsC8TJkzQq6++alOelZXl8BiVLSEhoUL2+9Mu69d5509UmfcM96mo8YPagfGD8mLswBWMH7jCneMnIyPDqXplCnwjR47U2LFjy9Whop544olyL2kQHBxseV7SwupFt4WEOL9Y92233aaFCxeqRYsW2rFjh4KCgizbBgwYoKuvvloDBw7U448/LrPZrEceeaRM/Y+Pj5fZbFZ+fr4WL15cYuAbO3asnnnmGcvruLg4JSUlyd/fXwMHDizTcd0tNzdXCQkJio+Pl4+Pe9fGyy8wNHPTCkl/3es44Oquury140t4Ub1U5PhBzcf4QXkxduAKxg9cURHjx9mrGMsU+EJCQhQTE1OuDhVVNESVVdOmTS3PT58+7bBe0W1FL60sycaNG7Vw4UJJ0ksvvWS3n9dff7169eql9evX6/XXXy9z4AsICFBERIROnDihgwcPlljX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zzt06OCw3mWXXSbp4pp9p06dstvGmb6VdIzqrPgMnZLUkDX4AAAAgEpX7QKfr6+vZSKVbdu2Oay3detWSbJZOqEkRSdFcZa3918nSXv27GkJl476durUKctsnmXpW3WSVGyGzvBQf/n5sCQDAAAAUNmqXeCTpIceekiStHLlSrtr7O3Zs0e7d++WyWTSAw884PR+27VrZ3le0hp527dvl3TxUtH69etbyv38/DR8+HBJ0rx58+y2nT9/viQpMjJSN954o9N9q05sl2So46GeAAAAALVbtQx8Q4YMUZ8+fZSVlWUzi6VhGBo3bpwkacSIEercubPV9kWLFikiIkLt2rWzuezymmuuUevWrSVdXJrhwgXbSxOXLl2q9evXS5Ief/xxm+0vv/yywsPDtXnzZsv9gIXS0tI0ceJESdKkSZMUEBBQhnddfRQPfNERXM4JAAAAeEK1DHySNHfuXLVv315TpkzRqFGjtGHDBq1evVq33XabFixYoH79+un999+3affhhx8qOTlZu3btspxtK+Tj46MFCxaoadOmOnDggNq3b6/p06dr48aNWr58ucaMGaObb75Z0sUw+dxzz9nsPyIiQosWLVK9evV011136c0339TWrVu1YMEC9e7dW4cPH9bYsWM1YsSIivnBVAE2Z/i4fw8AAADwiGo3S2eh8PBwbd26VVOnTtWXX36pmTNnymw2Ky4uTtOmTdPDDz8sLy/bPDty5Eht2rRJkZGRuvXWW222x8XFadeuXZo+fboWLlyocePGKTU1VT4+PoqKitLQoUN1//33Kz4+3mHfunfvrp07d2rixIl6//339dJLLykkJETdunXTpEmTdN1117n1Z1HVHE8+b/U6KpzABwAAAHhCtQ180sV75saMGaMxY8Y43WbQoEFKTk4usU6dOnX09NNP6+mnny5336Kjo/XOO+/onXfeKfc+qqPs3Hwln7NeH5HABwAAAHhGtb2kE1XTiWTb+x65pBMAAADwDAIf3Kr4kgz1Q/zl71etTyQDAAAA1RaBD25luyQDZ/cAAAAATyHwwa2Onym2JAOBDwAAAPAYAh/cihk6AQAAgKqDwAe3Kn4PH4EPAAAA8BwCH9wmJzdfyamZVmXM0AkAAAB4DoEPbnPybIYMw7qMM3wAAACA5xD44DbFZ+isG+ynQH8fD/UGAAAAAIEPbmNz/x6XcwIA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X33l9L9jjJ/aTZLh7+9vBAUFOXw888wzdttW9tgh8MFpffv2NSQZo0ePtiovKCgwbr75ZkOScd9993mmc/Col19+2fD19TWuuuoq4+9//3uZAt+pU6eM8PBwQ5LNl7LU1FSjSZMmhiTj008/rZjOw6N+++03Q5LRuHFj48yZMzbbt2/fbnh7exuSjMcee8xme1ZWltGqVStDkjFlyhSrbdnZ2UaXLl0MScb48eMr6i3Ag0aMGGFIMtauXWt3+4033mhIMurWrWtkZGRYbWPsoLjTp08bDRo0MOrUqVPqv2OMH0gyVq9eXeZ2nhg7BD44Ze7cuZa/ZKSkpNhs//333w1JhslkMrZt21b5HYRHhYSEGO+9955RUFBgzJgxo0yB7/HHHzckGVdccYXd7dOmTTMkGZGRkTZf2FD9FQa+t956y2Gd4cOHW87UpKenW2178803DUlGdHS0kZeXZ9N2yZIlhiQjICDAOHbsmNv7D8968cUXjUGDBjncPmfOHMvvox9//NFqG2MHxd15551GaGio8c9//rPUf8cYPyhv4PPE2OEePjjlo48+kiT169dPdevWtdkeFxenuLg4GYahTz75pJJ7B0/7/fff9eijj8pkMpWpXU5OjmbOnClJGjJkiN06heUnT57U4sWLXesoqpzw8HA9++yzuvnmmx3WueyyyyRdvF9r7969VtsKfzcNHjxYZrPZpu21116r4OBgZWZmatasWW7sOaqC119/XQsXLnS4vegCx8HBwVbbGDso6ptvvtGcOXP01ltvKTo6utT6jB+UlyfGDoEPpcrJydHKlSslSV27dnVYr3Dbd999Vyn9QtXRqFGjcrXbsGGDzp07J8nx2GrQoIGaNm0qibFVEzVs2FBvvvmmYmNjHdYp+g9inTp1LM8PHjyoPXv2SHI8fsxmszp16iSJ8VMbffnll5KkK6+8Um3atLGUM3ZQVEpKikaNGqX4+Hg9+OCDpdZn/KC8PDV2CHwo1e7du5WbmytJatasmcN6hdsOHz5s+RIPlGTHjh2W586MraL1UXvs27dP0sVweMkll1jKGT+w5/z589qwYYPuuOMOffXVV7rlllu0YMECqzqMHRQ1evRonT9/XtOnT3eqPuMHhTZt2qS77rpLrVq1Up06dRQREaGrrrpKkydPtvtd2FNjh8CHUh05csTyPCIiwmG9otsSExMr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QnHf2tqK06dPWzWuQ4cOwdvbWxJLTU2VzT7W1dWJQ2vS09MV9yUmJycr7s3rP8M3YsQIrF692qrxERH9zXhKJxERDUkvXrwQJ0+GhIRIDiUpLi4W15Yzf79DX7mBvmLvt27dQnd3NwAgKytLPGdvb//TvYKdnZ04ePAgAOWZtfLycvE98fHxUKvVAHqLjvfV8jty5AiMRiMqKioQFBSERYsWoaWlBdeuXRP9+Pn54fLlywgJCZF9R1JSEpqampCTkyNiMTExiIqKgru7O4qKiuDj44OmpibFsanValFo3sPDA1qtFtHR0eLvaWxsREBAACIjIzF69Gi8fv0at2/fxo8fP5CUlIRdu3Yp/jZfvnyBRqNBaGgoAgMD4eDggJcvX0pmG52cnHDu3LkBT2wlIqJeKnNftVoiIqIhJCsrC3v37gUA7NmzR5JsjR07Fh8/foRKpUJbW5ti0e9fZVnYvT9r/0kdrLyEpXv37mHevHmKfZw+fRolJSWora1FV1cXHB0d4eXlhVmzZiEqKgorVqyAvb39gP2XlJTgxIkT0Ol0aGlpwciRIzF16lSsXbsWkZGRmDJliuJ7SqUtTCYTioqKkJ+fj7KyMjQ3N+Pr169wcXGBWq1GWFgY4uLiEBQUJOtPr9fj7t27eP78OSoqKvDhwwd0dHTAYDBg+PDh8PDwgJ+fHzQaDWJjYzFmzBirfj8ior8dEz4iIiIiIiIbxT18RERERERENooJHxERERERkY1iwkdERERERGSjmPARERERERHZKCZ8RERERERENooJHxERERERkY1iwkdERERERGSjmPARERERERHZKCZ8RERERERENooJHxERERERkY1iwkdERERERGSjmPARERERERHZKCZ8RERERERENooJHxERERERkY36Hxjfgs53wHmsAAAAAElFTkSuQmCC\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "U, S, VT = svd(variable, full_matrices=False)\n",
        "\n",
        "energy_retained = np.cumsum(S) / np.sum(S)\n",
        "\n",
        "\n",
        "plt.rc('font', family='DeJavu Serif', size=18)\n",
        "# plt.rcParams['font.family'] = 'Times New Roman'\n",
        "colors = sns.color_palette('deep', n_colors=100)\n",
        "\n",
        "plt.figure(figsize=(10, 6))\n",
        "plt.plot(energy_retained[:50], color=colors[0], linewidth=3, marker='D', markersize=5, markevery=1)\n",
        "\n",
        "ax = plt.gca()\n",
        "ax.spines['bottom'].set_linewidth(2)  # X-axis line width\n",
        "ax.spines['left'].set_linewidth(2)    # Y-axis line width\n",
        "\n",
        "plt.xlabel('# Modes', fontsize=20, weight='bold')\n",
        "plt.ylabel('Energy', fontsize=20, weight='bold')\n",
        "\n",
        "#plt.legend(frameon=True, edgecolor='black')\n",
        "# handles, labels = plt.gca().get_legend_handles_labels()\n",
        "# plt.legend(handles=handles, labels=labels, frameon=True, edgecolor='black', loc='upper center', bbox_to_anchor=(0.5, -0.15), fancybox=True, shadow=True, ncol=2)\n",
        "\n",
        "plt.grid(True)\n",
        "plt.axhline(y=0.99, linewidth=3, color=colors[1])\n",
        "plt.title('Accumulated Energy', fontsize=24, weight='bold')\n",
        "# plt.savefig('fig.jpg', dpi=400, bbox_inches='tight')\n",
        "plt.show()"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "gaDApmlSf34l"
      },
      "source": [
        "### Reduction"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 85,
      "metadata": {
        "id": "ctXSPLzRf34l",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "53f66ab2-d476-4eb7-9657-99a6b2ec1b7d"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "With 40 number of modes, the energy content is: 98.95893236434368\n"
          ]
        }
      ],
      "source": [
        "num_modes = 40  # correpsond to 99% energy\n",
        "\n",
        "# Energy content calculation\n",
        "total_energy = np.sum(S)\n",
        "retained_energy = np.sum(S[:num_modes])\n",
        "energy_content = retained_energy / total_energy * 100\n",
        "print(\"With\", num_modes, \"number of modes, the energy content is:\", energy_content)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 86,
      "metadata": {
        "id": "Z6VOqaEjf34l"
      },
      "outputs": [],
      "source": [
        "q = U[:,:num_modes].T @ variable\n",
        "\n",
        "variable_reconst = U[:,:num_modes] @ q\n",
        "\n",
        "RelErr1 = np.zeros((q.shape[1]))\n",
        "for t in range(q.shape[1]):\n",
        "        # print(t)\n",
        "        RelErr1[t] = (norm(variable[:,t] - variable_reconst[:,t])/norm(variable[:,t]) ) * 100"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 87,
      "metadata": {
        "id": "2oQSlh77f34m"
      },
      "outputs": [],
      "source": [
        "np.savez(f'/content/drive/MyDrive/Paper/RoSo/{model}/{bc_name}/POD_data_{model}_{bc_name}_{variable_name}.npz', S=S, Reconst_error=RelErr1)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 88,
      "metadata": {
        "id": "ZwCHnXRBf34m",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 54
        },
        "outputId": "73155e1b-353d-45ec-842b-4cba81ecd55a"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 1000x600 with 1 Axes>"
            ],
            "image/png": "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IiIiIiKiRuS+GyJLREREREREtYMJphniKrJERERERNQQMcE0Q1xFloiIiIiIGiImmERERERERGQSTDCJiIiIiIjIJJhgEhERERERkUkwwSQiIiIiIiKTYIJJREREREREJsEE0wxxmxIiIiIiImqImGCaIW5TQkREREREDRETTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCaYa4TQkRERERETVETDDNELcpISIiIiKihogJJhEREREREZkEE0wiIiIiIiIyCSaYREREREREZBJMMImIiIiIiMgkmGASERERERGRSTDBJCIiIiIiIpNggklEREREREQmwQTTDIWHhyM4OBgpKSn1HQoREREREZHBmGCaobCwMERERMDT07O+QyEiIiIiIjIYE0wiIiIiIiIyCSaYREREREREZBJMMImIiIiIiMgkmGASERERERGRSTDBJCIiIiIiIpNggklEREREREQmwQSTiIiIiIiITIIJJhEREREREZkEE0wiIiIiIiIyCSaYREREREREZBJMMM1QeHg4goODkZKSUt+hEBERERERGYwJphkKCwtDREQEPD096zsUIiIiIiIigzHBJCIiIiIiIpNggklEREREREQmwQSTiIiIiIiITIIJJhEREREREZkEE0wiIiIiIiIyCSaYREREREREZBJMMImIiIiIiMgkmGASERERERGRSTDBJCIiIiIiIpNggklEREREREQmwQSTiIiIiIiITIIJJhEREREREZlErSSYBw8exOTJk/HAAw8gKCgI3bt3x0svvYTTp0/XRnONTnh4OIKDg5GSklLfoRARERERERnM5AlmWFgYHn74YWzatAnnz59HVFQUzpw5gy+//BI9e/bEokWLTN1koxMWFoaIiAh4enrWdyhEREREREQGM2mC+dVXX2Ht2rUAAEEQIAiC5t8AoFarsXDhQuzYscOUzRIREREREZEZsDDlzdasWQMAkEqlaNGiBdzd3WFhYYGioiIkJibizp07EAQBn376KYYOHWrKpomIiIiIiKiemSzBVCqVuHTpEgYOHIgtW7bA1dVVq86FCxcwYsQInDlzxlTNEhERERERkZkwaIhsWFgYsrOzK62Tl5cHQRAwceJEncklAISEhODhhx9GTk5O9SMlIiIiIiIis2ZQgrl27VoE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RERmxOgEMzk5GXPmzMHPP/+MwsJCU8R03+M2JURERERE1BAZNUQ2OTkZ3bt3xzfffIOCggLRtiSVfVHluE0JERERERE1REb1YC5atAjx8fGQSCSQSCQGXcMEk4iIiIiIqHEyKsHcsWOHJrFk4khERERERHR/MyrBTEpKAgD4+vri4YcfhpeXF+RyeaXX7NmzBydPnjSmWSIiIiIiIjJDRiWYdnZ28PT0xOnTp2Fra2vQNbm5ufj777+NaZaIiIiIiIjMkFEJZmBgIDp37mxwcgkA06ZNw/Dhw41ploiIiIiIiMyQUavIPvnkk4iJianWNZmZmbh165YxzRIREREREZEZMirBnD59OlJTU7F06VKUlJQYdM0PP/yASZMmGdNsoxceHo7g4GDug0lERERERA2KUUNkp06dCh8fH7z99ttYtmwZOnXqBG9vb1hbW+u95vTp08Y0eV8ICwtDWFgYfH19cefOnfoOh4iIiIiIyCBGJZgbN26ERCKBIAjIzc3F0aNHq7xGEASD98wkIiIiIiKihsOoBLMM98IkIiIiIiIikySYZQzpmWQSSkRERERE1DgZnWAyYSQiIiIiIiLABAnmCy+8gDlz5hhcf8mSJVi/fr2xzRIREREREZGZMTrBdHBwQLNmzapVn4iIiIiIiBofoxLMgwcPomnTptW65qWXXsKjjz5qTLNERERERERkhqTGXBwaGgp/f/9qXePv74/Q0FBjmm30wsPDERwcjJSUlPoOhYiIiIiIyGBGJZi6JCcnY9++ffj55581ZVwIqHrCwsIQEREBT0/P+g6FiIiIiIjIYCZJMNVqNT777DO0adMGPj4+eOSRR/DUU09pzoeGhmLy5Mm4deuWKZojIiIiIiIiM2R0gpmdnY3Q0FBMnz4dkZGREARBq8cyJycHGzduROfOnfH3338b2yQRERERERGZIaMTzDFjxuD48eMQBAESiQQSiUSrzscff4xx48YhMzMTTzzxBPLy8oxtloiIiIiIiMyMUQnmzp07sWfPHr2JZZm+ffvi22+/xRdffIHk5GRs2LDBmGaJiIiIiIjIDBmVYH733XcAoBkWK5fL4enpCXt7e531n3/+eXTs2BF//vmnMc0SERERERGRGTIqwTx58iQkEgnmzJmDqKgoFBUVITExEc8//7zeax544AFcvXrVmGaJiIiIiIjIDFkYc3FKSgoee+wxvP/++6LyyobLymQypKenG9MsERERERERmSGjejBLS0urtVejWq3GwYMHjWmSiIiIiIiIzJRRCaarqyu2bt2K69evV1m3oKAAL730EqKiouDi4mJMs0RERERERGSGjBoiGxISgh07dqBDhw7o1asX2rVrBzc3N5w8eRIAsHjxYuTk5ODGjRs4fPgwcnNzIZFI0LZtW5ME31iFh4cjPDwcKSkp9R0KERERERGRwYxKMIcMGYIdO3agtLQUR48exdGjRzXnBEHAggULRMfAvfmZgwYNMqbZRi8sLAxhYWHw9fXFnTt36jscIiIiIiIigxg1RHbSpEnw9PTULOpTtl1JWTJZ/risjr29PZ577jkjwyYiIiIiIiJzY1SCqVAosHnzZshkMgD3eif1fZUlnV988QWcnJyMDpyIiIiIiIjMi1EJJgAMGDAAu3btQpMmTSrtwXR2dsaPP/6IMWPGGB00ERERERERmR+j5mCW6d+/P27evIktW7Zgz549iIqKQk5ODhwcHNCiRQv0798f48ePh52dnSmaIyIiIiIiIjNkVIJ55MgR0XH//v0xadIkowIiIiIiIiKihsmoBLNv376axXsAYN68eVi0aJHRQREREREREVHDY/QQWUEQoFAo8OKLL2L48OGmiImIiIiIiIgaIKMSTIVCgcLCQqxevRpTpkwxVUxERERERETUABm1imzz5s0BAF27djVFLERERERERNSAGZVgjh49GgBw5coVg6/5/PPP0b9/f2OaJSIiIiIiIjNkVII5c+ZMtG/fHm+99RaioqIMuiYmJgaHDx82plkiIiIiIiIyQ0bNwUxPT8eGDRswc+ZMdOzYEePHj8fgwYPRqlUr2Nvbi1aYLZOTk2NMk0RERERERGSmjEowmzdvrkkiBUHA+vXrsX79epMERkRERERERA2LUUNkgXuJpSAIkEgkmn9X9UWVCw8PR3BwMFJSUuo7FCIiIiIiIoMZnWBKJBJNL2bZvyv7oqqFhYUhIiICnp6e9R0KERERERGRwYwaIluGvZJERERERERkkgRz5MiRcHR0NKjumTNnEBERYYpmiYiIiIiIyIyYJMFctmwZAgMDDao7a9YsJphERERERESNkFEJpp+fHyQSCeRyucHXBAQEoE+fPsY0S0RERERERGbIqAQzLi6u2tdMnToVU6dONaZZIiIiIiIi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Pgx7e3ukpqZixowZpoqTiIiIiIiIzJxBCaYQAiEhIQZdsHfv3vjpp59gaWmJr7/+GgcOHKhXgERERERERNQ8GJRg2traoqSkxOCLPvroo/jss88ghMCrr77KXWWJiIiIiIgeAAYlmB4eHjhx4oRRZ1hOmjQJL774IhITEzFr1qw6B0hERERERETNg0EJpr+/P65cuYKlS5cadfF169bBz88PX3zxhc7zM4mIiIiIiOj+YVCC2adPHwghsHTpUgwcOBBffvklsrOza+1nbW2Nr7/+GjKZrL5xPlDCwsIQGBiI1NTUpg6FiIiIiIjIYAYlmI888giAe5v9HDlyBP/6179w+PBhg24QHByMefPmQQhh1BLbB1loaChiY2Ph6ura1KEQEREREREZzKBzMHv06IEPP/xQoywoKMjgm8yfPx9ZWVnIyckxLjoiIiIiIiJqNgxKMC0tLeu1UY9MJsNHH31U5/5ERERERERk/gxaIktERERERERUG4NmMOsjKioKzz//vEaZRCJBXFxcQ9+aiIiIiIiIGlGDJ5jFxcWIj4/XKOORJURERERERPefBl8iGxISApVKpf567rnnGvqWRERERERE1AQa/RlMzl4SERERERHdn7jJDxEREREREZkEE0wiIiIiIiIyCSaYZigsLAyBgYFITU1t6lCIiIiIiIgMZlCC+eKLL2L79u0NHQv9JTQ0FLGxsXB1dW3qUIiIiIiIiAxmUIK5adMmREdHN3QsRERERERE1IwZfA5mbm4ubt26Ve8bFhQU1PsaREREREREZH4MTjDDw8MRHh7ekLEQERERERFRM2ZwggkAQgiT3JRnYRIREREREd1/jEowTZEYmipJJSIiIiIiIvPCY0qIiIiIiIjIJAyeweTMIxEREREREdXE4ATzlVdewZw5c+p9w2nTpuGnn36q93WIiIiIiIjIvBicYNrb28Pb27veN7Sxsan3NYiIiIiIiMj8GPQMZkhICHx9fU1yw44dO6Jfv34muRYRERERERGZD4NmMCMjI012w4ULF2LhwoUmux4RERERERGZB+4iS0RERERERCbBBJOIiIiIiIhMggmmGQoLC0NgYCBSU1ObOhQiIiIiIiKDMcE0Q6GhoYiNjYWrq2tTh0JERERERGQwJphERERERERkEkwwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYJqhsLAwBAYGIjU1talDISIiIiIiMhgTTDMUGhqK2NhYuLq6NnUoREREREREBmOCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEkwwiYiIiIiIyCSYYDaQP/74A88//zwCAgLw0EMPISgoCB999BHKy8ubOjQiIiIiIqIGIW/qAO5XI0eOxPjx43HhwgXI5XJERUWhf//+uHLlCjZs2NDU4REREREREZkcZzAbiEwmw/LlyyGX38vhe/XqhbFjx+KLL75AUVFRE0dHRERERERkevdFgvnHH3+gQ4cOkEgkiI+Pb+pwAAC3b9+Gvb29Rpm7uzvKyspQUFDQRFERERERERE1nGadYBYVFWHWrFno168frl69alTfAwcOYPDgwWjZsiVsbGzQvXt3fPrpp1CpVCaJzdLSUqvs2rVrCAgIgJOTk0nuQUREREREZE6abYIZFxeHrl27YufOndi/f79RfVeuXIlhw4ZBoVDg0KFD+PPPPzF48GBMmzYNo0aNapCNeJKSkrB//3689957Jr82ERERERGROWi2CebFixcxaNAgXLhwAYMHDza437FjxzB79mwEBgZi165d6NGjB/z9/bFy5Uq8/PLL+OGHH7By5UqNPps2bYJEIqn1a8eOHTrvqVKp8Morr2DixIkYM2ZMvT43ERERERGRuWq2u8iOGDECI0eONLrf4sWLAQDTpk2DhYWFRt2sWbMQHh6OVatWYebMmVAqlQCA0aNHo3fv3rVe28PDQ2f5zJkz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wM7ODl5eXujWrRtGjRqF4cOHa8106Tv2o9KkSZOwadMmg9sB986XXLt2Lb7++mtcu3YNEokEnp6eGDhwIN566y0kJydrLUnVdR1d8YWEhGDz5s14//33ERERgaSkJMjlcrRt2xZPPvkkZs6cqV4aW9XBgwdx6tQpnD59GleuXEFGRgYyMzNRXl4OW1tbtGnTBj169MCzzz6LESNGaPTt378/jh49qveze3t7Iz4+3uB21cXHxyM8PBxHjx7F1atXkZ2dDSsrK7i6uiI4OBijR4/Gs88+q7VRU1WlpaVYt24ddu7ciatXryInJwcymQzu7u7o27cv5s2bh4CAAL39iYiocTHBJCIiagK6Ekx9y4GJiIiaCz6DSURERERERCbBBJOIiIiIiIhMggkmERERERERmQR3kSUiImokWVlZWLZsmc66yh1ZAWD16tWNGRYREZHJcJMfIiKiRhIfH4+2bdvW2o4/momIqLligklEREREREQmwWcwiYiIiIiIyCSYYBIREREREZFJMMEkIiIiIiIik2CCSURERERERCbBBJOIiIiIiIhMggkmERERERERmQQTTCIiIiIiIjIJJphERERERERkEv8Pogf1TGSxqcEAAAAASUVORK5CYII=\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "plt.rc('font', family='DeJavu Serif', size=18)\n",
        "# plt.rcParams['font.family'] = 'Times New Roman'\n",
        "\n",
        "plt.figure(figsize=(10, 6))\n",
        "plt.plot(RelErr1, color=colors[3], linewidth=3)\n",
        "\n",
        "ax = plt.gca()\n",
        "ax.spines['bottom'].set_linewidth(2)  # X-axis line width\n",
        "ax.spines['left'].set_linewidth(2)    # Y-axis line width\n",
        "\n",
        "plt.xlabel('Snapshot', fontsize=20, weight='bold')\n",
        "plt.ylabel('L2 Norm Difference %', fontsize=20, weight='bold')\n",
        "\n",
        "plt.yscale('log')  # Set y-axis to logarithmic scale\n",
        "plt.xlim(0, 1000)  # X-axis range from 0 to 1\n",
        "plt.ylim(0.01, 100)  # Y-axis range from 0.01 to 100\n",
        "\n",
        "plt.yticks([0.01, 0.1, 1, 10, 100], fontsize=16, weight='normal')\n",
        "\n",
        "\n",
        "#plt.legend(frameon=True, edgecolor='black')\n",
        "# handles, labels = plt.gca().get_legend_handles_labels()\n",
        "# plt.legend(handles=handles, labels=labels, frameon=True, edgecolor='black', loc='upper center', bbox_to_anchor=(0.5, -0.15), fancybox=True, shadow=True, ncol=2)\n",
        "\n",
        "plt.grid(True)\n",
        "\n",
        "\n",
        "plt.title('Reconstruction Error', fontsize=24, weight='bold')\n",
        "\n",
        "# plt.savefig('fig.jpg', dpi=400, bbox_inches='tight')\n",
        "plt.show()"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "cktgziBff34m"
      },
      "source": [
        "# LSTM"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "-8HDoX2bf34n"
      },
      "source": [
        "### Generating Input/Output Matrices"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 89,
      "metadata": {
        "id": "j60BSVHGf34n"
      },
      "outputs": [],
      "source": [
        "t = np.linspace(1, n_snapshots, num=n_snapshots)\n",
        "inputt = np.concatenate((t.reshape(-1, 1), interpolated_v_values.reshape(-1, 1), interpolated_P_values.reshape(-1, 1), q.T), axis=1)\n",
        "outputt = np.copy(q).T"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "mwk8XwbIf34n"
      },
      "source": [
        "### Scaling Input/Output Matrices"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 90,
      "metadata": {
        "id": "kZrcP3cif34n"
      },
      "outputs": [],
      "source": [
        "min_vals_input = np.min(inputt, axis=0)\n",
        "max_vals_input = np.max(inputt, axis=0)\n",
        "input_scaled = inputt - min_vals_input[np.newaxis, :]\n",
        "input_scaled /= (max_vals_input - min_vals_input)[np.newaxis, :]\n",
        "\n",
        "min_vals_output = np.min(outputt, axis=0)\n",
        "max_vals_output = np.max(outputt, axis=0)\n",
        "output_scaled = outputt - min_vals_output[np.newaxis, :]\n",
        "output_scaled /= (max_vals_output - min_vals_output)[np.newaxis, :]"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "SKPpgg0Of34o"
      },
      "source": [
        "### Time Windowing (Sequencing)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 91,
      "metadata": {
        "id": "hPKPvo_Kf34o"
      },
      "outputs": [],
      "source": [
        "time_window = 100\n",
        "\n",
        "x_train = []\n",
        "y_train = []\n",
        "\n",
        "for i in range(0,len(input_scaled) - time_window -1):\n",
        "    x_train.append( input_scaled[i : (i+time_window) , :] )\n",
        "    y_train.append( output_scaled[i+time_window,:])\n",
        "\n",
        "total_x = np.array(x_train)\n",
        "total_y = np.array(y_train)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "pJiPrTGPf34o"
      },
      "source": [
        "### Train/Test Split"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 92,
      "metadata": {
        "id": "shK2UYaof34o"
      },
      "outputs": [],
      "source": [
        "Test_split = 0.8\n",
        "\n",
        "x_train = total_x[:int(Test_split * total_x.shape[0]),:,:]\n",
        "y_train = total_y[:int(Test_split * total_y.shape[0])]\n",
        "\n",
        "x_test = total_x[int(Test_split * total_x.shape[0]):, :,:]\n",
        "y_test = total_y[int(Test_split * total_y.shape[0]):]\n",
        "\n",
        "# Convert data to PyTorch tensors\n",
        "x_train = torch.tensor(x_train, dtype=torch.float32)\n",
        "y_train = torch.tensor(y_train, dtype=torch.float32)\n",
        "x_test = torch.tensor(x_test, dtype=torch.float32)\n",
        "y_test = torch.tensor(y_test, dtype=torch.float32)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "d27e7H1Af34o"
      },
      "source": [
        "### LSTM Network"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 93,
      "metadata": {
        "id": "82CyZz2mf34p",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "56be0be2-3b8d-4526-ac81-1ebbe51fa845"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Using device: cpu\n"
          ]
        }
      ],
      "source": [
        "# Device setup\n",
        "device = torch.device('cpu') if state_lstm=='load' else torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n",
        "print(f'Using device: {device}')\n",
        "\n",
        "# Hyperparameters\n",
        "input_size = num_modes + 3  # 3 = (t & v & P)\n",
        "hidden_size = 512\n",
        "output_size = num_modes\n",
        "sequence_length = time_window\n",
        "learning_rate = 0.00001\n",
        "num_epochs = 200000\n",
        "batch_size = 20\n",
        "early_stop_patience = 100\n",
        "dropout_prob = 0.2\n",
        "\n",
        "# LSTMNet definition\n",
        "class LSTMNet(nn.Module):\n",
        "    def __init__(self, input_size, hidden_size, output_size, dropout_prob):\n",
        "        super(LSTMNet, self).__init__()\n",
        "        self.hidden_size = hidden_size\n",
        "        self.lstm1 = nn.LSTM(input_size, hidden_size, num_layers=3, batch_first=True, dropout=dropout_prob)\n",
        "        self.fc1 = nn.Linear(hidden_size, output_size)\n",
        "\n",
        "        # Initialize LSTM weights\n",
        "        for name, param in self.lstm1.named_parameters():\n",
        "            if 'weight' in name:\n",
        "                init.xavier_normal_(param)\n",
        "            elif 'bias' in name:\n",
        "                init.constant_(param, 0.0)\n",
        "\n",
        "        # Initialize linear layer weights\n",
        "        init.xavier_normal_(self.fc1.weight)\n",
        "        init.constant_(self.fc1.bias, 0.0)\n",
        "\n",
        "    def forward(self, x):\n",
        "        # Initialize hidden and cell states on the correct device\n",
        "        h01 = torch.zeros(3, x.size(0), self.hidden_size, device=device).requires_grad_()\n",
        "        c01 = torch.zeros(3, x.size(0), self.hidden_size, device=device).requires_grad_()\n",
        "        out1, (h01, c01) = self.lstm1(x, (h01.detach(), c01.detach()))\n",
        "        out = nn.functional.relu(self.fc1(out1[:, -1, :]))\n",
        "        return out\n",
        "\n",
        "model_lstm = LSTMNet(input_size, hidden_size, output_size, dropout_prob).to(device)\n",
        "\n",
        "criterion = nn.MSELoss()\n",
        "optimizer = torch.optim.Adam(model_lstm.parameters(), lr=learning_rate)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "03St5AYaf34p"
      },
      "source": [
        "### Train"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Move the Data to GPU\n",
        "x_train = x_train.to(device)\n",
        "y_train = y_train.to(device)\n",
        "x_test = x_test.to(device)\n",
        "y_test = y_test.to(device)"
      ],
      "metadata": {
        "id": "2ffGyBro0-IJ"
      },
      "execution_count": 94,
      "outputs": []
    },
    {
      "cell_type": "code",
      "execution_count": 95,
      "metadata": {
        "id": "WcuV_oGVf34p",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "732dc7e2-daad-4e9b-ce7a-f5a37fd0efba"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Model is loaded completely!\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "<ipython-input-95-2ed09f8d722d>:53: FutureWarning: You are using `torch.load` with `weights_only=False` (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for `weights_only` will be flipped to `True`. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via `torch.serialization.add_safe_globals`. We recommend you start setting `weights_only=True` for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.\n",
            "  state_dict = torch.load(f'/content/drive/MyDrive/Paper/RoSo/{model}/{bc_name}/{name}', map_location=torch.device('cpu'))\n"
          ]
        }
      ],
      "source": [
        "name = f'LSTMNet_{model}_{bc_name}_{variable_name}.pt'\n",
        "\n",
        "best_loss = float('inf')\n",
        "early_stop_count = 0\n",
        "\n",
        "\n",
        "\n",
        "\n",
        "if state_lstm == 'train':\n",
        "    for epoch in range(num_epochs):\n",
        "        model_lstm.train()\n",
        "        for i in range(0, x_train.shape[0], batch_size):\n",
        "            # Move the batch data to GPU\n",
        "            batch_x = x_train[i:i+batch_size].to(device)\n",
        "            batch_y = y_train[i:i+batch_size].to(device)\n",
        "\n",
        "            # Forward pass\n",
        "            outputs = model_lstm(batch_x)\n",
        "\n",
        "            # Compute loss and backpropagation\n",
        "            loss = criterion(outputs, batch_y)\n",
        "            optimizer.zero_grad()\n",
        "            loss.backward()\n",
        "            optimizer.step()\n",
        "\n",
        "        # Evaluate the model on training and test data\n",
        "        with torch.no_grad():\n",
        "            model_lstm.eval()\n",
        "            train_outputs = model_lstm(x_train)\n",
        "            train_loss = criterion(train_outputs, y_train)\n",
        "            test_outputs = model_lstm(x_test)\n",
        "            test_loss = criterion(test_outputs, y_test)\n",
        "\n",
        "        # Print training and test loss every epoch\n",
        "        print('Epoch [{}/{}], Train Loss: {:.6f}, Test Loss: {:.6f}'.format(epoch+1, num_epochs, train_loss.item(), test_loss.item()))\n",
        "\n",
        "        # Check if the current test loss is the best so far\n",
        "        if test_loss < best_loss:\n",
        "            best_loss = test_loss\n",
        "            early_stop_count = 0\n",
        "\n",
        "            torch.save(model_lstm.state_dict(), name)\n",
        "            shutil.copy(name, f'/content/drive/MyDrive/Paper/RoSo/{model}/{bc_name}/')\n",
        "\n",
        "        else:\n",
        "            early_stop_count += 1\n",
        "            if early_stop_count == early_stop_patience:\n",
        "                print('Early stopping after {} epochs'.format(epoch+1))\n",
        "                break\n",
        "\n",
        "\n",
        "elif state_lstm == 'load':\n",
        "    state_dict = torch.load(f'/content/drive/MyDrive/Paper/RoSo/{model}/{bc_name}/{name}', map_location=torch.device('cpu'))\n",
        "    model_lstm.load_state_dict(state_dict)\n",
        "    model_lstm = model_lstm.to(torch.device('cpu'))\n",
        "\n",
        "    # Recheck the model is loaded completely!\n",
        "    missing_keys, unexpected_keys = model_lstm.load_state_dict(state_dict, strict=False)\n",
        "    if missing_keys or unexpected_keys:\n",
        "        print(\"Missing keys:\", missing_keys)\n",
        "        print(\"Unexpected keys:\", unexpected_keys)\n",
        "    else:\n",
        "        print(\"Model is loaded completely!\")"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "S8MKhkfaf34p"
      },
      "source": [
        "### Inference"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 96,
      "metadata": {
        "id": "o4t4mH-2f34p"
      },
      "outputs": [],
      "source": [
        "model_lstm.eval()\n",
        "with torch.no_grad():\n",
        "    x = x_test[0:1,:,:].cpu()\n",
        "    predict = model_lstm(x)\n",
        "    pred_final = []\n",
        "\n",
        "    for i in range (1,x_test.shape[0]):\n",
        "        pred_final.append(predict)\n",
        "        x = x_test[i:i+1, :, :]\n",
        "        x = x.to(device)\n",
        "        predict = model_lstm(x)\n",
        "\n",
        "pred_final = torch.cat(pred_final, dim=0).cpu().detach().numpy()"
      ]
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3.11.5"
    },
    "colab": {
      "provenance": [],
      "collapsed_sections": [
        "yNiFcBU9f34Q",
        "z6k9P75cf34a",
        "ob-RwiNyf34d",
        "qyURirjMf34e",
        "q7hVSxV9f34f",
        "gaDApmlSf34l",
        "-8HDoX2bf34n",
        "mwk8XwbIf34n",
        "SKPpgg0Of34o",
        "pJiPrTGPf34o",
        "d27e7H1Af34o",
        "03St5AYaf34p",
        "S8MKhkfaf34p"
      ],
      "machine_shape": "hm",
      "gpuType": "A100"
    },
    "accelerator": "GPU"
  },
  "nbformat": 4,
  "nbformat_minor": 0
}