{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "afba0163",
   "metadata": {},
   "source": [
    "# Exercise 6: PCA for airfoils\n",
    "\n",
    "In this exercise, we use Principal Component Analysis (PCA) to identify coherent patterns in flow data around an airfoil. In the fluid dynamics community, PCA is commonly known as Proper Orthogonal Decomposition (POD) [2].\n",
    "\n",
    "**Data**\n",
    "The dataset comes from a simulation of the NACA 0012 airfoil [1].\n",
    "It contains the magnitude of the velocity field at each point in a 2D plane slice of a 3D simulation. The white region in the accompanying animation corresponds to the airfoil, and the color intensity indicates flow speed—faster flow appears brighter. Downstream of the foil, turbulent structures form and evolve over time.\n",
    "![](velocity_animation.gif)\n",
    "Originally, the data consist of about 22,000 spatial points per time step, distributed over an irregular mesh. For simplicity, we provide a resampled version on a regular 2D grid, stored in the file `velocities.npz`.\n",
    "It contains 2D arrays where the width is $n_x = 500$ and the height is $n_y=207$.\n",
    "We consider the flattened vectors without the $n_f$ pixels that represent the airfoil, so that\n",
    "$$\n",
    "\\mathbf x_t \\in \\mathbb R^N \n",
    "$$\n",
    "for grid size is $N=n_x \\cdot n_y - n_f$.\n",
    "\n",
    "**PCA**\n",
    "We aim to extract dominant spatial modes that describe the temporal evolution of the flow field. PCA finds orthogonal directions in data space that capture maximal variance, allowing us to build a low-dimensional model with $k$ small that approximates $\\mathbf x_t$ well:\n",
    "$$\n",
    "\\mathbf{x}_t \\approx \\bar{\\mathbf{x}} + \\sum_{i=1}^{k} a_{i,t} \\mathbf{u}_i,\n",
    "$$\n",
    "where  \n",
    "- $ \\bar{\\mathbf{x}} $ is the mean field,  \n",
    "- $ \\mathbf{u}_i $ are the principal components (spatial modes),  \n",
    "- $ a_{i,t} $ are their time-dependent amplitudes, and  \n",
    "- $ k $ is the number of retained modes.\n",
    "The covariance matrix is  \n",
    "$$\n",
    "C = \\frac{1}{T} X_c^\\top X_c,\n",
    "$$\n",
    "where $ X_c $ is the centered data matrix with columns $\\mathbf{x}_t - \\bar{\\mathbf{x}}$.  \n",
    "Eigenvalue decomposition\n",
    "$$\n",
    "C \\mathbf{u}_i = \\lambda_i \\mathbf{u}_i\n",
    "$$\n",
    "yields the modes $\\mathbf{u}_i$ and their explained variances $\\lambda_i$.\n",
    "\n",
    "**Goal**\n",
    "In this exercise we apply PCA to the velocity data. We begin by loading and visualizing the dataset, centering it, and computing its principal components. We then examine the leading modes and plot the variance explained by each component. Finally, we reconstruct the flow field using a limited number of modes and compare the results to the original data, pondering on how one can use it (or not) for prediction. \n",
    "\n",
    "**Bonus** If you are interested in modelling turbulent flows with machine learning, check this [nice paper](https://arxiv.org/pdf/1811.11328).\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f1426f6f",
   "metadata": {},
   "source": [
    "### Exercise 1"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "81e54283",
   "metadata": {},
   "source": [
    "**1.a)** Load the data from the file we provide for you. The `vel_grids` is a `(#sample, #width, #height)` array that contains the velocity for a given time step, at every point. The `foil_grid` is a binary mask that can be used to remove data that lies where the foil (wing, white area in the gif) lies, it is True if the pixel is lying within the foil wing.\n",
    "\n",
    "How many pixels does the foil contain?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "97fd8afb",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1600, 207, 500)\n",
      "(207, 500)\n",
      "Data loaded.\n",
      "\n",
      "Summary: \n",
      "time steps nt=1600,\n",
      "height NY=500,\n",
      "width NX=207,\n",
      "foil pixels NF=1288\n"
     ]
    }
   ],
   "source": [
    "from sklearn.decomposition import PCA\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "\n",
    "data_file = np.load(\"velocities.npz\") # you may use \"velocities_small.npz\" for faster data loading\n",
    "vel_grids = data_file[\"mag\"]        \n",
    "vel_grids = np.flip(vel_grids, axis=1)\n",
    "foil_grid = np.flip(data_file[\"mask_grid\"],axis=0)   \n",
    "print(vel_grids.shape) # (nt, NX, NY)\n",
    "print(foil_grid.shape) # (NX, NY)\n",
    "print(\"Data loaded.\")\n",
    "\n",
    "nt = ...\n",
    "NX = ...\n",
    "NY = ...\n",
    "NF = ... \n",
    "\n",
    "print(f\"\\nSummary: \\ntime steps nt={nt},\\nheight NY={NY},\\nwidth NX={NX},\\nfoil pixels NF={NF}\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4a7b57f6",
   "metadata": {},
   "source": [
    "**1.b)** Plot the first time step $t=0$ of the simulation of the airfoil, and don't forget to apply the airfoil mask, by showing foil pixels as `np.nan`. The final image should be labeled and show the color bar for the velocity.\n",
    "\n",
    " *Tip:* Don't overwrite the `vel_grids` vector, use copy instead!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "663567a2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'Y')"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 600x300 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "eae29e8b",
   "metadata": {},
   "source": [
    "### Exercise 2"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bb4f45b2",
   "metadata": {},
   "source": [
    "**2.a)** Use the `PCA` module from sklearn to find the principal components of the time data, rather than doing the eigendecomposition yourself. Don't forget to:\n",
    "- Flatten the grid for every time step from 2d $\\to$ 1d, as described in the introduction.\n",
    "- Remove the airfoild data from the 1d vector, so that it only contains $N$ pixels per time step. \n",
    "- Subtract the mean of the data.\n",
    "You should end up with a fitted `PCA` module that you can examine in the next steps.\n",
    "\n",
    "*Hint:* Running the full PCA takes roughly a minute for the $1600$ time steps on a fast computer. In case you want to debug, try using fewer timesteps."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "ec14fb7c",
   "metadata": {},
   "outputs": [],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2cf5b84b",
   "metadata": {},
   "source": [
    "**2.b)** Visualize the first 10 principal components that you discovered. This requires extracting the vector from the `PCA` module (check the documentation online), and reformatting it to a 2d version. Again, don't forget to apply the mask to the visualization, so that values where the airfoil is are NaN and you see it as white pixels.\n",
    "\n",
    "Bonus: How would you interpret these components in the context of a fluid?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "4528e996",
   "metadata": {},
   "outputs": [],
   "source": [
    "def visualize_2d(x):\n",
    "    # convenience function to visualize a 1d vector x in 2d, applying the mask for the foil\n",
    "    # x is assumed to be of shape (NF,) where NF is the number of non-masked pixels\n",
    "    # returns a 2d array of shape (NY, NX) with NaNs where the mask is True\n",
    "    ...\n",
    "    return ...\n",
    "\n",
    "for i in range(10):\n",
    "    ..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6c724dd3",
   "metadata": {},
   "source": [
    "**2.c)** Plot the cummulative explained variance ratio and show how many components are needed to explain 90% of the variance."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "5d4d9d47",
   "metadata": {},
   "outputs": [],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aa4e39f1",
   "metadata": {},
   "source": [
    "**2.d)** Reconstruct the first timestep from the first 10 PCA compoents. Visualize the result, and compare to the original time step. *Hint:* Don't forget to add the mean vector back.\n",
    "\n",
    "How well does the reconstruction represent the airflow?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "b4fdf026",
   "metadata": {},
   "outputs": [],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2e2748a8",
   "metadata": {},
   "source": [
    "**2.e)** Visualize for three random timesteps the reconstructions for 10, 50 and (your answer from 2.c) principal components. Which reconstruction is visually convincing?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "dd9af95b",
   "metadata": {},
   "outputs": [],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "966c04e7",
   "metadata": {},
   "source": [
    "**2.d)** Plot the time evolution of the first principal components coefficient. Do you think the system is regular enough to predict future dynamics by fitting this time evolution with a non-linear function, and extrapolating into future times?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "4fdd194f",
   "metadata": {},
   "outputs": [],
   "source": [
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a22fa4f1",
   "metadata": {},
   "source": [
    "# Bibliography\n",
    "\n",
    "- [1] Towne, A., Yeh, C., Patel, H., Taira, K. (2022). Turbulent airfoil wake large eddy simulation [Data set], University of Michigan - Deep Blue Data. https://doi.org/10.7302/0e3g-6j84\n",
    "- [2] Taira, K., Brunton, S. L., Dawson, S. T. M., Rowley, C. W., Colonius, T., McKeon, B. J., Schmidt, O. T., Gordeyev, S., Theofilis, V., & Ukeiley, L. S. (2017). Modal Analysis of Fluid Flows: An Overview [Preprint]. arXiv. https://doi.org/10.48550/arXiv.1702.01453"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
