diff --git a/docs/tutorials/synthetic_data_processing_3_inputs_2_outputs.ipynb b/docs/tutorials/synthetic_data_processing_3_inputs_2_outputs.ipynb new file mode 100644 index 00000000..2a55c723 --- /dev/null +++ b/docs/tutorials/synthetic_data_processing_3_inputs_2_outputs.ipynb @@ -0,0 +1,3107 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Synthetic Data Tutorial\n", + "\n", + "This notebook shows how to process MTH5 data from a synthetic dataset.\n", + "\n", + "It also shows how to modify processing so that Fourier coefficients are saved in the mth5. These FCs can be used to perform TF estimation using different regression settings. The same FCs will be used for feature extraction in future (This section is a work in Progress). \n", + "\n", + "## Contents:\n", + "\n", + "1. [Process Synthetic Data with Aurora](#Process-Synthetic-Data-with-Aurora)\n", + "2. [Fourier coefficient storage in MTH5](#Fourier-coefficient-storage-in-MTH5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Process Synthetic Data with Aurora" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is a minimal example of running aurora processing on an mth5 populated with synthetic time series.\n", + "\n", + "\n", + "Steps:\n", + "1. Create the synthetic mth5\n", + "2. Get a Run Summary from the mth5\n", + "3. Select the station to process and optionally the remote reference station\n", + "4. Create a processing config\n", + "5. Generate TFs\n", + "6. Archive the TFs (in emtf_xml or z-file)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Here are the modules we will need to import " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/kkappler/software/irismt/mtpy-v2/mtpy/modeling/simpeg/recipes/inversion_2d.py:39: UserWarning: Pardiso not installed see https://github.com/simpeg/pydiso/blob/main/README.md.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import pathlib\n", + "import warnings\n", + "\n", + "from aurora.config.config_creator import ConfigCreator\n", + "from aurora.pipelines.process_mth5 import process_mth5\n", + "from mth5.data.make_mth5_from_asc import create_test12rr_h5\n", + "from mth5.data.paths import SyntheticTestPaths\n", + "from mtpy.processing import RunSummary, KernelDataset\n", + "\n", + "warnings.filterwarnings('ignore')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Define target folder and mth5 path\n", + "\n", + "By default, the synthetic mth5 file is used for testing in `aurora/tests/synthetic/` and probably already exists on your system if you have run the tests. In the code below, we check if the file exists already, and if not we make it.\n", + "\n", + "**NOTE:** If using a read-only HPC installation, you may not be able to write to the directory where aurora is installed. In that case, defining your target path as somewhere you have write permission. In that case, uncommment the READ ONLY INSTALLATION block below." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "synthetic_test_paths = SyntheticTestPaths()\n", + "target_folder = synthetic_test_paths.mth5_path\n", + "\n", + "## READ ONLY INSTALLATION\n", + "# home = pathlib.Path.home()\n", + "# target_folder = home.joinpath(\"aurora_test_folder\")\n", + "# target_folder.mkdir(parents=True, exist_ok=True)\n", + "\n", + "mth5_path = target_folder.joinpath(\"test12rr.h5\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If the mth5 doesn't already exist, or you want to re-make it, call `create_test12rr_h5()`" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "# Uncomment this to start with a fresh mth5 file\n", + "\n", + "# mth5_path.unlink()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "if not mth5_path.exists():\n", + " create_test12rr_h5(target_folder=target_folder) " + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### Get a Run Summary\n", + "\n", + "Note that we didn't need to explicitly open the mth5 to do that, we can pass the path if we want.\n", + "Run summary takes a list of mth5 paths as input argument." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:55:58 | INFO | line:777 |mth5.mth5 | close_mth5 | Flushing and closing /home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\u001b[0m\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
surveystationrunstartendduration
0EMTF Synthetictest10011980-01-01 00:00:00+00:001980-01-01 11:06:39+00:0039999.0
1EMTF Synthetictest20011980-01-01 00:00:00+00:001980-01-01 11:06:39+00:0039999.0
\n", + "
" + ], + "text/plain": [ + " survey station run start \\\n", + "0 EMTF Synthetic test1 001 1980-01-01 00:00:00+00:00 \n", + "1 EMTF Synthetic test2 001 1980-01-01 00:00:00+00:00 \n", + "\n", + " end duration \n", + "0 1980-01-01 11:06:39+00:00 39999.0 \n", + "1 1980-01-01 11:06:39+00:00 39999.0 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mth5_run_summary = RunSummary()\n", + "mth5_run_summary.from_mth5s([mth5_path,])\n", + "run_summary = mth5_run_summary.clone()\n", + "run_summary.mini_summary" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Define a Kernel Dataset\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:56:00 | INFO | line:262 |mtpy.processing.kernel_dataset | _add_columns | KernelDataset DataFrame needs column fc, adding and setting dtype to .\u001b[0m\n", + "\u001b[1m24:11:08T16:56:00 | INFO | line:262 |mtpy.processing.kernel_dataset | _add_columns | KernelDataset DataFrame needs column remote, adding and setting dtype to .\u001b[0m\n", + "\u001b[1m24:11:08T16:56:00 | INFO | line:262 |mtpy.processing.kernel_dataset | _add_columns | KernelDataset DataFrame needs column run_dataarray, adding and setting dtype to .\u001b[0m\n", + "\u001b[1m24:11:08T16:56:00 | INFO | line:262 |mtpy.processing.kernel_dataset | _add_columns | KernelDataset DataFrame needs column stft, adding and setting dtype to .\u001b[0m\n", + "\u001b[1m24:11:08T16:56:00 | INFO | line:262 |mtpy.processing.kernel_dataset | _add_columns | KernelDataset DataFrame needs column mth5_obj, adding and setting dtype to .\u001b[0m\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
surveystationrunstartendduration
0EMTF Synthetictest10011980-01-01 00:00:00+00:001980-01-01 11:06:39+00:0039999.0
1EMTF Synthetictest20011980-01-01 00:00:00+00:001980-01-01 11:06:39+00:0039999.0
\n", + "
" + ], + "text/plain": [ + " survey station run start \\\n", + "0 EMTF Synthetic test1 001 1980-01-01 00:00:00+00:00 \n", + "1 EMTF Synthetic test2 001 1980-01-01 00:00:00+00:00 \n", + "\n", + " end duration \n", + "0 1980-01-01 11:06:39+00:00 39999.0 \n", + "1 1980-01-01 11:06:39+00:00 39999.0 " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "kernel_dataset = KernelDataset()\n", + "kernel_dataset.from_run_summary(run_summary, \"test1\", \"test2\")\n", + "kernel_dataset.mini_summary" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Now define the processing Configuration\n", + "\n", + "The only things we need to provide are our band processing scheme, and the data sample rate to generate a default processing configuration.\n", + "\n", + "The config will get its information about the specific stations to process via the kernel dataset.\n", + "\n", + "**NOTE:** When doing only single station processing you need to specify RME processing (rather than remote reference processing which expects extra time series from another station)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:56:03 | INFO | line:108 |aurora.config.config_creator | determine_band_specification_style | Bands not defined; setting to EMTF BANDS_DEFAULT_FILE\u001b[0m\n" + ] + } + ], + "source": [ + "cc = ConfigCreator()\n", + "config = cc.create_from_kernel_dataset(kernel_dataset)\n", + "\n", + "# you can export the config to a json by uncommenting the following line\n", + "# cfg_json = config.to_json()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Take a look at the processing configuration" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{\n", + " \"processing\": {\n", + " \"band_setup_file\": \"/home/kkappler/software/irismt/aurora/aurora/config/emtf_band_setup/bs_test.cfg\",\n", + " \"band_specification_style\": \"EMTF\",\n", + " \"channel_nomenclature.ex\": \"ex\",\n", + " \"channel_nomenclature.ey\": \"ey\",\n", + " \"channel_nomenclature.hx\": \"hx\",\n", + " \"channel_nomenclature.hy\": \"hy\",\n", + " \"channel_nomenclature.hz\": \"hz\",\n", + " \"decimations\": [\n", + " {\n", + " \"decimation_level\": {\n", + " \"anti_alias_filter\": \"default\",\n", + " \"bands\": [\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.23828125,\n", + " \"frequency_min\": 0.19140625,\n", + " \"index_max\": 30,\n", + " \"index_min\": 25\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.19140625,\n", + " \"frequency_min\": 0.15234375,\n", + " \"index_max\": 24,\n", + " \"index_min\": 20\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.15234375,\n", + " \"frequency_min\": 0.12109375,\n", + " \"index_max\": 19,\n", + " \"index_min\": 16\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.12109375,\n", + " \"frequency_min\": 0.09765625,\n", + " \"index_max\": 15,\n", + " \"index_min\": 13\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.09765625,\n", + " \"frequency_min\": 0.07421875,\n", + " \"index_max\": 12,\n", + " \"index_min\": 10\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.07421875,\n", + " \"frequency_min\": 0.05859375,\n", + " \"index_max\": 9,\n", + " \"index_min\": 8\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.05859375,\n", + " \"frequency_min\": 0.04296875,\n", + " \"index_max\": 7,\n", + " \"index_min\": 6\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 0,\n", + " \"frequency_max\": 0.04296875,\n", + " \"frequency_min\": 0.03515625,\n", + " \"index_max\": 5,\n", + " \"index_min\": 5\n", + " }\n", + " }\n", + " ],\n", + " \"decimation.factor\": 1.0,\n", + " \"decimation.level\": 0,\n", + " \"decimation.method\": \"default\",\n", + " \"decimation.sample_rate\": 1.0,\n", + " \"estimator.engine\": \"RME_RR\",\n", + " \"estimator.estimate_per_channel\": true,\n", + " \"extra_pre_fft_detrend_type\": \"linear\",\n", + " \"input_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"method\": \"fft\",\n", + " \"min_num_stft_windows\": 2,\n", + " \"output_channels\": [\n", + " \"ex\",\n", + " \"ey\",\n", + " \"hz\"\n", + " ],\n", + " \"pre_fft_detrend_type\": \"linear\",\n", + " \"prewhitening_type\": \"first difference\",\n", + " \"recoloring\": true,\n", + " \"reference_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"regression.max_iterations\": 10,\n", + " \"regression.max_redescending_iterations\": 2,\n", + " \"regression.minimum_cycles\": 10,\n", + " \"regression.r0\": 1.5,\n", + " \"regression.tolerance\": 0.005,\n", + " \"regression.u0\": 2.8,\n", + " \"regression.verbosity\": 0,\n", + " \"save_fcs\": false,\n", + " \"window.clock_zero_type\": \"ignore\",\n", + " \"window.num_samples\": 128,\n", + " \"window.overlap\": 32,\n", + " \"window.type\": \"boxcar\"\n", + " }\n", + " },\n", + " {\n", + " \"decimation_level\": {\n", + " \"anti_alias_filter\": \"default\",\n", + " \"bands\": [\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0341796875,\n", + " \"frequency_min\": 0.0263671875,\n", + " \"index_max\": 17,\n", + " \"index_min\": 14\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0263671875,\n", + " \"frequency_min\": 0.0205078125,\n", + " \"index_max\": 13,\n", + " \"index_min\": 11\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0205078125,\n", + " \"frequency_min\": 0.0166015625,\n", + " \"index_max\": 10,\n", + " \"index_min\": 9\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0166015625,\n", + " \"frequency_min\": 0.0126953125,\n", + " \"index_max\": 8,\n", + " \"index_min\": 7\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0126953125,\n", + " \"frequency_min\": 0.0107421875,\n", + " \"index_max\": 6,\n", + " \"index_min\": 6\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 1,\n", + " \"frequency_max\": 0.0107421875,\n", + " \"frequency_min\": 0.0087890625,\n", + " \"index_max\": 5,\n", + " \"index_min\": 5\n", + " }\n", + " }\n", + " ],\n", + " \"decimation.factor\": 4.0,\n", + " \"decimation.level\": 1,\n", + " \"decimation.method\": \"default\",\n", + " \"decimation.sample_rate\": 0.25,\n", + " \"estimator.engine\": \"RME_RR\",\n", + " \"estimator.estimate_per_channel\": true,\n", + " \"extra_pre_fft_detrend_type\": \"linear\",\n", + " \"input_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"method\": \"fft\",\n", + " \"min_num_stft_windows\": 2,\n", + " \"output_channels\": [\n", + " \"ex\",\n", + " \"ey\",\n", + " \"hz\"\n", + " ],\n", + " \"pre_fft_detrend_type\": \"linear\",\n", + " \"prewhitening_type\": \"first difference\",\n", + " \"recoloring\": true,\n", + " \"reference_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"regression.max_iterations\": 10,\n", + " \"regression.max_redescending_iterations\": 2,\n", + " \"regression.minimum_cycles\": 10,\n", + " \"regression.r0\": 1.5,\n", + " \"regression.tolerance\": 0.005,\n", + " \"regression.u0\": 2.8,\n", + " \"regression.verbosity\": 0,\n", + " \"save_fcs\": false,\n", + " \"window.clock_zero_type\": \"ignore\",\n", + " \"window.num_samples\": 128,\n", + " \"window.overlap\": 32,\n", + " \"window.type\": \"boxcar\"\n", + " }\n", + " },\n", + " {\n", + " \"decimation_level\": {\n", + " \"anti_alias_filter\": \"default\",\n", + " \"bands\": [\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.008544921875,\n", + " \"frequency_min\": 0.006591796875,\n", + " \"index_max\": 17,\n", + " \"index_min\": 14\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.006591796875,\n", + " \"frequency_min\": 0.005126953125,\n", + " \"index_max\": 13,\n", + " \"index_min\": 11\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.005126953125,\n", + " \"frequency_min\": 0.004150390625,\n", + " \"index_max\": 10,\n", + " \"index_min\": 9\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.004150390625,\n", + " \"frequency_min\": 0.003173828125,\n", + " \"index_max\": 8,\n", + " \"index_min\": 7\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.003173828125,\n", + " \"frequency_min\": 0.002685546875,\n", + " \"index_max\": 6,\n", + " \"index_min\": 6\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 2,\n", + " \"frequency_max\": 0.002685546875,\n", + " \"frequency_min\": 0.002197265625,\n", + " \"index_max\": 5,\n", + " \"index_min\": 5\n", + " }\n", + " }\n", + " ],\n", + " \"decimation.factor\": 4.0,\n", + " \"decimation.level\": 2,\n", + " \"decimation.method\": \"default\",\n", + " \"decimation.sample_rate\": 0.0625,\n", + " \"estimator.engine\": \"RME_RR\",\n", + " \"estimator.estimate_per_channel\": true,\n", + " \"extra_pre_fft_detrend_type\": \"linear\",\n", + " \"input_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"method\": \"fft\",\n", + " \"min_num_stft_windows\": 2,\n", + " \"output_channels\": [\n", + " \"ex\",\n", + " \"ey\",\n", + " \"hz\"\n", + " ],\n", + " \"pre_fft_detrend_type\": \"linear\",\n", + " \"prewhitening_type\": \"first difference\",\n", + " \"recoloring\": true,\n", + " \"reference_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"regression.max_iterations\": 10,\n", + " \"regression.max_redescending_iterations\": 2,\n", + " \"regression.minimum_cycles\": 10,\n", + " \"regression.r0\": 1.5,\n", + " \"regression.tolerance\": 0.005,\n", + " \"regression.u0\": 2.8,\n", + " \"regression.verbosity\": 0,\n", + " \"save_fcs\": false,\n", + " \"window.clock_zero_type\": \"ignore\",\n", + " \"window.num_samples\": 128,\n", + " \"window.overlap\": 32,\n", + " \"window.type\": \"boxcar\"\n", + " }\n", + " },\n", + " {\n", + " \"decimation_level\": {\n", + " \"anti_alias_filter\": \"default\",\n", + " \"bands\": [\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 3,\n", + " \"frequency_max\": 0.00274658203125,\n", + " \"frequency_min\": 0.00213623046875,\n", + " \"index_max\": 22,\n", + " \"index_min\": 18\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 3,\n", + " \"frequency_max\": 0.00213623046875,\n", + " \"frequency_min\": 0.00164794921875,\n", + " \"index_max\": 17,\n", + " \"index_min\": 14\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 3,\n", + " \"frequency_max\": 0.00164794921875,\n", + " \"frequency_min\": 0.00115966796875,\n", + " \"index_max\": 13,\n", + " \"index_min\": 10\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 3,\n", + " \"frequency_max\": 0.00115966796875,\n", + " \"frequency_min\": 0.00079345703125,\n", + " \"index_max\": 9,\n", + " \"index_min\": 7\n", + " }\n", + " },\n", + " {\n", + " \"band\": {\n", + " \"center_averaging_type\": \"geometric\",\n", + " \"closed\": \"left\",\n", + " \"decimation_level\": 3,\n", + " \"frequency_max\": 0.00079345703125,\n", + " \"frequency_min\": 0.00054931640625,\n", + " \"index_max\": 6,\n", + " \"index_min\": 5\n", + " }\n", + " }\n", + " ],\n", + " \"decimation.factor\": 4.0,\n", + " \"decimation.level\": 3,\n", + " \"decimation.method\": \"default\",\n", + " \"decimation.sample_rate\": 0.015625,\n", + " \"estimator.engine\": \"RME_RR\",\n", + " \"estimator.estimate_per_channel\": true,\n", + " \"extra_pre_fft_detrend_type\": \"linear\",\n", + " \"input_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"method\": \"fft\",\n", + " \"min_num_stft_windows\": 2,\n", + " \"output_channels\": [\n", + " \"ex\",\n", + " \"ey\",\n", + " \"hz\"\n", + " ],\n", + " \"pre_fft_detrend_type\": \"linear\",\n", + " \"prewhitening_type\": \"first difference\",\n", + " \"recoloring\": true,\n", + " \"reference_channels\": [\n", + " \"hx\",\n", + " \"hy\"\n", + " ],\n", + " \"regression.max_iterations\": 10,\n", + " \"regression.max_redescending_iterations\": 2,\n", + " \"regression.minimum_cycles\": 10,\n", + " \"regression.r0\": 1.5,\n", + " \"regression.tolerance\": 0.005,\n", + " \"regression.u0\": 2.8,\n", + " \"regression.verbosity\": 0,\n", + " \"save_fcs\": false,\n", + " \"window.clock_zero_type\": \"ignore\",\n", + " \"window.num_samples\": 128,\n", + " \"window.overlap\": 32,\n", + " \"window.type\": \"boxcar\"\n", + " }\n", + " }\n", + " ],\n", + " \"id\": \"test1-rr_test2_sr1\",\n", + " \"stations.local.id\": \"test1\",\n", + " \"stations.local.mth5_path\": \"/home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\",\n", + " \"stations.local.remote\": false,\n", + " \"stations.local.runs\": [\n", + " {\n", + " \"run\": {\n", + " \"id\": \"001\",\n", + " \"input_channels\": [\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hx\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hy\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " }\n", + " ],\n", + " \"output_channels\": [\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"ex\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"ey\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hz\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " }\n", + " ],\n", + " \"sample_rate\": 1.0,\n", + " \"time_periods\": [\n", + " {\n", + " \"time_period\": {\n", + " \"end\": \"1980-01-01T11:06:39+00:00\",\n", + " \"start\": \"1980-01-01T00:00:00+00:00\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + " }\n", + " ],\n", + " \"stations.remote\": [\n", + " {\n", + " \"station\": {\n", + " \"id\": \"test2\",\n", + " \"mth5_path\": \"/home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\",\n", + " \"remote\": true,\n", + " \"runs\": [\n", + " {\n", + " \"run\": {\n", + " \"id\": \"001\",\n", + " \"input_channels\": [\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hx\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hy\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " }\n", + " ],\n", + " \"output_channels\": [\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"ex\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"ey\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " },\n", + " {\n", + " \"channel\": {\n", + " \"id\": \"hz\",\n", + " \"scale_factor\": 1.0\n", + " }\n", + " }\n", + " ],\n", + " \"sample_rate\": 1.0,\n", + " \"time_periods\": [\n", + " {\n", + " \"time_period\": {\n", + " \"end\": \"1980-01-01T11:06:39+00:00\",\n", + " \"start\": \"1980-01-01T00:00:00+00:00\"\n", + " }\n", + " }\n", + " ]\n", + " }\n", + " }\n", + " ]\n", + " }\n", + " }\n", + " ]\n", + " }\n", + "}" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "config" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Modify for non-conventional TF" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "for decimation in config.decimations:\n", + " decimation.input_channels = [\"hx\", \"hy\", \"hz\"]\n", + " decimation.output_channels = [\"ex\", \"ey\",]\n", + " decimation.reference_channels = [\"hx\", \"hy\", \"hz\"]\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Call process_mth5" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:57:28 | INFO | line:277 |aurora.pipelines.transfer_function_kernel | show_processing_summary | Processing Summary Dataframe:\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:278 |aurora.pipelines.transfer_function_kernel | show_processing_summary | \n", + " duration has_data n_samples run station survey run_hdf5_reference station_hdf5_reference fc remote stft mth5_obj dec_level dec_factor sample_rate window_duration num_samples_window num_samples num_stft_windows\n", + "0 39999.0 True 40000 001 test1 EMTF Synthetic False None None 0 1.0 1.000000 128.0 128 39999.0 416.0\n", + "1 39999.0 True 40000 001 test1 EMTF Synthetic False None None 1 4.0 0.250000 512.0 128 9999.0 103.0\n", + "2 39999.0 True 40000 001 test1 EMTF Synthetic False None None 2 4.0 0.062500 2048.0 128 2499.0 25.0\n", + "3 39999.0 True 40000 001 test1 EMTF Synthetic False None None 3 4.0 0.015625 8192.0 128 624.0 6.0\n", + "4 39999.0 True 40000 001 test2 EMTF Synthetic True None None 0 1.0 1.000000 128.0 128 39999.0 416.0\n", + "5 39999.0 True 40000 001 test2 EMTF Synthetic True None None 1 4.0 0.250000 512.0 128 9999.0 103.0\n", + "6 39999.0 True 40000 001 test2 EMTF Synthetic True None None 2 4.0 0.062500 2048.0 128 2499.0 25.0\n", + "7 39999.0 True 40000 001 test2 EMTF Synthetic True None None 3 4.0 0.015625 8192.0 128 624.0 6.0\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:654 |aurora.pipelines.transfer_function_kernel | memory_check | Total memory: 62.74 GB\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:658 |aurora.pipelines.transfer_function_kernel | memory_check | Total Bytes of Raw Data: 0.001 GB\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:661 |aurora.pipelines.transfer_function_kernel | memory_check | Raw Data will use: 0.001 % of memory\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:707 |aurora.pipelines.transfer_function_kernel | mth5_has_fcs | Fourier coefficients not detected for survey: EMTF Synthetic, station: test1, run: 001-- Fourier coefficients will be computed\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:777 |mth5.mth5 | close_mth5 | Flushing and closing /home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:707 |aurora.pipelines.transfer_function_kernel | mth5_has_fcs | Fourier coefficients not detected for survey: EMTF Synthetic, station: test2, run: 001-- Fourier coefficients will be computed\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:777 |mth5.mth5 | close_mth5 | Flushing and closing /home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:248 |aurora.pipelines.transfer_function_kernel | check_if_fcs_already_exist | FC levels not present\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:517 |aurora.pipelines.process_mth5 | process_mth5_legacy | Processing config indicates 4 decimation levels\u001b[0m\n", + "\u001b[1m24:11:08T16:57:28 | INFO | line:445 |aurora.pipelines.transfer_function_kernel | valid_decimations | After validation there are 4 valid decimation levels\u001b[0m\n", + "\u001b[1m24:11:08T16:57:29 | INFO | line:900 |mtpy.processing.kernel_dataset | initialize_dataframe_for_processing | Dataset dataframe initialized successfully\u001b[0m\n", + "\u001b[1m24:11:08T16:57:29 | INFO | line:143 |aurora.pipelines.transfer_function_kernel | update_dataset_df | Dataset Dataframe Updated for decimation level 0 Successfully\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 25.728968s (0.038867Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 19.929573s (0.050177Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 15.164131s (0.065945Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 11.746086s (0.085135Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 9.195791s (0.108745Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 7.362526s (0.135823Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 5.856115s (0.170762Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:30 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:30 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 4.682492s (0.213562Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:31 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAG9CAYAAAAcFdw9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABJ6ElEQVR4nO3de3gU9d3+8XsTyAFIwiGSEAkEQYEgEiAkgmihzQNGK0IArdASqNLfU8PJCC1oFbVYiq0UlQjWKmgrilrEAxalEUQOAkLBM4KEQ8EEEMiSIAGy+/tjn12yOZAEsjuzs+/Xdc11ZWcns58sYefO9zQ2p9PpFAAAgAWFGF0AAACArxB0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZRF0AACAZQV80Dlx4oRSU1OVkpKiq6++Ws8++6zRJcFCbDabZ1u8eLFhdQwYMMBTx9ixY6s95sSJE5ozZ45GjhyppKQkr9pr+h4AsLpGRhdwqaKiorR27Vo1adJEpaWluvrqq5WVlaVWrVoZXRrgV3v37tX06dONLgMATCXgW3RCQ0PVpEkTSVJZWZmcTqe4ITuCVUREhNLS0nT33XerRYsWRpcDAIYzPOisXbtWt9xyixISEmSz2bR8+fIqx+Tl5SkpKUkRERFKT0/X5s2bvZ4/ceKEevToobZt22ratGmKjY31U/VYtWqVRowYoXbt2ik8PFxNmzbVtddeq0WLFl104FyzZo3uvPNO9erVS23atFF4eLiaNGmiTp06ady4cfrss8/qdb7Fixd7dePs3bu31u9xdxVVNG7cOM85kpKSvJ4rKirSfffdp5SUFEVFRSkiIkKdOnVSTk6O9u/fX+X8paWleuSRR9SrVy9FRUWpcePGat26tVJSUjR+/HitXLlSkvTQQw/JZrPpww8/9HzvCy+8UO3P061bN508eVKbNm1SXl6eoqOj6/U+AYAlOQ327rvvOu+//37nsmXLnJKcb7zxhtfzr7zyijMsLMz5/PPPO7/44gvn+PHjnc2bN3cWFRVVOVdhYaGzX79+zsLCQj9VH7zOnTvnvPvuu52Satxuv/12p8PhqPe577333gueNywszLlq1ao6n2/RokVe319QUFDr9/zoRz+6YA3t27f3HLthwwZnbGxsjcfGxMQ4165d63X+AQMG1PreOZ1O58yZMy943IV+nvbt23uOyc7OrvP7BQBWYvgYnczMTGVmZtb4/Ny5czV+/HiNGzdOkrRw4UKtWLFCzz//fJXxCHFxcerRo4c++ugjjRgxosq5ysrKVFZW5nnscDh07NgxtWrVqspf77iwWbNm6emnn5bkGrB72223KTExUW+99Za++eYbSdLSpUt17bXX6pe//GW9zt2oUSP1799fycnJatGihSIiInTs2DG9//772rlzp86cOaMJEyZUadmryQ8//OD1+OTJk7Lb7Rf8nuzsbGVkZOiBBx7w7MvKylLPnj0lSdHR0bLb7bLb7br11lt19OhRSVK7du00bNgwRUZG6s0339RXX32l4uJiZWVladu2bYqJidHOnTu1Zs0aSVJISIjuuOMOdezYUceOHdPevXu1bt06nT17Vna7Xdddd51+//vf67nnnvO03PTs2VNZWVle71d1P4+zQoua+3wAYAVOp1MnT55UQkKCQkJq6ZwyOmlVpEotOmVlZc7Q0NAqrTxjxoxxDhkyxOl0ulpx7Ha70+l0Ok+cOOHs1q2b89NPP632/HX565iNjY2NjY0tMLYDBw7Umi0Mb9G5kKNHj6q8vFxxcXFe++Pi4vT1119Lkvbt26df/epXnkHIEydOVPfu3as934wZM5Sbm+t5XFxcrHbt2unAgQOMZ6gH97gqt88//1yJiYmexzk5OfrHP/4hSQoPD9fhw4frdf4PPvhAkyZN0oEDBy543KpVq5SWllavc9dXTEyM5+unn35ao0eP9np+7NixeuONN+p0rqysLC1atEinT59W165ddezYMUlSUlKSrrnmGnXq1EndunXTwIEDq8wavPnmm7Vu3TpJ0qhRo7RgwYJaX6979+6e8UF1/R4ACAR2u12JiYmKioqq9VhTB526SEtL0/bt2+t0bHh4uMLDw6vsj46OJujUQ+UukE6dOnm9r23btvV8XVZWVuP7Xp1Dhw5p9OjROnXqVK3HNmrUyK//bpGRkVVe7+TJk3X+/hMnTnh+11577TWNGzdO+/fv1969e70GSIeFhWn27NleoTw0NNTzdePGjev0c1fsjq3r9wBAIKnLsBNTB53Y2FiFhoaqqKjIa39RUZHi4+Mv+rx5eXnKy8tTeXn5pZYYlM6cOeP1+PDhw14tOhX/vSIiIuocciTp7bff9go5jz/+uO68807FxMToyy+/VLdu3S6h8obXsmVLz9dt2rTxCieVVXyPfvzjH6ugoEDbtm3T9u3btXv3bm3YsEEfffSRzpw5o2nTpmnIkCHq1KmTT+sHAKszddAJCwtT7969lZ+fr6FDh0pyDSDOz8/XhAkTLvq8OTk5ysnJkd1u9+qawMX5+9//rvvuu0+Sq7Xn7bff9jzXu3fvep3r+++/93o8btw4z7/Rq6++elH1LV682DOYXZIKCgqqTA+vSaNGjXTu3DlJqraVqV+/fp66jhw5okGDBumaa67xOsbpdCo/P18dO3aUJJ0+fVoFBQXq2rWrUlNTlZqa6jmuRYsWKi4ulsPh0I4dOzxBp3Hjxp7z1aW1CwDgYnjQKSkp0e7duz2PCwoKtH37drVs2VLt2rVTbm6usrOzlZqaqrS0NM2bN0+lpaVeFy4Y63e/+52+/vprtW/fXq+//rpnBpIkjR8/vl7n6ty5s9fjm2++WZmZmfr000/1+uuvN0i99XH55Zdr3759klytS99//70iIyPVs2dP/eQnP9HYsWM1a9YsHT16VOfOndN1112nkSNHqlOnTiorK/PMsCoqKtLq1avVoUMHnThxQsnJyerWrZvS0tKUkJCgyMhIrVu3TsXFxZ7Xbt68uVcdbitWrND06dMVGxur2NhYz+0djh8/rkcffdRz3PHjxz1ff/LJJ5o6daokVyuUO5gCgOXVf25Uw1q9enW1I6krrvvx1FNPOdu1a+cMCwtzpqWlOT/++OMGee3i4mKnJGdxcXGDnC9YVF6X5uabb6723/Dmm2+u9zo6Z86ccXbv3r3G34mKj1evXn1R9dZlHR23e+65p9pacnJyPMesX7/+guvoVK73u+++q/XYtLQ059mzZz2v8eabb1Z7XLdu3TzHFBQU1GmWQsU1gAAgENXn+m34ysgDBgzwzJiquFW8geKECRO0b98+lZWVadOmTUpPTzeuYFSxbNkyPfLII+rYsaPCwsKUlJSkmTNn6p///Ge91ydq3LixPvjgA40dO1atWrVSeHi4rr76av31r3/VQw895Jsf4AIeffRRTZ48WW3btvUaEFxRv3799MUXX+iBBx5Q7969FR0drdDQUDVv3ly9e/fWhAkTtGrVKt1www2SpBYtWmj+/Pm64447lJycrJYtWyo0NFTR0dFKTU3V73//e+Xn56tRo/MNrkOGDNH8+fPVtWtXhYWF+eVnBwArsDmdwXdjqIqDkb/55hsVFxczI6UeKo95CcJfIQCAgdxjbOty/Ta8RccIOTk5+vLLL7VlyxajSwEAAD4UlEEHAAAEB8NnXcH6Dh48qJ/85Ce1Hjds2DDNnj3bDxUBAIIFQQf1NnbsWM+U5ro4e/asdu7cWetx33333SVUBQBAVUEZdFgZ2b+SkpIYsAwAMERQzrpyq8+obQAAYA7MugIAABBBBwAAWBhBBwAAWFZQBp28vDwlJyerT58+RpcCAAB8iMHIDEYGACCgMBgZAABABB0AAGBhBB0AAGBZBB0AAGBZBB0AAGBZQRl0mF4OAEBwYHo508sBAAgoTC8HAAAQQQcAAFgYQQcAAFgWQQcAAFgWQQcAAFgWQQcAAFhWUAYd1tEBACA4sI4O6+gAABBQWEcHAABABB0AAGBhBB0AAGBZBB0AAGBZBB0AAGBZBB0AAGBZBB0AAGBZBB0AAGBZQRl0WBkZAIDgwMrIrIwMAEBAYWVkAAAAEXQAAICFEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlEXQAAIBlBWXQycvLU3Jysvr06WN0KQAAwIdsTqfTaXQRRqnPbd4BAIA51Of6HZQtOgAAIDgQdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGURdAAAgGU1uphvOn36tD799FMdPnxYDofD67khQ4Y0SGEAAACXqt5BZ+XKlRozZoyOHj1a5Tmbzaby8vIGKQxADRwOqeL/vyZNJJvN+5jq9gFAEKp319XEiRM1cuRIfffdd3I4HF4bIQfwMYdDCg2V4uLOb1FRUrNm3tupU0ZXCgCmUO8WnaKiIuXm5iouLs4X9SBYVW6lkKq2ShjRSkHrCQAEtHoHnREjRmjNmjXq2LGjL+pBMHK3UtSmpERq2tT39biZsa6QEOm116TbbpOcTu/n3GHrH/9whS8AgGxOZ+VPyws7deqURo4cqcsuu0zdu3dX48aNvZ6fNGlSgxboS3a7XTExMSouLlZ0dLTR5QQvMwYKyZx1lZdLSUnSf/9b/fM2m9S2rVRQULfafaEurXM17YN18HsAH6rP9bveLTovv/yy3n//fUVERGjNmjWyVfgFtdlsARV0gpbZumNCQlwX8BdekO68s+aWipUrpeHD/VNT5bruu08qLDz/3OWXS489Jt16q39bTz76qOaQI7neuwMHXMcNGOC3sjzqGg4l/wdX+A+/BzCReg9Gvv/++/Xwww+ruLhYe/fuVUFBgWfbs2ePL2q8oAMHDmjAgAFKTk7WNddco9dee83vNQQUsw5mdTqlBx+sGnLcz0nSPfe4goc/LV/uCl8VQ44kHTok/fzn0nvv+fev0e++a9jjAMDi6h10zpw5o9tvv10hIeZYa7BRo0aaN2+evvzyS73//vuaMmWKSktLjS4L9VWflgp/KS+XJk++cPiaMsW/4atNm4Y9rqG5W8Gef776AGizubaXXjJ+HJHDIR0+7L2VlEilpd5b/Xr3IQXW7wEsr95pJTs7W0uXLvVFLRelTZs2SklJkSTFx8crNjZWx44dM7YoM3MPZjXbh48ZWyrMGL6uv941BqemViSbTUpMdB1nlLq0zk2f7goaRqmuZdMsrZtWEQi/BwgK9Q465eXleuyxx/SjH/1IEydOVG5urtdWX2vXrtUtt9yihIQE2Ww2LV++vMoxeXl5SkpKUkREhNLT07V58+Zqz7V161aVl5crMTGx3nUEjfJyVxeQ2T58zNhSYcbwFRIizZnj+rpy2HE/njvXuIHIkjkDopVUbokyaysUvwcwiXoHnc8++0w9e/ZUSEiIPv/8c/3nP//xbNu3b693AaWlperRo4fy8vKqfX7p0qXKzc3VzJkztW3bNvXo0UODBw/W4cOHvY47duyYxowZo7/+9a/1riGomPHDx+mUevVyDfA1U0uFGcPXqVPS6NGu96zyxcy9b+RIY/9KNmNArCxQu1bMOsauOoHwe4CgUO9ZV6tXr27QAjIzM5WZmVnj83PnztX48eM1btw4SdLChQu1YsUKPf/885o+fbokqaysTEOHDtX06dPVr1+/Gs9VVlamsrIyz2O73d5AP0UAMeOHz6lTUkzMhY9xOv3fUuHuJjp4sPq/kN1TuY3sJjIjMwbE6tTWtWKzuVo3b7/d2BayQBUovwewvEsaUbx+/Xqv4NDQzpw5o61btyojI8OzLyQkRBkZGdq4caMkyel0auzYsfrxj3+sX/ziFxc83+zZsxUTE+PZgrKLK5A/fLKy/Pt6oaHSE0+4vq6pm2jePP9eBJs0cXVVuLeTJ6WiIu+tvNzVYmGUQBhHJJmzdbM2Zh1jV51A+T2A5V3Sp2FmZqYOHjzYULVUcfToUZWXl1e53URcXJwK/2+67/r167V06VItX75cKSkpSklJ0WeffVbt+WbMmKHi4mLPduDAAZ/Vblpm/PCpfPEuLpbefVdasEBatsw1lduIi7fTKQ0e7FppOD7e+7k2baTnnpOGDvVvTTaba80R99asmdS6tfdmZMhxOqXTp80/jkgyZ+tmbcw6xq66WgLl9wCWV++uq4rquaiyT/Tv31+OOv6nDg8PV3h4uI8rMjn3YNaf/9z1YVPx39CoDx/3xbuiC3Rn+s2pU64gUZ1Dh6Rf/tK1Gd2CYiYXes+k879vI0ca/74FYuum2ReMdAuk3wNYnql/u2JjYxUaGqqioiKv/UVFRYqv/Bd2PeTl5Sk5OVl9+vS51BIDTyAMZgX8wYytm7UJxFYowGCXFHSeeeYZT7eSw+HQ/v37G6Qot7CwMPXu3Vv5+fmefQ6HQ/n5+erbt+9FnzcnJ0dffvmltmzZ0hBlwqoCYTyM2VR+z8z6vgVq10qgtEIFyu8BgkK9u64WLVqkpUuXat++fYqOjta2bdt0zz33qFGjRurQoYPK67lKbElJiXbv3u15XFBQoO3bt6tly5Zq166dcnNzlZ2drdTUVKWlpWnevHkqLS31zMJCPbk/gNyczqpTUWNj+fCRqu9Su1BzPKp/zyTzvW+B2rXSv79rGYZDh8w9EzBQfg8QFOocdMrLy5WVlaWVK1fq5ptv1pAhQ3T8+HG99tpr+utf/6qnnnrqogr45JNPNHDgQM9j96KD2dnZWrx4sW6//XYdOXJEDz74oAoLC5WSkqKVK1dWGaCMOuLiDQSusjLXcgc1cY/R4W7ggIfNWccRxX/+8581d+5crV69Wp07d/bsdzgcmjt3ru6//36dO3eu3i06RqrPbd4BWEh1LZmB0LpZWlqnP0yc58plCzVR3UADq8/1u84tOosXL9Zjjz3mFXIk17o2U6dOldPp1G9/+9uLq9jP8vLylJeXF1ChDEADCtCuFUdEE0XJ1fUconL113q10z4VKU4f61o5FKqjitXJ0yHV/nhAMKpzi05kZKQ+/fRTXXnllb6uyW9o0QEQSNx3gKhNSUn1OQ6wivpcv+vcttm0aVMdOXKkxue3b9+uX/7yl3WvEgBQL4G0MDJgFnVu0Rk+fLiaNm2qF198scpzhYWFGjBggHbt2hVQ3UG06KA2Dod09Oj5x02aVL3IVLcP8IXycikpqeY1A92TrgoKzDUrHmhoPmnRmTlzpv75z38qOztbn3/+uU6fPq1Dhw7pmWeeUZ8+fRQbG3vJhQNmEkg3ikZwCMTbcwFGq3PQueaaa/Svf/1L69evV48ePdS0aVMlJiZq0qRJuuOOO/Tyyy+b4pYQdRHUKyMDCFgsjAzUX70WDLzhhhv0zTffaPPmzSooKFB0dLT69u2rli1bqrS0VDNnzvRVnQ0qJydHOTk5nqYvoDohIa6ugqNHXbN6r7jCtb+oyHugp7/HQ9CdFrwCZWFkwEzqPEbHihijg7qy2yV3Jn73XWnQIGPGQDDrJri5x+gcPHjhhZEZowOr88kYHSBYLVsmJSeff3zTTa6LzbJlhpWEIBUSEni35wKMRosOLTq4gGXLpBEjqv717L6ovP66lJXl35rcXVe1dafRdWU9dVwY2VS35wJ8gRadWjAYGXVRXi5Nnlx9F4F735QpruP8KSREat1aatXq/L6tW6WICFfYadrU2JDjcEiHD3tvJSWui3TFLXj/xALgT7To0KKDGqxZI1W432yNVq+WBgzwdTXeli2TJk3yvr9j27bSE0/4v4WporqOIZIYR3QxKt+OKxBuzwX4gk/udQUEG7NO5a2pO+3gQdd+I7rT4B/V3aLL5LfnAgxH7gdqYMapvGbtTnNzT8kvKnJtu3adf27ZMqm42NWSU1LCbQoA+AdBB6jB9de7uoNqGu9is0mJia7j/CUQVsZ1jyFat867Sy8rS+rWTXrvPePHEQEIHgSdIFR5sCgDRasXGuoa8yLVPJV33jz/TuU1a3daZe7utYpjiKTz3WtMzQfgL4zRCTIsOFc/WVmuMS/VDfydN8//Y2HM2J1WWW3dazabq3vt1ltZ78XKKq/gLbGKN4wRlEEnLy9PeXl5AXWndaury4eivz8Q3TNaBg+WtmyREhJc+5cscXXJhIa66vbnDBd3d1ptK+P6szutsvp0r/l7thr8g9l3MJOgDDrBfK8rM96/yaytTKdOVT+jZdQo78f+XJzN3Z02YoQr1FQMO0Z1p1UWKN1rAIIDY3SCkNkXnMOFubvT3C1Mbm3bmmNqeSB0r8G3mH0HMyHoBCkz3b+prh+K/v5AbNLk/IdxSYl08uT5Gt2bv5fadzpdLXHu7jS3JUukTZuk/v1dLWRGMuNsNfgfs+9gFqyMHIQrI5vx/k1uZl3x1ywC5V5H7t8xqfruNTO0PMH3zPxZg8DGva5QIzMvOMeUZOswe/cafM/MnzUILrToBFmLjlnv31Re7uo6q2m2jns2UUFBcE9JNvu9jirXY7dXP1uN+zFZn1k/a2AN3OsKNTLrjBimJNeN2e91VNNMNcnY2WrVYZ0X3zLrZw2CT1AGnWBeR8esM2L4UIQ/sc6L75n1swbBh66rIOu6cncR1bbgnL+7iGjmtobqutLM1r0mEXT8wayfNbAGBiOjRma8f5PElGSrcHetVdyaNXNNM664GT0+p/KSBnv2nH+uqMh7WQHWebk4Zv2sQfAh6AQhM86I4UMR/uZe54XFMxtexfWe/vEPKT7e+/k2baTnnpOGDjWkPAQZuq6CrOuqIrtdct8B4913pUGDjA8S1a2jk5hozA00ERxYu6nh1XW9J8n4QekITPW5fhN0gjjoVPwwMtM4BDMGMFgTC9r5BkEHvsb0ctSo4sDQ0tLz+w8fPh90/D1QtPJg1dOnz3/dpYv0/ffGD16F9dS2oJ3N5lrQ7tZbCdr15b59SkVmHJSO4EDQCTI1rXPivou5mz//yrrQ2isV6+IvPzQk1m7ynerWe5LMteYTggeXDQBBibWbgOBAi06QqdykbIbm5Lo0c9PEjYbGgnZAcAjKoBPMKyOb8RYCNHPDCO61m2pb0I61m4DAxqyrIJ51BQQ796wryTvsMOsKMDdWRgaAOjDj4pkAGlZQdl0BgFtWlpSRwdpNgFXRogMg6FUMNTfcQMgBrIQWHQBBp/KsPrMsngmg4RF0AASdui5SKbFQJRDo+O8LAAAsixYdAEGHezEBwYOgAyDosEglEDz4WwUAAFgWQQcAAFgWQQcAAFgWQQcAAFgWQQcAAFhWUAadvLw8JScnq0+fPkaXAgAAfMjmdDqdRhdhlPrc5h0AAJhDfa7fQdmiAwAAggNBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWBZBBwAAWJYlgs6wYcPUokULjRgxwuhSAACAiVgi6EyePFkvvvii0WUAAACTsUTQGTBggKKioowuAwAAmIzhQWft2rW65ZZblJCQIJvNpuXLl1c5Ji8vT0lJSYqIiFB6ero2b97s/0IBAEDAMTzolJaWqkePHsrLy6v2+aVLlyo3N1czZ87Utm3b1KNHDw0ePFiHDx/2c6UAACDQNDK6gMzMTGVmZtb4/Ny5czV+/HiNGzdOkrRw4UKtWLFCzz//vKZPn16v1yorK1NZWZnncXFxsSTJbrdfROUAAMAI7uu20+ms9VjDg86FnDlzRlu3btWMGTM8+0JCQpSRkaGNGzfW+3yzZ8/Www8/XGV/YmLiJdUJAAD87+TJk4qJibngMaYOOkePHlV5ebni4uK89sfFxenrr7/2PM7IyNCOHTtUWlqqtm3b6rXXXlPfvn2rnG/GjBnKzc31PHY4HDp27JhatWolm83mux/kIvXp00dbtmwxugwvRtbkj9f21Ws09Hkv9Xx2u12JiYk6cOCAoqOjG6wuGMOMnxVGCfT3woz1G1XThV7X6XTq5MmTSkhIqPU8pg46dfXvf/+7TseFh4crPDzca1/z5s19UFHDCA0NNd1FyMia/PHavnqNhj5vQ50vOjradL9jqD8zflYYJdDfCzPWb1RNtb1ubS05boYPRr6Q2NhYhYaGqqioyGt/UVGR4uPjDarKf3JycowuoQoja/LHa/vqNRr6vGb83YBx+H04L9DfCzPWb1RNDfW6NmddRvL4ic1m0xtvvKGhQ4d69qWnpystLU1PPfWUJFd3U7t27TRhwoR6D0YG4GK32xUTE6Pi4mLT/fUIAA3J8K6rkpIS7d692/O4oKBA27dvV8uWLdWuXTvl5uYqOztbqampSktL07x581RaWuqZhQWg/sLDwzVz5swqXbkAYDWGt+isWbNGAwcOrLI/OztbixcvliTNnz9ff/rTn1RYWKiUlBQ9+eSTSk9P93OlAAAg0BgedAAAAHzF1IORAQAALgVBBwAAWBZBBwAAWBZBB0AVw4YNU4sWLTRixAijSwGAS0LQAVDF5MmT9eKLLxpdBgBcMoIOgCoGDBigqKgoo8sAgEtG0AEsZu3atbrllluUkJAgm82m5cuXVzkmLy9PSUlJioiIUHp6ujZv3uz/QgHADwg6gMWUlpaqR48eysvLq/b5pUuXKjc3VzNnztS2bdvUo0cPDR48WIcPH/ZzpQDgewQdwGIyMzM1a9YsDRs2rNrn586dq/Hjx2vcuHFKTk7WwoUL1aRJEz3//PN+rhQAfI+gAwSRM2fOaOvWrcrIyPDsCwkJUUZGhjZu3GhgZQDgGwQdIIgcPXpU5eXliouL89ofFxenwsJCz+OMjAyNHDlS7777rtq2bUsIAhCwDL97OQDz+fe//210CQDQIGjRAYJIbGysQkNDVVRU5LW/qKhI8fHxBlUFAL5D0AGCSFhYmHr37q38/HzPPofDofz8fPXt29fAygDAN+i6AiympKREu3fv9jwuKCjQ9u3b1bJlS7Vr1065ubnKzs5Wamqq0tLSNG/ePJWWlmrcuHEGVg0AvmFzOp1Oo4sA0HDWrFmjgQMHVtmfnZ2txYsXS5Lmz5+vP/3pTyosLFRKSoqefPJJpaen+7lSAPA9gg4AALAsxugAAADLIugAAADLIugAAADLIugAAADLIugAAADLIugAAADLIugAAADLCuqVkR0Ohw4dOqSoqCjZbDajywEAAHXgdDp18uRJJSQkKCTkwm02QR10Dh06pMTERKPLAAAAF+HAgQNq27btBY8J6qATFRUlyfVGRUdHG1wNAACoC7vdrsTERM91/EKCOui4u6uio6MJOgAABJi6DDthMDIAALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAs0wad8vJyPfDAA+rQoYMiIyPVsWNH/f73v5fT6fQc43Q69eCDD6pNmzaKjIxURkaGdu3aZWDVAADATEwbdObMmaMFCxZo/vz5+uqrrzRnzhw99thjeuqppzzHPPbYY3ryySe1cOFCbdq0SU2bNtXgwYN1+vRpAysHAABmYXNWbCIxkZ/+9KeKi4vTc88959k3fPhwRUZG6h//+IecTqcSEhJ07733aurUqZKk4uJixcXFafHixfrZz35W62vY7XbFxMSouLhY0dHRPvtZAABAw6nP9du0LTr9+vVTfn6+vvnmG0nSjh07tG7dOmVmZkqSCgoKVFhYqIyMDM/3xMTEKD09XRs3bqz2nGVlZbLb7V4bAACwrkZGF1CT6dOny263q0uXLgoNDVV5ebkeffRRjR49WpJUWFgoSYqLi/P6vri4OM9zlc2ePVsPP/ywbwsHAACmYdoWnVdffVUvvfSSlixZom3btumFF17Qn//8Z73wwgsXfc4ZM2aouLjYsx04cKABKw4+NpvNsy1evNiQGgYMGOCpYezYsdUec+LECc2ZM0cjR45UUlKSV901fQ8AwBpM26Izbdo0TZ8+3TPWpnv37tq3b59mz56t7OxsxcfHS5KKiorUpk0bz/cVFRUpJSWl2nOGh4crPDzc57XDXPbu3avp06cbXQYAwACmbdE5deqUQkK8ywsNDZXD4ZAkdejQQfHx8crPz/c8b7fbtWnTJvXt29evtcL8IiIilJaWprvvvlstWrQwuhwAgJ+YNujccsstevTRR7VixQrt3btXb7zxhubOnathw4ZJcnWbTJkyRbNmzdJbb72lzz77TGPGjFFCQoKGDh1qbPEW5+4uqmjcuHGe7qCkpCTP/qKiIt13331KSUlRVFSUIiIi1KlTJ+Xk5Gj//v1Vzl1aWqpHHnlEvXr1UlRUlBo3bqzWrVsrJSVF48eP18qVKyVJDz30kGw2mz788EPP977wwgte3VJ79+6VJHXr1k0nT57Upk2blJeXxww7AAgipu26euqpp/TAAw/o7rvv1uHDh5WQkKD/9//+nx588EHPMb/5zW9UWlqqX/3qVzpx4oT69++vlStXKiIiwsDK4bZx40YNGTJER48e9dr/7bff6umnn9ZLL72kt99+W9dff73nuZ/+9Kdas2aN1/FHjhzRkSNHtGPHDp08eVI33nhjvepo3LjxRf8MAIDAZtqgExUVpXnz5mnevHk1HmOz2fTII4/okUce8V9h0K9//Wv99Kc/1bRp0zz7br/9dqWmpkpyTfO32+0aOnSoJ+S0b99et99+uyIjI/X666/riy++UHFxsYYPH65du3YpJiZGX331lSfkhISEaMyYMbrqqqt09OhRFRQUeAWgQYMGqVmzZlqwYIH27NkjSUpNTdXtt9/uOaZly5Y+ficAAGZn2qAD83KHiYpB58Ybb/SawfTkk0/q8OHDkqQWLVpo27ZtnuAxbdo0dejQwdNS88ILL2jSpEleK1p37txZzz//vFcXWXl5uf773/9Kcq2z1K9fP73zzjueoNOtWzfP4pEAAEgEHfjI+vXrPV8fP35crVq1qvHYDRs2aNKkSeratatatWql77//Xl999ZU6deqknj176qqrrtI111yjjIwMtW/f3h/lAwAsgqADnzh27Fidjz1y5Igk18yoV199VePGjdP+/fu1Z88eT2uNJIWFhWn27NnKzc1t8HoBANZE0IFPVBwf06ZNmwuGk8TERM/XP/7xj1VQUKBt27Zp+/bt2r17tzZs2KCPPvpIZ86c0bRp0zRkyBB16tTJp/UDAKyBoIOL1qhRI507d06Sa92jivr166dXX31VkqvFZtCgQbrmmmu8jnE6ncrPz1fHjh0lSadPn1ZBQYG6du2q1NRUz+Bmp9OpFi1aqLi4WA6HQzt27PAEnYozqirXAAAAQQcX7fLLL9e+ffskSY8//ri+//57RUZGqmfPnho7dqxmzZqlo0eP6ty5c7ruuus0cuRIderUSWVlZdq5c6fWrFmjoqIirV69Wh06dNCJEyeUnJysbt26KS0tTQkJCYqMjNS6detUXFzsed3mzZt71eC2YsUKTZ8+XbGxsYqNjfUMjj5+/LgeffRRz3HHjx/3fP3JJ594BjC3bNlS9913ny/eKgCAQWxOp9NpdBFGqc9t3lFVbm6u/vKXv1TZn5OTo/nz52vDhg269dZbq6yjU9nq1as1YMAAFRYWet3OozppaWlav369GjVyZfS33npLt956a5XjunXrps8//1yS6xYQHTp0qPXnad++vWeRQQCAedXn+m3alZFhfo8++qgmT56stm3bKjQ0tMrz/fr10xdffKEHHnhAvXv3VnR0tEJDQ9W8eXP17t1bEyZM0KpVq3TDDTdIck1Dnz9/vu644w4lJyerZcuWCg0NVXR0tFJTU/X73/9e+fn5npAjSUOGDNH8+fPVtWtXhYWF+e1nBwAEBlp0aNEBACCg0KIDAAAggg4AALAwgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsgg4AALAsUwedgwcP6uc//7latWqlyMhIde/eXZ988onneafTqQcffFBt2rRRZGSkMjIytGvXLgMrBgAAZmLaoHP8+HFdd911aty4sf71r3/pyy+/1OOPP64WLVp4jnnsscf05JNPauHChdq0aZOaNm2qwYMH6/Tp0wZWDgAAzMLmdDqdRhdRnenTp2v9+vX66KOPqn3e6XQqISFB9957r6ZOnSpJKi4uVlxcnBYvXqyf/exntb6G3W5XTEyMiouLFR0d3aD1AwAA36jP9du0LTpvvfWWUlNTNXLk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1rFjxyRJBw4cUFZWlm655RZt375dd911l6ZPn15rrR999JFSU1O99o0ePVpt27bVli1btHXrVk2fPl2NGzf2PN+uXTvFxcXpo48+uqj3B0DDaWR0AQCCh9PpVH5+vt577z1NnDhR+/fv16JFi7R//34lJCRIkqZOnaqVK1dq0aJF+sMf/iBJOnv2rJ5++mn16NGj2vOWlpZqwYIFWrx4sTIzMyVJzz77rFatWqXnnntO06ZN04IFC9SxY0c9/vjjkqTOnTvrs88+05w5cy5Y8759+zy1ue3fv1/Tpk1Tly5dJElXXnllle9LSEjQvn376vHuAPAFgg4An3vnnXfUrFkznT17Vg6HQ6NGjdJDDz2kNWvWqLy8XFdddZXX8WVlZWrVqpXncVhYmK655poaz//tt9/q7Nmzuu666zz7GjdurLS0NH311VeSpK+++krp6ele39e3b99aa//hhx+8uq0kKTc3V3fddZf+/ve/KyMjQyNHjlTHjh29jomMjNSpU6dqPT8A3yLoAPC5gQMHasGCBQoLC1NCQoIaNXJ99JSUlCg0NFRbt26tMqOpWbNmnq8jIyNls9n8WrNbbGysjh8/7rXvoYce0qhRo7RixQr961//0syZM/XKK69o2LBhnmOOHTumyy67zN/lAqiEMToAfK5p06bq1KmT2rVr5wk5ktSzZ0+Vl5fr8OHD6tSpk9cWHx9f5/N37NhRYWFhWr9+vWff2bNntWXLFiUnJ0uSunbtqs2bN3t938cff1zruXv27Kkvv/yyyv6rrrpK99xzj95//31lZWVp0aJFnudOnz6tb7/9Vj179qzzzwDANwg6AAxz1VVXafTo0RozZoyWLVumgoICbd68WbNnz9aKFSvqfJ6mTZvq17/+taZNm6aVK1fqyy+/1Pjx43Xq1CndeeedkqT//d//1a5duzRt2jTt3LlTS5YsqdM6PIMHD9a6des8j3/44QdNmDBBa9as0b59+7R+/Xpt2bJFXbt29Rzz8ccfKzw8vE5dYwB8i6ADwFCLFi3SmDFjdO+996pz584aOnSotmzZonbt2tXrPH/84x81fPhw/eIXv1CvXr20e/duvffee2rRooUk10yof/7zn1q+fLl69OihhQsXegY7X8jo0aP1xRdfaOfOnZKk0NBQff/99xozZoyuuuoq3XbbbcrMzNTDDz/s+Z6XX35Zo0ePVpMmTer1MwBoeDan0+k0uggAMLNp06bJbrfrmWeeqfXYo0ePqnPnzvrkk0/UoUMHP1QH4EJo0QGAWtx///1q3759ne5ftXfvXj399NOEHMAkaNEBAACWRYsOAACwLIIOAACwLIIOAACwLIIOAACwLIIOAACwLIIOAACwLIIOAACwLIIOAACwLIIOAACwrP8PRAGvqF2525oAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:57:31 | INFO | line:124 |aurora.pipelines.transfer_function_kernel | update_dataset_df | DECIMATION LEVEL 1\u001b[0m\n", + "\u001b[1m24:11:08T16:57:31 | INFO | line:143 |aurora.pipelines.transfer_function_kernel | update_dataset_df | Dataset Dataframe Updated for decimation level 1 Successfully\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 102.915872s (0.009717Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 85.631182s (0.011678Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 68.881694s (0.014518Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 54.195827s (0.018452Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 43.003958s (0.023254Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:32 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 33.310722s (0.030020Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:32 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:57:33 | INFO | line:124 |aurora.pipelines.transfer_function_kernel | update_dataset_df | DECIMATION LEVEL 2\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:143 |aurora.pipelines.transfer_function_kernel | update_dataset_df | Dataset Dataframe Updated for decimation level 2 Successfully\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 411.663489s (0.002429Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 342.524727s (0.002919Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 275.526776s (0.003629Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 216.783308s (0.004613Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 172.015831s (0.005813Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:33 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 133.242890s (0.007505Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:33 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "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0apVdafr6NGjkZmZiW7dusHDw8Mhr52IiKQjq32OHMV6ztHx48eh0+ncZkJszTk8LfA/LxERuTnLtBipvr+d3nPkDGlpaThy5Aj27t3r7FCIiIhIZlpkckRERERUH1mvViPpFRUV4f7772+w3iOPPILFixc7ICIiIiLnapHJkTvvc5SamiouH2+M69ev49ixYw3WKy4uvo2oiIiIXEeLnJBtIfWELiIiIrI/TsgmIiIiciAmR0RERERWmBwRERERWWmRyVFWVhaio6ORkJDg7FCIiIhIZjghmxOyiYiIXAonZBMRERE5EJMjIiIiIitMjoiIiIisMDkiIiIistIikyOuViMiIqL6cLUaV6sRERG5FK5WIyIiInIgJkdEREREVpgcEREREVlhckRERERkhckRERERkZUWmRxxKT8RERHVh0v5uZSfiIjIpXApPxEREZEDMTkiIiIissLkiIiIiMgKkyMiIiIiK62cHQAREUnMZALKymzLfHwAhaLhMqIWiMkREZE7M5kAlapxdSsqALVa2niIXACH1YiIiIistMieo6ysLGRlZcFoNDo7FCIiaSmVgNFYPaxmMACdOpl/1mpte4p8fBwfH5EMcRNIbgJJRC2JwQD4+pp/5jAauShuAklERETkQEyOiIiIiKy0yDlHRE5Xc2k1l1UTEckGkyMiR2vs0mrOByEicgoOqxERERFZYc8RkaNZL63msmoiItlhzxGRMyiVQHCw+bBQq20PzjciKVjv75aXZ3tORACYHBERtRw5OUB0dPX5yJFAZKS5nIhETI6IiFqCnBwgJQUoKrItLyoylzNBIhIxOSIicndGIzBzJlDXAxEsZbNmcYiN6CYmR0RE7m77duDcufqvCwJQWGiuR0QtMznKyspCdHQ0EhISnB0KEZH0iovtW4/IzbXI5CgtLQ1HjhzB3r17nR0KEZH0QkPtW4/IzbXI5IiIqEUZMAAID69/ewiFAoiIMNcjIiZHRERuT6UCli0z/1wzQbKcZ2Q07rE2RC0AkyMiopYgORlYvx4IC7MtDw83lycnOycuIhni40OIyPWYTObHr1jz8andK1JXWUuWnAwkJQEBAebzb74Bhg5ljxFRDUyOiMi1mEyN/zKvqLB9Xh3ZvncDBzIxIqoDkyMiqh97aIioBWJyRER1k2sPjVJp3snZkrQZDECnTuaftVrbOHx8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/HixTtu2bSV+J8jdKZVAcLD5Z4Ohulyttk2OiIiaQ7bJETWdJQGxTo6GDx9us/Lr3XffRWlpKQCgTZs22L9/v5iszJkzBx07dhR7hFavXo0ZM2bY7DjetWtX/Pvf/7YZvjMajTh37hwA8/5U99xzD7766isxOerevbu4UScREZHcMTlqYXbs2CH+fPnyZbRr167eujt37sSMGTPQrVs3tGvXDhcvXsTRo0cRFRWF3r17o0uXLujVqxeSkpLQoUMHR4RPREQkOSZHLcylS5caXffChQsAzCvKPvvsM0yePBlnz57FqVOnxF4hAPDw8MDixYuRnp5u93iJiIgcjclRC2M93yc0NPSWCU1ERIT485AhQ1BQUID9+/fjwIED+O2337Bz505s374d165dw5w5czB69GhERUVJGj8REZHUmBy5oVatWuHGjRsAzPtFWbvnnnvw2WefATD3DA0dOhS9evWyqSMIAnJzc9G5c2cAwNWrV1FQUIBu3bohPj5enOAtCALatGkDnU4Hk8mEgwcPismR9Uq0mjEQERHJGZMjN3TnnXfizJkzAIC3334bFy9ehLe3N3r37o3U1FS8/vrrKCsrw40bN9C/f3+MGzcOUVFRqKqqwrFjx7B161ZotVps2bIFHTt2RHl5OaKjo9G9e3f07dsXYWFh8Pb2xg8//ACdTifeNzAw0CYGi6+//hpz585FUFAQgoKCxAnily9fxhtvvCHWu3z5svjzvn37xEncbdu2xUsvvSTFW0VERFSLQhAEwdlBOIter0dAQAB0Op1bbUCYnp6Od955p1Z5WloaMjMzsXPnTjz88MO19jmqacuWLRg0aBBKSkpsHtFSl759+2LHjh1o1cqcb3/xxRd4+OGHa9Xr3r07fvnlFwDmx4d07NixwdfToUMHceNIopoMBvNu2ABQUcGl/EQtgdTf37LdIZua74033sDMmTMRHh4OlUpV6/o999yDw4cP45VXXkFcXBz8/f2hUqkQGBiIuLg4TJs2DZs3b8bAgQMBmJf8Z2Zm4vHHH0d0dDTatm0LlUoFf39/xMfH47XXXkNubq6YGAHA6NGjkZmZiW7dusHDw8Nhr52IiOh2sefIDXuOiFoS9hwRtTzsOSIiIiJyICZHRERERFaYHBERERFZYXJEREREZIXJEREREZEVJkdEREREVpgcEREREVlhckRERERk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q1bmj56KigqoVCrk5+fXWgnm6+sr/uzt7Q2FQuHQmC2CgoJw+fJlm7KFCxfiiSeewNdff41vv/0WCxYswKeffopHHnlErHPp0iXccccdjg6XiOyAc46ISHJqtRpRUVFo3769mBgBQO/evWE0GlFaWoqoqCibIyQkpNHtd+7cGR4eHtixY4dYdv36dezduxfR0dEAgG7dumHPnj02v/fjjz822Hbv3r1x5MiRWuVdunTB888/j++//x7JyclYtWqVeO3q1as4efIkevfu3ejXQETyweSIiJymS5cumDBhAiZOnIicnBwUFBRgz549WLx4Mb7++utGt6NWq/Hcc89hzpw52LRpE44cOYIpU6agsrISTz31FADg2WefxYkTJzBnzhwcO3YMn3zySaP2SRo2bBh++OEH8fz333/HtGnTsHXrVpw5cwY7duzA3r170a1bN7HOjz/+CE9Pz0YN2xGR/DA5IiKnWrVqFSZOnIgXXngBXbt2xZgxY7B37160b9++Se387W9/w9ixY/Hkk0+iT58++O233/Ddd9+hTZs2AMwryD7//HNs3LgRMTExWLFihTjh+1YmTJiAw4cP49ixYwAAlUqFixcvYuLEiejSpQseffRRjBgxAq+++qr4O2vWrMGECRPg4+PTpNdARPKgEARBcHYQRERyNmfOHOj1erz//vsN1i0rK0PXrl2xb98+dOzY0QHREZG9seeIiKgBf/nLX9ChQ4dGPS/t9OnTeO+995gYEbkw9hwRERERWWHPEREREZEVJkdEREREVpgcEREREVlhckRERERkhckRERERkRUmR0RERERWmBwRERERWWFyRERERGSFyRERERGRlf8PStr08Py3vfoAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m24:11:08T16:57:34 | INFO | line:124 |aurora.pipelines.transfer_function_kernel | update_dataset_df | DECIMATION LEVEL 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:143 |aurora.pipelines.transfer_function_kernel | update_dataset_df | Dataset Dataframe Updated for decimation level 3 Successfully\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:354 |aurora.pipelines.process_mth5 | save_fourier_coefficients | Skip saving FCs. dec_level_config.save_fc = False\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 1514.701336s (0.000660Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:34 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 1042.488956s (0.000959Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:34 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 723.371271s (0.001382Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:34 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:34 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 532.971560s (0.001876Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:34 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n", + "\u001b[1m24:11:08T16:57:35 | INFO | line:35 |aurora.time_series.frequency_band_helpers | get_band_for_tf_estimate | Processing band 412.837995s (0.002422Hz)\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:35 | ERROR | line:208 |aurora.transfer_function.weights.edf_weights | effective_degrees_of_freedom_weights | edfwts only works for 2 input channels, not 3\u001b[0m\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAG8CAYAAADXSQ+YAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABJ6ElEQVR4nO3deXxU1f3/8fckQDaSsEQmxARCpSBrAgQoohY0ZVHZAhQr3y9LFasGBFNpwaooxVJs1WCJYG0F7VcUxUhdUX+pEQRkLbigyBIgApmAkoQMEnBmfn+MmWRIIAnOZGbuvJ6Pxzwec8+9ufOZgSTvnHvOuSaHw+EQAACAAYX4ugAAAABvIegAAADDIugAAADDIugAAADDIugAAADDIugAAADDIugAAADDIugAAADDIugAAADDIuggIJlMJtdjxYoVPqtj0KBBrjqmTJlS6zElJSVatGiRxo8fr+TkZLfaL/Q1AADPaOLrAgCjO3jwoObMmePrMgAgKNGjAzSC8PBw9evXT3fddZdatmzp63IAIGgQdAzq/fff17hx49SuXTuFhYUpKipKP/vZz7R8+XJd6n1c8/Pzdeutt6p3795q27atwsLCFBkZqY4dO2rq1Kn69NNPG3S+FStWuF3GOXjwYJ1fU3mpqLqpU6e6zpGcnOy2z2Kx6L777lNqaqqio6MVHh6ujh07KjMzU4cPH65xfqvVqvnz56t3796Kjo5W06ZN1aZNG6WmpmratGlau3atJOmhhx6SyWTShx9+6Pra5557rtb3061bN506dUqbN29WTk6OYmJiGvQ5AQAuHZeuDMZms+nuu+/WU0895dZ+9uxZbd68WZs3b9a7776rF198sUZgqMubb76pZ599tkb7/v37tX//fq1cuVJvvfWW0tPTf9R78JRNmzZp5MiROnHihFv7/v379dRTT+mFF17QG2+8oWuuuca176abblJ+fr7b8cePH9fx48e1a9cunTp1SsOGDWtQHU2bNr3k9wAA+HEIOgbz0EMPuUKOyWTSxIkT1b59e7366qv68ssvJUmrVq3S4MGD9Zvf/KZB546KitLPf/5z9ejRQ61atVJERIS++eYbvfXWW/riiy909uxZ3X333dq9e7fH31elO++8UzfddJNmz57tapswYYLS0tIkSbGxsZKksrIyjR492hVy2rdvrwkTJigiIkKrV6/W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ERGhK664Qn/84x/lcDhcxzgcDj344INq27atIiIilJ6err179/qwagAA4E/8NugsWrRIS5cu1ZIlS/TFF19o0aJFevTRR/W3v/3Ndcyjjz6qJ598UsuWLdPmzZsVFRWloUOH6syZMz6sHAAA+Ismvi7gQjZu3KhRo0bpxhtvlCQlJyfrxRdf1JYtWyQ5e3Oys7N1//33a9SoUZKk559/XmazWWvWrNHNN9/ss9oBAIB/8Nsenauuukp5eXn66quvJEm7du3SRx99pOHDh0uSCgoKVFRUpPT0dNfXxMbGqn///tq0aVOt56yoqFBZWZnbAwAAGJff9ujMmTNHZWVluvLKKxUaGiqbzaZHHnlEEydOlCQVFRVJksxms9vXmc1m177zLVy4UA8//LB3CwcAAH7Db3t0Xn75Zb3wwgtauXKlduzYoeeee05//etf9dxzz13yOefOnavS0lLXo7Cw0IMV+weTyeR6rFixwic1DBo0yFXDlClTaj2mpKREixYt0vjx45WcnOxW94W+BgCAhvLbHp3Zs2drzpw5rrE2PXr00KFDh7Rw4UJNnjxZ8fHxkiSLxaK2bdu6vs5isSg1NbXWc4aFhSksLMzrtaNuBw8e1Jw5c3xdBgDA4Py2R+f06dMKCXEvLzQ0VHa7XZLUoUMHxcfHKy8vz7W/rKxMmzdv1oABAxq1Vlya8PBw9evXT3fddZdatmzp63IAAAbkt0FnxIgReuSRR/TWW2/p4MGDeu211/T4449rzJgxkpyXaGbNmqUFCxbo9ddf16effqpJkyYpISFBo0eP9m3xPlB5uai6qVOnui4HJScnu9otFovuu+8+paamKjo6WuHh4erYsaMyMzN1+PDhGue2Wq2aP3++evfurejoaDVt2lRt2rRRamqqpk2bprVr10qSHnroIZlMJn344Yeur33uuefcLksdPHhQktStWzedOnVKmzdvVk5OjmJiYjz/oQAAgp7fXrr629/+pgceeEB33XWXiouLlZCQoN/85jd68MEHXcf87ne/k9Vq1e23366SkhJdffXVWrt2rcLDw31YuX/btGmTRo4cqRMnTri179+/X0899ZReeOEFvfHGG7rmmmtc+2666Sbl5+e7HX/8+HEdP35cu3bt0qlTpzRs2LAG1dG0adNLfg8AANSX3wad6OhoZWdnKzs7+4LHmEwmzZ8/X/Pnz2+8wvzUnXfeqZtuukmzZ892tU2YMEFpaWmSnFPvy8rKNHr0aFfIad++vSZMmKCIiAitXr1an3/+uUpLSzV27Fjt3btXsbGx+uKLL1whJyQkRJMmTVKnTp104sQJFRQUuAWgIUOGqHnz5lq6dKkOHDggSUpLS9OECRNcx7Rq1crLnwQAAFX8NuigYSrDRPWgM2zYMLcZTE8++aSKi4slSS1bttSOHTtcwWP27Nnq0KGDq6fmueee09133+22ynTnzp317LPPul0is9ls+vrrryU51z666qqr9Oabb7qCTrdu3XTvvfd6500DAFAHgk4Q2bBhg+v5yZMn1bp16wseu3HjRt19993q0qWLWrdurW+++UZffPGFOnbsqF69eqlTp07q2bOn0tPT1b59+8YoHwCABiPoBJFvv/223sceP35cknNm1Msvv6ypU6fq8OHDOnDggKu3RpKaNWumhQsXKisry+P1AgDwYxF0gkj18TFt27a9aDhJSkpyPb/uuutUUFCgHTt2aOfOndq3b582btyo9evX6+zZs5o9e7ZGjhypjh07erV+AAAaiqBjME2aNNH3338vybkWUXVXXXWVXn75ZUnOHpshQ4aoZ8+ebsc4HA7l5eXpiiuukCSdOXNGBQUF6tKli9LS0lyDmx0Oh1q2bKnS0lLZ7Xbt2rXLFXSqz6g6vwYAABoTQcdgLr/8ch06dEiS9Nhjj+mbb75RRESEevXqpSlTpmjBggU6ceKEvv/+ew0cOFDjx49Xx44dVVFRoT179ig/P18Wi0UffPCBOnTooJKSEnXt2lXdunVTv379lJCQoIiICH300UcqLS11vW6LFi3caqj01ltvac6cOYqLi1NcXJxrcPTJkyf1yCOPuI47efKk6/m2bdtcA5hbtWql++67zxsfFQAgCJgcDofD10X4SllZmWJjY1VaWmqYBeuysrL0xBNP1GjPzMzUkiVLtHHjRo0aNarGOjrn++CDDzRo0CAVFRW53WKjNv369dOGDRvUpIkzN7/++usaNWpUjeO6deumzz77TJLzFhAdOnSo8/20b9/etcigUViLrYoyN3c+t5Qrqk2UjytyZ7dL1f97REZK561FWWsb4GtWq9Tc+a2l8nIpyr++teBBDfn9TY+OwTzyyCOy2+169dVXdezYMdlsNrf9V111lT7//HMtWbJEb7/9tvbu3Sur1aro6GhdccUVGjBggEaNGqVrr71WknMa+pIlS7Rhwwbt2rVLRUVFKi0tVVRUlDp16qRRo0Zp1qxZrpAjSSNHjtSSJUuUk5Oj/fv36+zZs436GeDS2e1SaGjdx/FLBECgoEfHYD068H9lx6yKSXD+2flebrmuHxlVr3DRGAg6CGT06ASPhvz+9tt7XQFGlJsr9elTtT0mQ0pOdrb7g5AQyWaTLBap2ioCslicvzgqH5GRvqsRABqCoAM0ktxcadw46egx9/YjR5zt/hR22rRxPipFRbk/GJ8DIFAQdIBGYLNJM2dKtV0ormybNct5HADAcwg6QCNYv1764ZZgtXI4pMJC53EAAM8h6ACN4Nixuo9pyHEAgPoh6ACNoI6liBp8HACgfgg6QCO45hopMfHCg3hNJikpyXkcAMBzCDpAIwgNlRYvdj4/P+tUhp/s7PqtYeN1drtUXCwVF+syFStK5c4FSqo/gnf5LQABhqADNJKMDGn16pqXpxITne0ZGb6py03lioFms6J+YlaxzCpXtPOWFc2rPbhZK4AAwS0ggEaUkSGlD5CU4Nx+LVe6fqSf9OQAgAHRowM0suqhZuBAPws51ZZGPv1Z1dLI1gMsjQwgMNGjA8DdD0sjO2StaqtcEhkAAgw9OgAAwLAIOgAAwLAIOgAAwLAIOgAAwLAIOgAAwLD8OugcOXJE//M//6PWrVsrIiJCPXr00LZt21z7HQ6HHnzwQbVt21YRERFKT0/X3r17fVgxAADwJ34bdE6ePKmBAweqadOmeuedd7R792499thjatmypeuYRx99VE8++aSWLVumzZs3KyoqSkOHDtWZM2d8WDkAAPAXfruOzqJFi5SUlKTly5e72jp06OB67nA4lJ2drfvvv1+jRo2SJD3//PMym81as2aNbr755kavGQAA+Be/7dF5/fXXlZaWpvHjx6tNmzbq1auXnnnmGdf+goICFRUVKT093dUWGxur/v37a9OmTbWes6KiQmVlZW4PAABgXH4bdA4cOKClS5fqpz/9qd59913deeeduvvuu/Xcc89JkoqKiiRJZrPZ7evMZrNr3/kWLlyo2NhY1yMpKcm7bwIAAPiU3wYdu92u3r17609/+pN69eql22+/XdOmTdOyZcsu+Zxz585VaWmp61FYWOjBigEAgL9ptKBTUlLSoOPbtm2rrl27urV16dJFhw8fliTFx8dLkiwWi9sxFovFte98YWFhiomJcXsAAADj8krQWbRokVatWuXa/uUvf6nWrVvr8ssv165du+p1joEDB2rPnj1ubV999ZXat28vyTkwOT4+Xnl5ea79ZWVl2rx5swYMGOCBdwEAAAKdV4LOsmXLXONf3n//fb3//vt65513NHz4cM2ePbte57jnnnv08ccf609/+pP27dunlStX6u9//7syMzMlSSaTSbNmzdKCBQv0+uuv69NPP9WkSZOUkJCg0aNHe+NtAQCAAOOV6eVFRUWuoPPmm2/ql7/8pYYMGaLk5GT179+/Xufo27evXnvtNc2dO1fz589Xhw4dlJ2drYkTJ7qO+d3vfier1arbb79dJSUluvrqq7V27VqFh4d7420BAIAA45Wg07JlSxUWFiopKUlr167VggULJDnXvrHZbPU+z0033aSbbrrpgvtNJpPmz5+v+fPn/+iaAQCA8Xgl6GRkZOiWW27RT3/6U33zzTcaPny4JOm///2vOnbs6I2XBAAAqMErQeeJJ55QcnKyCgsL9eijj6p58+aSpGPHjumuu+7yxksCAADU4JWg07RpU91777012u+55x5vvBwAAECtvLaOzr/+9S9dffXVSkhI0KFDhyRJ2dnZ+ve//+2tlwQAAHDjlaCzdOlSZWVlafjw4SopKXENQG7RooWys7O98ZIAAAA1eCXo/O1vf9MzzzyjP/zhDwoNDXW1p6Wl6dNPP/XGSwIAANTglaBTUFCgXr161WgPCwuT1Wr1xksCAADU4JWg06FDB+3cubNG+9q1a9WlSxdvvCQAAEANXpl1lZWVpczMTJ05c0YOh0NbtmzRiy++qIULF+of//iHN14SAACgBq8Endtuu00RERG6//77dfr0ad1yyy1KSEjQ4sWLdfPNN3vjJQEAAGrwStCRpIkTJ2rixIk6ffq0ysvL1aZNG2+9FAAAQK28FnS+//575efna//+/brlllskSUePHlVMTIxrpWQAgOfY7dKJE+5tkZGSyXThbcDovBJ0Dh06pGHDhunw4cOqqKjQL37xC0VHR2vRokWqqKjQsmXLvPGyABC07Hap2moeF1ReLkVFeb8ewF94ZdbVzJkzlZaWppMnTyoiIsLVPmbMGOXl5XnjJQEAAGrwSo/O+vXrtXHjRjVr1sytPTk5WUeOHPHGSwJAUAsJkWy2qktXVqv0k584n1ssVb04kZG+qQ/wFa8EHbvd7rrtQ3Vff/21oqOjvfGSABD0QmRXGzmTjlXSZZJOK1JRMqnqalWkJAbpIHh45dLVkCFD3O5pZTKZVF5ernnz5umGG27wxksCQHCrHKRjNktms6J+YlaxzCpXtKLMzaXmPzxOn/Z1pUCj8kqPzl//+lcNGzZMXbt21ZkzZ3TLLbdo7969iouL04svvuiNlwQAAKjBK0EnKSlJu3bt0qpVq7Rr1y6Vl5fr1ltv1cSJE90GJwMAPOS8QTqnj1sV2d05SMd6wKKoNgzSQXDyeNA5d+6crrzySr355puuRQMBAI0gJET6YXFWh6rdQDkqijnlCFoeH6PTtGlTnTlzxtOnBQAAaDCvDEbOzMzUokWL9P3333vj9AAAAPXilTE6W7duVV5ent577z316NFDUed1mebm5nrjZQEAANx4Jei0aNFCY8eO9capAQAA6s0rQWf58uXeOC0AAECDeGWMDgAAgD/wStDp1auXevfuXePRp08fDRw4UJMnT9YHH3zQoHP++c9/lslk0qxZs1xtZ86cUWZmplq3bq3mzZtr7NixslgsHn43AAAgUHkl6AwbNkwHDhxQVFSUBg8erMGDB6t58+bav3+/+vbtq2PHjik9PV3//ve/63W+rVu36umnn1bPnj3d2u+55x698cYbeuWVV/Thhx/q6NGjysjI8MZbAgAAAcgrY3ROnDih3/72t3rggQfc2hcsWKBDhw7pvffe07x58/THP/5Ro0aNuui5ysvLNXHiRD3zzDNasGCBq720tFT//Oc/tXLlSl133XWSnGODunTpoo8//lg/+9nPPP/GAABAQPFKj87LL7+sX/3qVzXab775Zr388suSpF/96lfas2dPnefKzMzUjTfeqPT0dLf27du369y5c27tV155pdq1a6dNmzbVeq6KigqVlZW5PQAAgHF5JeiEh4dr48aNNdo3btyo8PBwSZLdbnc9v5CXXnpJO3bs0MKFC2vsKyoqUrNmzdSiRQu3drPZrKKiolrPt3DhQsXGxroeSUlJ9XxHAAAgEHnl0tWMGTN0xx13aPv27erbt68k5zibf/zjH7rvvvskSe+++65SU1MveI7CwkLNnDlT77//fp2BqL7mzp2rrKws13ZZWRlhBwAAA/NK0Ln//vvVoUMHLVmyRP/6178kSZ07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oUP17bffSpIKCwuVkZGhESNGaOfOnbrttts0Z86cOmtdv3690tLS3NomTpyoxMREbd26Vdu3b9ecOXPUtGlT1/527drJbDZr/fr1l/T5APCcJr4uAEDwcDgcysvL07vvvqsZM2bo8OHDWr58uQ4fPqyEhARJ0r333qu1a9dq+fLl+tOf/iRJOnfunJ566imlpKTUel6r1aqlS5dqxYoVGj58uCTpmWee0fvvv69//vOfmj17tpYuXaorrrhCjz32mCSpc+fO+vTTT7Vo0aKL1nzo0CFXbZUOHz6s2bNn68orr5Qk/fSnP63xdQkJCTp06FADPh0A3kDQAeB1b775ppo3b65z587Jbrfrlltu0UMPPaT8/HzZbDZ16tTJ7fiKigq1bt3atd2sWTP17Nnzguffv3+/zp07p4EDB7ramjZtqn79+umLL76QJH3xxRfq37+/29cNGDCgztq/++47t8tWkpSVlaXbbrtN//rXv5Senq7x48friiuucDsmIiJCp0+frvP8ALyLoAPA6wYPHqylS5eqWbNmSkhIUJMmzh895eXlCg0N1fbt22vMaGrevLnreUREhEwmU6PWXCkuLk4nT550a3vooYd0yy236K233tI777yjefPm6aWXXtKYMWNcx3z77be67LLLGrtcAOdhjA4Ar4uKilLHjh3Vrl07V8iRpF69eslms6m4uFgdO3Z0e8THx9f7/FdccYWaNWumDRs2uNrOnTunrVu3qmvXrpKkLl26aMuWLW5f9/HHH9d57l69emn37t012jt16qR77rlH7733njIyMrR8+XLXvjNnzmj//v3q1atXvd8DAO8g6ADwmU6dOmnixImaNGmScnNzVVBQoC1btmjhwoV666236n2eqKgo3XnnnZo9e7bWrl2r3bt3a9q0aTp9+rRuvfVWSdIdd9yhvXv3avbs2dqzZ49WrlxZr3V4hg4dqo8++si1/d1332n69OnKz8/XoUOHtGHDBm3dulVdunRxHfPxxx8rLCysXpfGAHgXQQeATy1fvlyTJk3Sb3/7W3Xu3FmjR4/W1q1b1a5duwad589//rPGjh2r//3f/1Xv3r21b98+vfvuu2rZsqUk50yoV199VWvWrFFKSoqWLVvmGux8MRMnTtTnn3+uPXv2SJJCQ0P1zTffaNKkSerUqZN++ctfavjw4Xr44YddX/Piiy9q4sSJioyMbNB7AOB5JofD4fB1EQDgz2bPnq2ysjI9/fTTdR574sQJde7cWdu2bVOHDh0aoToAF0OPDgDU4Q9/+IPat29fr/tXHTx4UE899RQhB/AT9OgAAADDokcHAAAYFkEHAAAYFkEHAAAYFkEHAAAYFkEHAAAYFkEHAAAYFkEHAAAYFkEHAAAYFkEHAAAY1v8H/UH1pGkWu28AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[31m\u001b[1m24:11:08T16:57:35 | ERROR | line:753 |mt_metadata.transfer_functions.core | _validate_input_dataarray | Input dimensions must be ['hx', 'hy'] not ['hx', 'hy', 'hz']\u001b[0m\n", + "\u001b[31m\u001b[1m24:11:08T16:57:35 | ERROR | line:564 |aurora.pipelines.process_mth5 | process_mth5_legacy | TF collection could not export to mt_metadata TransferFunction\n", + "Failed with exception Input dimensions must be ['hx', 'hy'] not ['hx', 'hy', 'hz']\n", + "Perhaps an unconventional mixture of input/output channels was used\n", + "Input channels were ['hx', 'hy', 'hz']\n", + "Output channels were ['ex', 'ey']\n", + "No z-file will be written in this case\n", + "Will return a legacy TransferFunctionCollection object, not mt_metadata object.\u001b[0m\n", + "\u001b[1m24:11:08T16:57:35 | INFO | line:777 |mth5.mth5 | close_mth5 | Flushing and closing /home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\u001b[0m\n", + "\u001b[1m24:11:08T16:57:35 | INFO | line:777 |mth5.mth5 | close_mth5 | Flushing and closing /home/kkappler/software/irismt/mth5/mth5/data/mth5/test12rr.h5\u001b[0m\n" + ] + } + ], + "source": [ + "show_plot = True\n", + "tf_cls = process_mth5(config,\n", + " kernel_dataset,\n", + " units=\"MT\",\n", + " show_plot=show_plot,\n", + " z_file_path=None,\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tf_cls" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{0: ,\n", + " 1: ,\n", + " 2: ,\n", + " 3: }" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tf_cls.tf_dict" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray (output_channel: 2, input_channel: 3, period: 8)> Size: 768B\n",
+       "array([[[-6.50047813e+00+0.67270965j, -5.05831262e+00+0.86436402j,\n",
+       "         -4.79029167e+00-0.40900864j, -4.51776869e+00-0.1331047j ,\n",
+       "         -4.76448356e+00+0.06596776j, -3.82525248e+00+0.83356921j,\n",
+       "         -3.33351631e+00-0.5643264j , -2.92534247e+00+0.31513604j],\n",
+       "        [ 6.58607323e+00+0.69154152j,  5.62306254e+00+1.45145861j,\n",
+       "          6.16901740e+00+1.03519891j,  5.31793610e+00+0.70813855j,\n",
+       "          4.54053410e+00-0.16510518j,  3.25350955e+00+0.24720464j,\n",
+       "          4.13876508e+00+0.23045734j,  2.83092174e+00+0.24689349j],\n",
+       "        [ 2.61468389e+01-2.57329419j,  2.00738930e+01-3.46264119j,\n",
+       "          1.91822424e+01+1.5874806j ,  1.78901029e+01+0.51592058j,\n",
+       "          1.91509471e+01-0.18933851j,  1.52322064e+01-3.36528685j,\n",
+       "          1.33724730e+01+2.23514778j,  1.15174305e+01-1.19961239j]],\n",
+       "\n",
+       "       [[-7.00003806e+00-7.68739979j, -6.59320999e+00-7.18564681j,\n",
+       "         -5.78740590e+00-6.2762784j , -5.51149166e+00-5.70864411j,\n",
+       "         -4.85970841e+00-4.51874327j, -4.14921890e+00-3.80279919j,\n",
+       "         -3.63365775e+00-3.12042204j, -3.21045916e+00-3.13042092j],\n",
+       "        [ 4.37665053e-01+0.25921229j,  7.13706038e-01-0.12999767j,\n",
+       "          4.80202109e-01+0.02543948j,  5.51920596e-01-0.30952086j,\n",
+       "          3.29240322e-03-0.25366174j, -2.43418443e-01-0.02439256j,\n",
+       "         -4.19234687e-01-0.10973541j,  1.17437016e-01-0.07718187j],\n",
+       "        [-1.06799963e+00+1.64672456j,  4.52489364e-01+2.97932829j,\n",
+       "         -1.19649982e-01+1.8994398j ,  1.17208711e+00+2.14417171j,\n",
+       "          1.14034910e+00-0.04107789j,  5.05777754e-02-0.85829586j,\n",
+       "          3.47451928e-01-1.58980816j,  2.40956601e-01+0.19009813j]]])\n",
+       "Coordinates:\n",
+       "  * period          (period) float64 64B 4.682 5.856 7.363 ... 15.16 19.93 25.73\n",
+       "  * output_channel  (output_channel) <U2 16B 'ex' 'ey'\n",
+       "  * input_channel   (input_channel) <U2 24B 'hx' 'hy' 'hz'
" + ], + "text/plain": [ + " Size: 768B\n", + "array([[[-6.50047813e+00+0.67270965j, -5.05831262e+00+0.86436402j,\n", + " -4.79029167e+00-0.40900864j, -4.51776869e+00-0.1331047j ,\n", + " -4.76448356e+00+0.06596776j, -3.82525248e+00+0.83356921j,\n", + " -3.33351631e+00-0.5643264j , -2.92534247e+00+0.31513604j],\n", + " [ 6.58607323e+00+0.69154152j, 5.62306254e+00+1.45145861j,\n", + " 6.16901740e+00+1.03519891j, 5.31793610e+00+0.70813855j,\n", + " 4.54053410e+00-0.16510518j, 3.25350955e+00+0.24720464j,\n", + " 4.13876508e+00+0.23045734j, 2.83092174e+00+0.24689349j],\n", + " [ 2.61468389e+01-2.57329419j, 2.00738930e+01-3.46264119j,\n", + " 1.91822424e+01+1.5874806j , 1.78901029e+01+0.51592058j,\n", + " 1.91509471e+01-0.18933851j, 1.52322064e+01-3.36528685j,\n", + " 1.33724730e+01+2.23514778j, 1.15174305e+01-1.19961239j]],\n", + "\n", + " [[-7.00003806e+00-7.68739979j, -6.59320999e+00-7.18564681j,\n", + " -5.78740590e+00-6.2762784j , -5.51149166e+00-5.70864411j,\n", + " -4.85970841e+00-4.51874327j, -4.14921890e+00-3.80279919j,\n", + " -3.63365775e+00-3.12042204j, -3.21045916e+00-3.13042092j],\n", + " [ 4.37665053e-01+0.25921229j, 7.13706038e-01-0.12999767j,\n", + " 4.80202109e-01+0.02543948j, 5.51920596e-01-0.30952086j,\n", + " 3.29240322e-03-0.25366174j, -2.43418443e-01-0.02439256j,\n", + " -4.19234687e-01-0.10973541j, 1.17437016e-01-0.07718187j],\n", + " [-1.06799963e+00+1.64672456j, 4.52489364e-01+2.97932829j,\n", + " -1.19649982e-01+1.8994398j , 1.17208711e+00+2.14417171j,\n", + " 1.14034910e+00-0.04107789j, 5.05777754e-02-0.85829586j,\n", + " 3.47451928e-01-1.58980816j, 2.40956601e-01+0.19009813j]]])\n", + "Coordinates:\n", + " * period (period) float64 64B 4.682 5.856 7.363 ... 15.16 19.93 25.73\n", + " * output_channel (output_channel) \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray (output_channel: 2, input_channel: 3, period: 6)> Size: 576B\n",
+       "array([[[-2.38480857-1.01472239j, -1.57538712+0.77230618j,\n",
+       "         -2.35750955-0.14370738j, -1.71344768-0.04888822j,\n",
+       "         -1.01773846-0.25038317j, -1.24578516-0.04616615j],\n",
+       "        [ 3.67746694+0.29695182j,  1.61964884+0.85583868j,\n",
+       "          2.2933426 -0.19575574j,  1.89645413+0.2119012j ,\n",
+       "          1.88423303+0.69716899j,  1.59828432+0.32116744j],\n",
+       "        [ 9.60811479+3.87282861j,  6.27814411-3.111502j  ,\n",
+       "          9.30816779+0.80342085j,  6.84281266+0.0462613j ,\n",
+       "          4.04628365+0.78770492j,  4.76941096+0.26523587j]],\n",
+       "\n",
+       "       [[-3.10971873-3.59934745j, -2.48840166-2.28189879j,\n",
+       "         -2.34587643-2.40562029j, -1.81763105-1.75022216j,\n",
+       "         -1.53054872-1.45563145j, -1.64243294-1.30616842j],\n",
+       "        [ 0.80275312-0.39206741j, -0.09654607-0.08445139j,\n",
+       "          0.25522267-0.20834455j, -0.19373402+0.12148435j,\n",
+       "         -0.2398339 +0.22376425j, -0.20408235-0.14786198j],\n",
+       "        [ 1.59328274+3.34370256j,  0.43650178-0.37175267j,\n",
+       "          0.82138048+1.16094613j, -0.30163279-0.86991321j,\n",
+       "         -0.87503057-0.96168875j,  0.37123256-1.01070181j]]])\n",
+       "Coordinates:\n",
+       "  * period          (period) float64 48B 33.31 43.0 54.2 68.88 85.63 102.9\n",
+       "  * output_channel  (output_channel) <U2 16B 'ex' 'ey'\n",
+       "  * input_channel   (input_channel) <U2 24B 'hx' 'hy' 'hz'
" + ], + "text/plain": [ + " Size: 576B\n", + "array([[[-2.38480857-1.01472239j, -1.57538712+0.77230618j,\n", + " -2.35750955-0.14370738j, -1.71344768-0.04888822j,\n", + " -1.01773846-0.25038317j, -1.24578516-0.04616615j],\n", + " [ 3.67746694+0.29695182j, 1.61964884+0.85583868j,\n", + " 2.2933426 -0.19575574j, 1.89645413+0.2119012j ,\n", + " 1.88423303+0.69716899j, 1.59828432+0.32116744j],\n", + " [ 9.60811479+3.87282861j, 6.27814411-3.111502j ,\n", + " 9.30816779+0.80342085j, 6.84281266+0.0462613j ,\n", + " 4.04628365+0.78770492j, 4.76941096+0.26523587j]],\n", + "\n", + " [[-3.10971873-3.59934745j, -2.48840166-2.28189879j,\n", + " -2.34587643-2.40562029j, -1.81763105-1.75022216j,\n", + " -1.53054872-1.45563145j, -1.64243294-1.30616842j],\n", + " [ 0.80275312-0.39206741j, -0.09654607-0.08445139j,\n", + " 0.25522267-0.20834455j, -0.19373402+0.12148435j,\n", + " -0.2398339 +0.22376425j, -0.20408235-0.14786198j],\n", + " [ 1.59328274+3.34370256j, 0.43650178-0.37175267j,\n", + " 0.82138048+1.16094613j, -0.30163279-0.86991321j,\n", + " -0.87503057-0.96168875j, 0.37123256-1.01070181j]]])\n", + "Coordinates:\n", + " * period (period) float64 48B 33.31 43.0 54.2 68.88 85.63 102.9\n", + " * output_channel (output_channel) \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray (output_channel: 2, input_channel: 3, period: 6)> Size: 576B\n",
+       "array([[[-0.72570444+0.04085121j, -2.07668645+0.65701146j,\n",
+       "         -0.64190942+0.51095421j, -0.7893782 +0.5314432j ,\n",
+       "         -0.80239452-0.07171476j, -0.59149454+0.20007772j],\n",
+       "        [ 1.34183128+0.62274773j,  0.65833959-0.85867768j,\n",
+       "          0.50951564+0.41673589j,  0.47370342+0.13284787j,\n",
+       "          0.99756723+0.06556841j,  0.57242061+0.18909031j],\n",
+       "        [ 2.9426646 -0.19740719j,  8.2540808 -2.39223804j,\n",
+       "          2.63303264-2.18755509j,  3.18540309-2.01958181j,\n",
+       "          3.02505211+0.42231067j,  2.45991419-0.84118j   ]],\n",
+       "\n",
+       "       [[-1.91777816-0.89092061j, -1.39660968-0.88550633j,\n",
+       "         -1.36650956-0.21220529j, -1.10860941-0.35765165j,\n",
+       "         -1.24956451-1.1417356j , -0.73688191-0.2698234j ],\n",
+       "        [-0.51826482-0.59719204j, -0.29799801-0.17472597j,\n",
+       "         -0.82548225-0.31052916j, -0.62539129-0.15079481j,\n",
+       "          0.30090774-0.42439856j, -0.43650151+0.07175227j],\n",
+       "        [ 2.31380479-1.97509874j,  0.85811432-1.21404219j,\n",
+       "          1.37295396-3.28965443j,  0.50384954-2.41877854j,\n",
+       "          1.58550618+1.04183855j, -0.14763784-2.06225911j]]])\n",
+       "Coordinates:\n",
+       "  * period          (period) float64 48B 133.2 172.0 216.8 275.5 342.5 411.7\n",
+       "  * output_channel  (output_channel) <U2 16B 'ex' 'ey'\n",
+       "  * input_channel   (input_channel) <U2 24B 'hx' 'hy' 'hz'
" + ], + "text/plain": [ + " Size: 576B\n", + "array([[[-0.72570444+0.04085121j, -2.07668645+0.65701146j,\n", + " -0.64190942+0.51095421j, -0.7893782 +0.5314432j ,\n", + " -0.80239452-0.07171476j, -0.59149454+0.20007772j],\n", + " [ 1.34183128+0.62274773j, 0.65833959-0.85867768j,\n", + " 0.50951564+0.41673589j, 0.47370342+0.13284787j,\n", + " 0.99756723+0.06556841j, 0.57242061+0.18909031j],\n", + " [ 2.9426646 -0.19740719j, 8.2540808 -2.39223804j,\n", + " 2.63303264-2.18755509j, 3.18540309-2.01958181j,\n", + " 3.02505211+0.42231067j, 2.45991419-0.84118j ]],\n", + "\n", + " [[-1.91777816-0.89092061j, -1.39660968-0.88550633j,\n", + " -1.36650956-0.21220529j, -1.10860941-0.35765165j,\n", + " -1.24956451-1.1417356j , -0.73688191-0.2698234j ],\n", + " [-0.51826482-0.59719204j, -0.29799801-0.17472597j,\n", + " -0.82548225-0.31052916j, -0.62539129-0.15079481j,\n", + " 0.30090774-0.42439856j, -0.43650151+0.07175227j],\n", + " [ 2.31380479-1.97509874j, 0.85811432-1.21404219j,\n", + " 1.37295396-3.28965443j, 0.50384954-2.41877854j,\n", + " 1.58550618+1.04183855j, -0.14763784-2.06225911j]]])\n", + "Coordinates:\n", + " * period (period) float64 48B 133.2 172.0 216.8 275.5 342.5 411.7\n", + " * output_channel (output_channel) \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray (output_channel: 2, input_channel: 3, period: 5)> Size: 480B\n",
+       "array([[[ 0.37064244+0.3223102j ,  0.06679967-0.66018674j,\n",
+       "         -0.4940566 -0.31909628j, -0.45354767+0.05103162j,\n",
+       "         -1.1545326 +0.23502009j],\n",
+       "        [ 0.44002023+1.16143672j,  1.32748295+0.74412977j,\n",
+       "          0.85396317+0.13488647j,  0.45363057+0.08690251j,\n",
+       "          0.15551897-0.68326806j],\n",
+       "        [-1.35747008-1.21798684j, -0.26908936+2.79339378j,\n",
+       "          1.88221377+1.19156859j,  1.76292444-0.1475252j ,\n",
+       "          4.60088257-1.1026431j ]],\n",
+       "\n",
+       "       [[ 0.35517368+0.2261841j , -0.72885597-0.2074237j ,\n",
+       "         -1.0322705 -0.15378022j, -0.68114461-0.15353018j,\n",
+       "         -1.63220449+0.21952566j],\n",
+       "        [-1.05572637+1.22781336j, -0.50737613-0.04816998j,\n",
+       "         -0.40497921-0.465143j  , -0.34816637-0.13037868j,\n",
+       "         -0.62336517-1.13930797j],\n",
+       "        [-4.68353371-4.03239285j,  0.14205748-2.03419946j,\n",
+       "          1.72252174-1.62850785j,  0.679333  -1.39094575j,\n",
+       "          4.72429292-2.75348913j]]])\n",
+       "Coordinates:\n",
+       "  * period          (period) float64 40B 412.8 533.0 723.4 1.042e+03 1.515e+03\n",
+       "  * output_channel  (output_channel) <U2 16B 'ex' 'ey'\n",
+       "  * input_channel   (input_channel) <U2 24B 'hx' 'hy' 'hz'
" + ], + "text/plain": [ + " Size: 480B\n", + "array([[[ 0.37064244+0.3223102j , 0.06679967-0.66018674j,\n", + " -0.4940566 -0.31909628j, -0.45354767+0.05103162j,\n", + " -1.1545326 +0.23502009j],\n", + " [ 0.44002023+1.16143672j, 1.32748295+0.74412977j,\n", + " 0.85396317+0.13488647j, 0.45363057+0.08690251j,\n", + " 0.15551897-0.68326806j],\n", + " [-1.35747008-1.21798684j, -0.26908936+2.79339378j,\n", + " 1.88221377+1.19156859j, 1.76292444-0.1475252j ,\n", + " 4.60088257-1.1026431j ]],\n", + "\n", + " [[ 0.35517368+0.2261841j , -0.72885597-0.2074237j ,\n", + " -1.0322705 -0.15378022j, -0.68114461-0.15353018j,\n", + " -1.63220449+0.21952566j],\n", + " [-1.05572637+1.22781336j, -0.50737613-0.04816998j,\n", + " -0.40497921-0.465143j , -0.34816637-0.13037868j,\n", + " -0.62336517-1.13930797j],\n", + " [-4.68353371-4.03239285j, 0.14205748-2.03419946j,\n", + " 1.72252174-1.62850785j, 0.679333 -1.39094575j,\n", + " 4.72429292-2.75348913j]]])\n", + "Coordinates:\n", + " * period (period) float64 40B 412.8 533.0 723.4 1.042e+03 1.515e+03\n", + " * output_channel (output_channel) NOTE This wont work becasue TF collection can't write a z-file \n" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'TransferFunctionCollection' object has no attribute 'write'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[19], line 2\u001b[0m\n\u001b[1;32m 1\u001b[0m xml_file_base \u001b[38;5;241m=\u001b[39m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msynthetic_test1.xml\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m----> 2\u001b[0m \u001b[43mtf_cls\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mwrite\u001b[49m(fn\u001b[38;5;241m=\u001b[39mxml_file_base, file_type\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124memtfxml\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n", + "\u001b[0;31mAttributeError\u001b[0m: 'TransferFunctionCollection' object has no attribute 'write'" + ] + } + ], + "source": [ + "xml_file_base = f\"synthetic_test1.xml\"\n", + "tf_cls.write(fn=xml_file_base, file_type=\"emtfxml\")\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "aurora-test", + "language": "python", + "name": "aurora-test" + }, + "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.9.19" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}