{ "cells": [ { "cell_type": "markdown", "id": "8a0aa982", "metadata": {}, "source": [ "# Computing a Power Spectrum from a Hydrodynamic Simulation" ] }, { "cell_type": "markdown", "id": "ebc36719182a0479", "metadata": {}, "source": [ "`kspace` can also be used to analyze scalar and vector fields extracted from cosmologial simulations. Here we will show how to extract adaptive mesh refinement (AMR) data from a [FLASH](https://flash.rochester.edu) simulation of a galaxy cluster with sloshing gas." ] }, { "cell_type": "code", "execution_count": 1, "id": "bab2a765", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:17.651200Z", "start_time": "2026-08-11T18:00:15.748693Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:24.984260Z", "iopub.status.busy": "2026-08-11T18:23:24.984133Z", "iopub.status.idle": "2026-08-11T18:23:26.930974Z", "shell.execute_reply": "2026-08-11T18:23:26.930416Z" } }, "outputs": [], "source": [ "from kspace import FourierAnalysis\n", "import matplotlib.pyplot as plt\n", "import yt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 2, "id": "5c4c5f54", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:18.815750Z", "start_time": "2026-08-11T18:00:17.652163Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:26.932384Z", "iopub.status.busy": "2026-08-11T18:23:26.932242Z", "iopub.status.idle": "2026-08-11T18:23:28.227586Z", "shell.execute_reply": "2026-08-11T18:23:28.227156Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/jzuhone/Source/field_kit/.venv/lib/python3.13/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", " from .autonotebook import tqdm as notebook_tqdm\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:27,800 Sample dataset found in '/Users/jzuhone/Data/yt/test_outputs/GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150'\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,224 Parameters: current_time = 1.1835090993823291e+17\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,224 Parameters: domain_dimensions = [16 16 16]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,225 Parameters: domain_left_edge = [-3.70272e+24 -3.70272e+24 -3.70272e+24]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,225 Parameters: domain_right_edge = [3.70272e+24 3.70272e+24 3.70272e+24]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,225 Parameters: cosmological_simulation = 0\n" ] } ], "source": [ "# Load the dataset\n", "ds = yt.load_sample(\"GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150\")" ] }, { "cell_type": "markdown", "id": "d5eac15b9849e174", "metadata": {}, "source": [ "To get a sense of what the data looks like, plot a slice of the density and temperature to see what it looks like, and annotate the slice with velocity vectors." ] }, { "cell_type": "code", "execution_count": 3, "id": "418111d7", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:19.696248Z", "start_time": "2026-08-11T18:00:18.827246Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:28.228722Z", "iopub.status.busy": "2026-08-11T18:23:28.228546Z", "iopub.status.idle": "2026-08-11T18:23:28.950913Z", "shell.execute_reply": "2026-08-11T18:23:28.950500Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,514 xlim = -1542838790481162406985728.000000 1542838790481162406985728.000000\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,514 ylim = -1542838790481162406985728.000000 1542838790481162406985728.000000\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,515 xlim = -1542838790481162406985728.000000 1542838790481162406985728.000000\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,515 ylim = -1542838790481162406985728.000000 1542838790481162406985728.000000\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,517 Making a fixed resolution buffer of (('gas', 'kT')) 800 by 800\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "yt : [INFO ] 2026-08-11 14:23:28,596 Making a fixed resolution buffer of (('gas', 'density')) 800 by 800\n" ] }, { "data": { "text/html": [ "

" ], "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "slc = yt.SlicePlot(\n", " ds,\n", " \"z\",\n", " [(\"gas\", \"density\"), (\"gas\", \"kT\")],\n", " width=(1.0, \"Mpc\"),\n", ")\n", "slc.annotate_velocity()" ] }, { "cell_type": "markdown", "id": "8eb7d3c29fa0e8ea", "metadata": {}, "source": [ "So we can see that the simulation has spiral-shaped bulk motions that are decaying into turbulence in the center. Since the simulation is AMR, we need to extract a regular grid of velocities to work with `kspace`. First, set up the parameters for a grid centered on the domain center, 400 kpc on a side, resolved by 128 cells on a side:" ] }, { "cell_type": "code", "execution_count": 4, "id": "e245c9c2", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:19.800307Z", "start_time": "2026-08-11T18:00:19.759888Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:28.955439Z", "iopub.status.busy": "2026-08-11T18:23:28.955344Z", "iopub.status.idle": "2026-08-11T18:23:28.957130Z", "shell.execute_reply": "2026-08-11T18:23:28.956824Z" } }, "outputs": [], "source": [ "W = ds.arr([400.0] * 3, \"kpc\")\n", "ddims = [128] * 3\n", "c = ds.domain_center.to(\"kpc\")\n", "le = c - 0.5*W # left edge\n", "re = c + 0.5*W # right edge" ] }, { "cell_type": "markdown", "id": "f1389d5533cab8d6", "metadata": {}, "source": [ "Now we use these parameters to construct the grid:" ] }, { "cell_type": "code", "execution_count": 5, "id": "8f103c2e", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:19.841966Z", "start_time": "2026-08-11T18:00:19.820065Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:28.958142Z", "iopub.status.busy": "2026-08-11T18:23:28.958082Z", "iopub.status.idle": "2026-08-11T18:23:28.961173Z", "shell.execute_reply": "2026-08-11T18:23:28.960778Z" } }, "outputs": [], "source": [ "grid = ds.r[\n", " le[0] : re[0] : ddims[0] * 1j,\n", " le[1] : re[1] : ddims[1] * 1j,\n", " le[2] : re[2] : ddims[2] * 1j,\n", "]" ] }, { "cell_type": "markdown", "id": "5ed15b114cb7396d", "metadata": {}, "source": [ "and set up an instance of `FourierAnalysis` to match the grid:" ] }, { "cell_type": "code", "execution_count": 6, "id": "0f2145de", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:19.856995Z", "start_time": "2026-08-11T18:00:19.843294Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:28.962046Z", "iopub.status.busy": "2026-08-11T18:23:28.961976Z", "iopub.status.idle": "2026-08-11T18:23:28.963505Z", "shell.execute_reply": "2026-08-11T18:23:28.963210Z" } }, "outputs": [], "source": [ "# This is a class I wrote to simplify stuff\n", "fa = FourierAnalysis(W.v, ddims)" ] }, { "cell_type": "markdown", "id": "f56aa21cfb8a53", "metadata": {}, "source": [ "Now we query the grid for the velocity in the x-direction, converting it to units of km/s:" ] }, { "cell_type": "code", "execution_count": 7, "id": "6e8eb33b", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:20.037943Z", "start_time": "2026-08-11T18:00:19.859667Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:28.964325Z", "iopub.status.busy": "2026-08-11T18:23:28.964269Z", "iopub.status.idle": "2026-08-11T18:23:29.102260Z", "shell.execute_reply": "2026-08-11T18:23:29.101899Z" } }, "outputs": [], "source": [ "# Get the x-velocity field in km/s on the grid\n", "vx = grid[(\"gas\", \"velocity_x\")].to_value(\"km/s\")" ] }, { "cell_type": "markdown", "id": "4fa2d29546dc57ab", "metadata": {}, "source": [ "The next line demonstrates an important consideration. FFTs assume the data is periodic. However, in a system such as this, that is clearly not the case. If you take the FFT of a non-periodic signal, you can get effects of [aliasing and spectral leakage](https://en.wikipedia.org/wiki/Spectral_leakage). To mitigate this effect, we can apply a window function to the data which will bring it smoothly to zero at the boundaries, minimizing these effects:" ] }, { "cell_type": "code", "execution_count": 8, "id": "9ee3eb63", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:20.648266Z", "start_time": "2026-08-11T18:00:20.044688Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:29.103602Z", "iopub.status.busy": "2026-08-11T18:23:29.103534Z", "iopub.status.idle": "2026-08-11T18:23:29.805822Z", "shell.execute_reply": "2026-08-11T18:23:29.805395Z" } }, "outputs": [], "source": [ "vxw = vx.copy() # copy so that we have the original data kept separate\n", "fa.window_data(vxw) # this uses a \"Tukey\" filter by default" ] }, { "cell_type": "markdown", "id": "faf99769591a0935", "metadata": {}, "source": [ "Now we will take the power spectra of both the windowed and unwindowed data:" ] }, { "cell_type": "code", "execution_count": 9, "id": "1d6cc07c", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:21.020277Z", "start_time": "2026-08-11T18:00:20.659221Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:29.806930Z", "iopub.status.busy": "2026-08-11T18:23:29.806861Z", "iopub.status.idle": "2026-08-11T18:23:30.138650Z", "shell.execute_reply": "2026-08-11T18:23:30.138135Z" } }, "outputs": [], "source": [ "# Get the power spectrum of each spatial component\n", "nbins = 60 # Number of bins for the power spectrum, it will\n", "# use the min-max wavenumbers as boundaries\n", "k_bins, Pk = fa.make_binned_powerspec(vx, nbins)\n", "kw_bins, Pkw = fa.make_binned_powerspec(vxw, nbins)" ] }, { "cell_type": "markdown", "id": "5a854bb8a47a38b5", "metadata": {}, "source": [ "and plot them:" ] }, { "cell_type": "code", "execution_count": 10, "id": "f1e17642", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:21.186417Z", "start_time": "2026-08-11T18:00:21.027820Z" }, "execution": { "iopub.execute_input": "2026-08-11T18:23:30.139768Z", "iopub.status.busy": "2026-08-11T18:23:30.139698Z", "iopub.status.idle": "2026-08-11T18:23:30.286471Z", "shell.execute_reply": "2026-08-11T18:23:30.286099Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Take the geometric mean of the bins since they are logspaced\n", "k = np.sqrt(k_bins[1:]*k_bins[:-1])\n", "kw = np.sqrt(kw_bins[1:]*kw_bins[:-1])\n", "\n", "fig, ax = plt.subplots(1, 1, figsize=(8, 6))\n", "ax.loglog(k, Pk, label=\"Unwindowed\")\n", "ax.loglog(kw, Pkw, label=\"Windowed\")\n", "ax.set_xlabel(\"Wavenumber (k)\")\n", "ax.set_ylabel(\"Power Spectrum (Pk)\")\n", "ax.set_title(\"Power Spectrum\")\n", "ax.legend()" ] }, { "cell_type": "markdown", "id": "12a61cc889eabb52", "metadata": {}, "source": [ "In the unwindowed (blue) spectrum, there are high-frequency components of the velocity signal associated with the sharp edges at the boundaries that have frequency components higher than the [Nyquist frequency](https://en.wikipedia.org/wiki/Nyquist_frequency) that get aliased back onto the lower wavenumbers, making the unwindowed spectrum noisy and flatter at high wavenumber. By contrast, the windowed (orange) spectrum has aliasing suppressed and the spectrum looks more physical. However, the windowing changes the velocity signal by suppressing it at the edges, resulting in a decrease in normalization." ] }, { "cell_type": "code", "execution_count": 10, "id": "b1bc6847f5071db1", "metadata": { "ExecuteTime": { "end_time": "2026-08-11T18:00:21.199229Z", "start_time": "2026-08-11T18:00:21.194809Z" } }, "outputs": [], "source": [] } ], "metadata": { "jupytext": { "cell_metadata_filter": "-all" }, "kernelspec": { "display_name": "py313", "language": "python", "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.13.2" } }, "nbformat": 4, "nbformat_minor": 5 }