{ "cells": [ { "cell_type": "markdown", "id": "50ca8493-e877-4492-bea7-d62366feb273", "metadata": { "tags": [] }, "source": [ "# Basic MIMO Simulations\n", "In this notebook, you will learn how to setup simulations of MIMO transmissions over\n", "a flat-fading channel.\n", "\n", "Here is a schematic diagram of the system model with all required components:" ] }, { "cell_type": "markdown", "id": "a81e7722-9627-4dfe-8d95-5124bf834c1d", "metadata": {}, "source": [ "![System Model](data:image/png;base64,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NbZVtWEQQBdS9SFZOJPNxTPJBSL+nOXa1kbLZccW1hY5C28IGAKGQMtFwIhiy217q3kOEICMZZschoupJE/zCftV96zhs0laq8vP/AwBQ8AQMASaBwJGFJtHO1ot8gQBiNicOXPczz//7KV+q6++uuvatWvWSvfKK6+41q1bu2233bbGaSpJnD59uvvhhx/cHnvsUeO4FtAQMAQMAUOgZSNgRLFlt7/VPksIKBl7/fXX3fbb6/HGzq299truyy+/dG3atPHT0SrRI7zGoQg8hw3hwm7YuW644QYnJ8x4ohiPx1PSy/R0NS3cma5mi6A333zTHX/88Sukq+HsbggYAoaAIWAIZELAFrNkQsXcDIFaIKCEr7S01JPEv//9727x4sXup59+cs8++6wniSSnZE6fmUbGjYvn8JXupnE57WSttdbypYP8aRqUQcuRno4PLD/t2rVzBx54oFrtbggYAoaAIWAIrBQBkyiuFCILYAjUDIGFCxf6gEgUIWVca6yxhps9e7Z74okn3PDhw13nzp19mAULFrgHH3zQE7dZs2a54uJiP12N1K9fv35up5128hLA9957z/Xt29ftvffennBCGD/55BP3yCOPODlxxvXv39/tsssurlWrVj7dWCzm/vOf/zjikebuu+/uNtlkE++HBHLp0qX+2X4MAUPAEDAEDIGaIGASxZqgZGEMgWoQUGlfly5d3LBhw9zAgQPdRx99lIrBtPMpp5ziXnrppZTbW2+95U499VTXtm1bT+y23HJLf4fwDRkyxKHb+Nxzz3n/Qw45xN17770+LuTv7rvv9tPZS5YscXvttZdDgqnT1FdffbXbc8893SqrrOLkjGtPMt955x0flyloLWuqIPZgCBgChoAhYAhUg4BJFKsBx7wMgZoiAFFjKhiihuRus802c6eddpobOXKk69mzp7v99tvdVVdd5Q444AAfDong5Zdf7gldRUWFO/bYY924ceN8dpDF+++/3914440+LJJJ0j3hhBMc09sXXHCBvwg8ePBgL31EWilnWbtzzz3XQUK33nprn1ZhYaG75JJL3L/+9S+flhJK75mfP5zPvaLCZn6W00plCBgChkCLQMAkii2ima2SuUYASR0kDB3CRx991LGo5bbbbnO9evVyTDMzdYwbUj6mqO+66y4vDaRcSAbXXHPNVBEhfD169EjZ0Un84osv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)" ] }, { "cell_type": "markdown", "id": "aa46d4da-d921-49d1-9e8f-2a67ab03c8b9", "metadata": {}, "source": [ "You will learn how to:\n", "\n", "* Use the FastFadingChannel class\n", "* Apply spatial antenna correlation\n", "* Implement LMMSE detection with perfect channel knowledge\n", "* Run BER/SER simulations\n", "\n", "We will first walk through the configuration of all components of the system model, before building an end-to-end model which will allow you to run efficiently simulations with different parameter settings." ] }, { "cell_type": "markdown", "id": "da31eafd-c45b-43ec-824d-f1701810a132", "metadata": {}, "source": [ "## Table of Contents\n", "* [Configuration and Imports](#Configuration-and-Imports)\n", "* [Simple uncoded transmission](#Simple-uncoded-transmission)\n", " * [Adding spatial correlation](#Adding-spatial-correlation)\n", "* [Extension to channel coding](#Extension-to-channel-coding)\n", " * [BER simulations using a Sionna Block](#BER-simulations-using-a-Sionna-Block)" ] }, { "cell_type": "markdown", "id": "e79b7b0a-6beb-45d3-a95e-e22c3bea3527", "metadata": { "tags": [] }, "source": [ "### Configuration and Imports" ] }, { "cell_type": "code", "execution_count": 1, "id": "e72fdc97-805a-466a-a098-113106f8a9b9", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:02.190522Z", "iopub.status.busy": "2026-02-13T15:10:02.190342Z", "iopub.status.idle": "2026-02-13T15:10:05.030341Z", "shell.execute_reply": "2026-02-13T15:10:05.029189Z" } }, "outputs": [], "source": [ "import os\n", "\n", "# Import Sionna\n", "try:\n", " import sionna.phy\n", "except ImportError as e:\n", " import sys\n", " if 'google.colab' in sys.modules:\n", " # Install Sionna in Google Colab\n", " print(\"Installing Sionna and restarting the runtime. Please run the cell again.\")\n", " os.system(\"pip install sionna\")\n", " os.kill(os.getpid(), 5)\n", " else:\n", " raise e\n", "\n", "# Set random seed for reproducability\n", "sionna.phy.config.seed = 42" ] }, { "cell_type": "code", "execution_count": 2, "id": "6a999116-9ff6-4766-85f3-acaad6a7ad45", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.033211Z", "iopub.status.busy": "2026-02-13T15:10:05.032922Z", "iopub.status.idle": "2026-02-13T15:10:05.040876Z", "shell.execute_reply": "2026-02-13T15:10:05.040044Z" } }, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import torch\n", "from sionna.phy import Block\n", "from sionna.phy.utils import ebnodb2no, compute_ser, compute_ber, PlotBER\n", "from sionna.phy.channel import FlatFadingChannel, KroneckerModel\n", "from sionna.phy.channel.utils import exp_corr_mat\n", "from sionna.phy.mimo import lmmse_equalizer\n", "from sionna.phy.mapping import SymbolDemapper, Mapper, Demapper, BinarySource, QAMSource\n", "from sionna.phy.fec.ldpc.encoding import LDPC5GEncoder\n", "from sionna.phy.fec.ldpc.decoding import LDPC5GDecoder" ] }, { "cell_type": "markdown", "id": "651c6928-5663-4c2b-89e8-877b94c14947", "metadata": {}, "source": [ "## Simple uncoded transmission\n", "\n", "We will consider point-to-point transmissions from a transmitter with `num_tx_ant` antennas to a receiver\n", "with `num_rx_ant` antennas. The transmitter applies no precoding and sends independent data stream from each antenna.\n", "\n", "Let us now generate a batch of random transmit vectors of random 16QAM symbols:" ] }, { "cell_type": "code", "execution_count": 3, "id": "63446495-cf9d-442a-8a6d-cfddee569eb7", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.042714Z", "iopub.status.busy": "2026-02-13T15:10:05.042589Z", "iopub.status.idle": "2026-02-13T15:10:05.258398Z", "shell.execute_reply": "2026-02-13T15:10:05.257387Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 4])\n" ] } ], "source": [ "num_tx_ant = 4\n", "num_rx_ant = 16\n", "num_bits_per_symbol = 4\n", "batch_size = 1024\n", "qam_source = QAMSource(num_bits_per_symbol)\n", "x = qam_source([batch_size, num_tx_ant])\n", "print(x.shape)" ] }, { "cell_type": "markdown", "id": "c536ec87-40bf-4590-88db-151ae7ac8de7", "metadata": {}, "source": [ "Next, we will create an instance of the `FlatFadingChannel` class to simulate transmissions over\n", "an i.i.d. Rayleigh fading channel. The channel will also add AWGN with variance `no`.\n", "As we will need knowledge of the channel realizations for detection, we activate the `return_channel` flag." ] }, { "cell_type": "code", "execution_count": 4, "id": "35d7a3cd-e2ca-48bd-a77c-8bc8939f9624", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.260322Z", "iopub.status.busy": "2026-02-13T15:10:05.260182Z", "iopub.status.idle": "2026-02-13T15:10:05.324899Z", "shell.execute_reply": "2026-02-13T15:10:05.323962Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 16])\n", "torch.Size([1024, 16, 4])\n" ] } ], "source": [ "channel = FlatFadingChannel(num_tx_ant, num_rx_ant, add_awgn=True, return_channel=True)\n", "no = 0.2 # Noise variance of the channel\n", "\n", "# y and h are the channel output and channel realizations, respectively.\n", "y, h = channel(x, no)\n", "print(y.shape)\n", "print(h.shape)" ] }, { "cell_type": "markdown", "id": "fd565377-d54c-49a8-8fe1-6ca7cceedec7", "metadata": {}, "source": [ "Using the perfect channel knowledge, we can now implement an LMMSE equalizer to compute soft-symbols.\n", "The noise covariance matrix in this example is just a scaled identity matrix which we need to provide to the\n", "`lmmse_equalizer`." ] }, { "cell_type": "code", "execution_count": 5, "id": "a05fce47-7361-4e68-a490-983f654c1dd1", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.326989Z", "iopub.status.busy": "2026-02-13T15:10:05.326833Z", "iopub.status.idle": "2026-02-13T15:10:05.387355Z", "shell.execute_reply": "2026-02-13T15:10:05.386338Z" } }, "outputs": [], "source": [ "s = (no * torch.eye(num_rx_ant, num_rx_ant, dtype=y.dtype, device=y.device))\n", "x_hat, no_eff = lmmse_equalizer(y, h, s)" ] }, { "cell_type": "markdown", "id": "85d71a4f-554f-4e19-905a-6b76e8306d7e", "metadata": {}, "source": [ "Let us know have a look at the transmitted and received constellations:" ] }, { "cell_type": "code", "execution_count": 6, "id": "6339a375-a4b1-45de-9cf6-c88e2e007ca8", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.389413Z", "iopub.status.busy": "2026-02-13T15:10:05.389269Z", "iopub.status.idle": "2026-02-13T15:10:05.510176Z", "shell.execute_reply": "2026-02-13T15:10:05.509304Z" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axes().set_aspect(1.0)\n", "plt.scatter(np.real(x_hat.cpu()), np.imag(x_hat.cpu()));\n", "plt.scatter(np.real(x.cpu()), np.imag(x.cpu()));" ] }, { "cell_type": "markdown", "id": "f17acbe6-aaf2-470b-a436-e46a4c65f477", "metadata": {}, "source": [ "As expected, the soft symbols `x_hat` are scattered around the 16QAM constellation points.\n", "The equalizer output `no_eff` provides an estimate of the effective noise variance for each soft-symbol." ] }, { "cell_type": "code", "execution_count": 7, "id": "402532df-487f-46f6-aa79-0356bc7fffff", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.511955Z", "iopub.status.busy": "2026-02-13T15:10:05.511804Z", "iopub.status.idle": "2026-02-13T15:10:05.514984Z", "shell.execute_reply": "2026-02-13T15:10:05.514192Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([1024, 4])\n" ] } ], "source": [ "print(no_eff.shape)" ] }, { "cell_type": "markdown", "id": "3cf18ca7-ed1d-4b93-a26f-9afe93923a24", "metadata": {}, "source": [ "One can confirm that this estimate is correct by comparing the MSE between the transmitted and equalized symbols against the average estimated effective noise variance:" ] }, { "cell_type": "code", "execution_count": 8, "id": "633d5bcc-fa6b-4997-a199-a897ee409581", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.516657Z", "iopub.status.busy": "2026-02-13T15:10:05.516529Z", "iopub.status.idle": "2026-02-13T15:10:05.520104Z", "shell.execute_reply": "2026-02-13T15:10:05.519382Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.016787495\n", "0.016619638\n" ] } ], "source": [ "noise_var_eff = np.var((x-x_hat).cpu().numpy())\n", "noise_var_est = np.mean(no_eff.cpu().numpy())\n", "print(noise_var_eff)\n", "print(noise_var_est)" ] }, { "cell_type": "markdown", "id": "3ac3d9e7-ac47-4135-9b6a-f08251fbb41d", "metadata": {}, "source": [ "The last step is to make hard decisions on the symbols and compute the SER:" ] }, { "cell_type": "code", "execution_count": 9, "id": "5fce0538-545b-42fb-9d9d-7c3b84f6695f", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.521618Z", "iopub.status.busy": "2026-02-13T15:10:05.521497Z", "iopub.status.idle": "2026-02-13T15:10:05.638834Z", "shell.execute_reply": "2026-02-13T15:10:05.638053Z" } }, "outputs": [ { "data": { "text/plain": [ "tensor(0.0032, device='cuda:0', dtype=torch.float64)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "symbol_demapper = SymbolDemapper(\"qam\", num_bits_per_symbol, hard_out=True)\n", "\n", "# Convert no to a tensor on the same device as x\n", "no_tensor = torch.tensor(no, device=x.device)\n", "\n", "# Get symbol indices for the transmitted symbols\n", "x_ind = symbol_demapper(x, no_tensor)\n", "\n", "# Get symbol indices for the received soft-symbols\n", "x_ind_hat = symbol_demapper(x_hat, no_tensor)\n", "\n", "compute_ser(x_ind, x_ind_hat)" ] }, { "cell_type": "markdown", "id": "400ab776-d452-4933-a1c1-70934b50e594", "metadata": {}, "source": [ "### Adding spatial correlation\n", "\n", "It is very easy add spatial correlation to the `FlatFadingChannel` using the `SpatialCorrelation` class.\n", "We can, e.g., easily setup a Kronecker (`KroneckerModel`) (or two-sided) correlation model using exponetial correlation matrices (`exp_corr_mat`)." ] }, { "cell_type": "code", "execution_count": 10, "id": "43b933a9-611a-4994-be08-eb0e5aff664e", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.641893Z", "iopub.status.busy": "2026-02-13T15:10:05.641739Z", "iopub.status.idle": "2026-02-13T15:10:05.679613Z", "shell.execute_reply": "2026-02-13T15:10:05.678709Z" } }, "outputs": [], "source": [ "# Create transmit and receive correlation matrices\n", "r_tx = exp_corr_mat(0.4, num_tx_ant)\n", "r_rx = exp_corr_mat(0.9, num_rx_ant)\n", "\n", "# Add the spatial correlation model to the channel\n", "channel.spatial_corr = KroneckerModel(r_tx, r_rx)" ] }, { "cell_type": "markdown", "id": "8079d510-69de-48de-a2fc-4eb32d4bac0f", "metadata": {}, "source": [ "Next, we can validate that the channel model applies the desired spatial correlation by creating a large batch of channel realizations from which we compute the empirical transmit and receiver covariance matrices:" ] }, { "cell_type": "code", "execution_count": 11, "id": "9b5c6273-0eb2-4065-82b2-64af71accff8", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.681673Z", "iopub.status.busy": "2026-02-13T15:10:05.681535Z", "iopub.status.idle": "2026-02-13T15:10:05.721899Z", "shell.execute_reply": "2026-02-13T15:10:05.721162Z" } }, "outputs": [], "source": [ "h = channel.generate(1000000)\n", "\n", "# Compute empirical covariance matrices\n", "r_tx_hat = torch.mean(torch.matmul(h.mH, h), 0) / num_rx_ant\n", "r_rx_hat = torch.mean(torch.matmul(h, h.mH), 0) / num_tx_ant\n", "\n", "# Test that the empirical results match the theory\n", "assert(np.allclose(r_tx.cpu().numpy(), r_tx_hat.cpu().numpy(), atol=1e-2))\n", "assert(np.allclose(r_rx.cpu().numpy(), r_rx_hat.cpu().numpy(), atol=1e-2))" ] }, { "cell_type": "markdown", "id": "5de3bbe1-06ba-4d84-9f38-c4e8f0c03d24", "metadata": {}, "source": [ "Now, we can transmit the same symbols `x` over the channel with spatial correlation and compute the SER:" ] }, { "cell_type": "code", "execution_count": 12, "id": "359d79ee-d3f4-48bc-aac6-fd9846515c0c", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.724013Z", "iopub.status.busy": "2026-02-13T15:10:05.723889Z", "iopub.status.idle": "2026-02-13T15:10:05.729512Z", "shell.execute_reply": "2026-02-13T15:10:05.728767Z" } }, "outputs": [ { "data": { "text/plain": [ "tensor(0.1223, device='cuda:0', dtype=torch.float64)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y, h = channel(x, no)\n", "x_hat, no_eff = lmmse_equalizer(y, h, s)\n", "x_ind_hat = symbol_demapper(x_hat, no_tensor)\n", "compute_ser(x_ind, x_ind_hat)" ] }, { "cell_type": "markdown", "id": "5d76e543-6d2e-43b8-afb2-3f5d0b1dd54a", "metadata": {}, "source": [ "The result cleary show the negative effect of spatial correlation in this setting.\n", "You can play around with the `a` parameter defining the exponential correlation matrices and see its impact on the SER. " ] }, { "cell_type": "markdown", "id": "b3376816-8f98-409d-b0c5-c409baeef7aa", "metadata": {}, "source": [ "## Extension to channel coding\n", "So far, we have simulated uncoded symbol transmissions. With a few lines of additional code, we can extend what we have done to coded BER simulations. We need the following additional components:" ] }, { "cell_type": "code", "execution_count": 13, "id": "74723ddd-7e2e-4006-a4c2-6bc6c9d4bf38", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.731487Z", "iopub.status.busy": "2026-02-13T15:10:05.731368Z", "iopub.status.idle": "2026-02-13T15:10:05.764377Z", "shell.execute_reply": "2026-02-13T15:10:05.763868Z" } }, "outputs": [], "source": [ "n = 1024 # codeword length\n", "k = 512 # number of information bits per codeword\n", "coderate = k/n # coderate\n", "batch_size = 32\n", "\n", "binary_source = BinarySource()\n", "encoder = LDPC5GEncoder(k, n)\n", "decoder = LDPC5GDecoder(encoder, hard_out=True)\n", "mapper = Mapper(\"qam\", num_bits_per_symbol)\n", "demapper = Demapper(\"app\", \"qam\", num_bits_per_symbol)" ] }, { "cell_type": "markdown", "id": "1871330c-cb55-4ace-856b-9fe2d8375ea8", "metadata": {}, "source": [ "Next we need to generate random QAM symbols through mapping of coded bits.\n", "Reshaping is required to bring `x` into the needed shape." ] }, { "cell_type": "code", "execution_count": 14, "id": "ae31038f-a0a2-4e84-88f9-aa5bd28166c2", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.766628Z", "iopub.status.busy": "2026-02-13T15:10:05.766503Z", "iopub.status.idle": "2026-02-13T15:10:05.799579Z", "shell.execute_reply": "2026-02-13T15:10:05.798728Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "torch.Size([8192, 4])\n" ] } ], "source": [ "b = binary_source([batch_size, num_tx_ant, k])\n", "c = encoder(b)\n", "x = mapper(c)\n", "no_tensor = torch.tensor(no, device=x.device)\n", "x_ind = symbol_demapper(x, no_tensor) # Get symbol indices for SER computation later on\n", "shape = x.shape\n", "x = x.reshape(-1, num_tx_ant)\n", "print(x.shape)" ] }, { "cell_type": "markdown", "id": "e925ebfa-fa9e-4a02-812d-40eb7e990f00", "metadata": {}, "source": [ "We will now transmit the symbols over the channel:" ] }, { "cell_type": "code", "execution_count": 15, "id": "8c5a0767-9896-4eab-88cc-8859273a8cc5", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.801632Z", "iopub.status.busy": "2026-02-13T15:10:05.801493Z", "iopub.status.idle": "2026-02-13T15:10:05.805749Z", "shell.execute_reply": "2026-02-13T15:10:05.805055Z" } }, "outputs": [], "source": [ "y, h = channel(x, no)\n", "x_hat, no_eff = lmmse_equalizer(y, h, s)" ] }, { "cell_type": "markdown", "id": "b849b3db-cace-4938-987c-57f1737a5a43", "metadata": {}, "source": [ "And then demap the symbols to LLRs prior to decoding them. Note that we need to bring `x_hat` and `no_eff` back to the desired shape for decoding." ] }, { "cell_type": "code", "execution_count": 16, "id": "85d3f599-b554-451e-ad73-765c997c1ba1", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.807801Z", "iopub.status.busy": "2026-02-13T15:10:05.807683Z", "iopub.status.idle": "2026-02-13T15:10:05.811010Z", "shell.execute_reply": "2026-02-13T15:10:05.810305Z" } }, "outputs": [ { "data": { "text/plain": [ "torch.Size([1024, 4])" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x_ind_hat.shape" ] }, { "cell_type": "code", "execution_count": 17, "id": "2b988637-ba1c-4ca5-aabe-e400f600a807", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.812721Z", "iopub.status.busy": "2026-02-13T15:10:05.812601Z", "iopub.status.idle": "2026-02-13T15:10:05.900858Z", "shell.execute_reply": "2026-02-13T15:10:05.900065Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Uncoded SER : 0.121002197265625\n", "Coded BER : 0.0\n" ] } ], "source": [ "x_hat = x_hat.reshape(shape)\n", "no_eff = no_eff.reshape(shape)\n", "\n", "llr = demapper(x_hat, no_eff)\n", "b_hat = decoder(llr)\n", "\n", "x_ind_hat = symbol_demapper(x_hat, no_tensor)\n", "ber = compute_ber(b, b_hat).item()\n", "print(\"Uncoded SER : {}\".format(compute_ser(x_ind, x_ind_hat)))\n", "print(\"Coded BER : {}\".format(compute_ber(b, b_hat)))" ] }, { "cell_type": "markdown", "id": "26e4d3bd-d707-478e-924f-3473e1cc0b7c", "metadata": {}, "source": [ "Despite the fairly high SER, the BER is very low, thanks to the channel code." ] }, { "cell_type": "markdown", "id": "8b163543-2e72-49d3-9369-b851a6fb678e", "metadata": {}, "source": [ "### BER simulations using a Sionna Block" ] }, { "cell_type": "markdown", "id": "54aaf845-81c7-4573-ae36-14892c258c5f", "metadata": {}, "source": [ "Next, we will wrap everything that we have done so far in a Sionna Block for convenient BER simulations and comparison of system parameters.\n", "Note that we use the `@torch.compile()` decorator which will speed-up the simulations tremendously. See [https://pytorch.org/tutorials/intermediate/torch_compile_tutorial.html](https://pytorch.org/tutorials/intermediate/torch_compile_tutorial.html) for further information." ] }, { "cell_type": "code", "execution_count": 18, "id": "07908bb6-6936-4d07-bb90-804f3a17a23b", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.903395Z", "iopub.status.busy": "2026-02-13T15:10:05.903257Z", "iopub.status.idle": "2026-02-13T15:10:05.908582Z", "shell.execute_reply": "2026-02-13T15:10:05.907865Z" } }, "outputs": [], "source": [ "class Model(Block):\n", " def __init__(self, spatial_corr=None):\n", " super().__init__()\n", " self.n = 1024\n", " self.k = 512\n", " self.coderate = self.k/self.n\n", " self.num_bits_per_symbol = 4\n", " self.num_tx_ant = 4\n", " self.num_rx_ant = 16\n", " self.binary_source = BinarySource()\n", " self.encoder = LDPC5GEncoder(self.k, self.n)\n", " self.mapper = Mapper(\"qam\", self.num_bits_per_symbol)\n", " self.demapper = Demapper(\"app\", \"qam\", self.num_bits_per_symbol)\n", " self.decoder = LDPC5GDecoder(self.encoder, hard_out=True)\n", " self.channel = FlatFadingChannel(self.num_tx_ant,\n", " self.num_rx_ant,\n", " spatial_corr=spatial_corr,\n", " add_awgn=True,\n", " return_channel=True)\n", "\n", " def call(self, batch_size, ebno_db):\n", " b = self.binary_source([batch_size, self.num_tx_ant, self.k])\n", " c = self.encoder(b)\n", "\n", " x = self.mapper(c)\n", " shape = x.shape\n", " x = x.reshape(-1, self.num_tx_ant)\n", "\n", " no = ebnodb2no(ebno_db, self.num_bits_per_symbol, self.coderate)\n", " no *= np.sqrt(self.num_rx_ant)\n", "\n", " y, h = self.channel(x, no)\n", " s = no * torch.eye(self.num_rx_ant, self.num_rx_ant, dtype=y.dtype, device=y.device)\n", "\n", " x_hat, no_eff = lmmse_equalizer(y, h, s)\n", "\n", " x_hat = x_hat.reshape(shape)\n", " no_eff = no_eff.reshape(shape)\n", "\n", " llr = self.demapper(x_hat, no_eff)\n", " b_hat = self.decoder(llr)\n", "\n", " return b, b_hat" ] }, { "cell_type": "markdown", "id": "78a7c2a1-2a12-4bd8-93a6-ae1f54b1717d", "metadata": {}, "source": [ "We can now instantiate different version of this model and use the `PlotBer` class for easy Monte-Carlo simulations." ] }, { "cell_type": "code", "execution_count": 19, "id": "71d23857-6ba5-40de-adfd-fb20969d9b96", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.910425Z", "iopub.status.busy": "2026-02-13T15:10:05.910304Z", "iopub.status.idle": "2026-02-13T15:10:05.912764Z", "shell.execute_reply": "2026-02-13T15:10:05.912058Z" } }, "outputs": [], "source": [ "ber_plot = PlotBER()" ] }, { "cell_type": "code", "execution_count": 20, "id": "b9f84ad5-dd49-4d86-b732-e4c08c59ee26", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:05.914417Z", "iopub.status.busy": "2026-02-13T15:10:05.914295Z", "iopub.status.idle": "2026-02-13T15:10:41.691073Z", "shell.execute_reply": "2026-02-13T15:10:41.689984Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "EbNo [dB] | BER | BLER | bit errors | num bits | block errors | num blocks | runtime [s] | status\n", "---------------------------------------------------------------------------------------------------------------------------------------\n", " -2.5 | 1.1159e-01 | 9.2023e-01 | 936076 | 8388608 | 15077 | 16384 | 15.7 |iter: 0/1000\r", " -2.5 | 1.1159e-01 | 9.2023e-01 | 936076 | 8388608 | 15077 | 16384 | 15.7 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -2.25 | 7.9572e-02 | 7.8931e-01 | 667496 | 8388608 | 12932 | 16384 | 0.2 |iter: 0/1000\r", " -2.25 | 7.9572e-02 | 7.8931e-01 | 667496 | 8388608 | 12932 | 16384 | 0.2 |reached target block errors\n", " -2.0 | 5.0238e-02 | 5.9021e-01 | 421427 | 8388608 | 9670 | 16384 | 0.2 |iter: 0/1000\r", " -2.0 | 5.0238e-02 | 5.9021e-01 | 421427 | 8388608 | 9670 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -1.75 | 2.7033e-02 | 3.7177e-01 | 226773 | 8388608 | 6091 | 16384 | 0.2 |iter: 0/1000\r", " -1.75 | 2.7033e-02 | 3.7177e-01 | 226773 | 8388608 | 6091 | 16384 | 0.2 |reached target block errors\n", " -1.5 | 1.1814e-02 | 1.8927e-01 | 99105 | 8388608 | 3101 | 16384 | 0.2 |iter: 0/1000\r", " -1.5 | 1.1814e-02 | 1.8927e-01 | 99105 | 8388608 | 3101 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -1.25 | 4.4302e-03 | 8.1421e-02 | 37163 | 8388608 | 1334 | 16384 | 0.2 |iter: 0/1000\r", " -1.25 | 4.4302e-03 | 8.1421e-02 | 37163 | 8388608 | 1334 | 16384 | 0.2 |reached target block errors\n", " -1.0 | 1.3252e-03 | 2.8076e-02 | 11117 | 8388608 | 460 | 16384 | 0.2 |iter: 0/1000\r", " -1.0 | 1.3252e-03 | 2.8076e-02 | 11117 | 8388608 | 460 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.75 | 3.0243e-04 | 7.9956e-03 | 2537 | 8388608 | 131 | 16384 | 0.2 |iter: 0/1000\r", " -0.75 | 3.0243e-04 | 7.9956e-03 | 2537 | 8388608 | 131 | 16384 | 0.2 |reached target block errors\n", " -0.5 | 7.7248e-05 | 1.6479e-03 | 648 | 8388608 | 27 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.5 | 7.8380e-05 | 1.7090e-03 | 1315 | 16777216 | 56 | 32768 | 0.4 |iter: 1/1000\r", " -0.5 | 6.7830e-05 | 1.7293e-03 | 1707 | 25165824 | 85 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.5 | 7.4357e-05 | 1.7395e-03 | 2495 | 33554432 | 114 | 65536 | 0.8 |iter: 3/1000\r", " -0.5 | 7.4357e-05 | 1.7395e-03 | 2495 | 33554432 | 114 | 65536 | 0.8 |reached target block errors\n", " -0.25 | 2.7418e-06 | 1.2207e-04 | 23 | 8388608 | 2 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 2.4438e-05 | 4.8828e-04 | 410 | 16777216 | 16 | 32768 | 0.4 |iter: 1/1000\r", " -0.25 | 1.8994e-05 | 4.8828e-04 | 478 | 25165824 | 24 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.4633e-05 | 4.2725e-04 | 491 | 33554432 | 28 | 65536 | 0.8 |iter: 3/1000\r", " -0.25 | 1.4830e-05 | 4.5166e-04 | 622 | 41943040 | 37 | 81920 | 0.9 |iter: 4/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.3669e-05 | 4.0690e-04 | 688 | 50331648 | 40 | 98304 | 1.1 |iter: 5/1000\r", " -0.25 | 1.2091e-05 | 3.7493e-04 | 710 | 58720256 | 43 | 114688 | 1.3 |iter: 6/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.1012e-05 | 3.8147e-04 | 739 | 67108864 | 50 | 131072 | 1.5 |iter: 7/1000\r", " -0.25 | 1.0861e-05 | 3.8656e-04 | 820 | 75497472 | 57 | 147456 | 1.7 |iter: 8/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.2434e-05 | 3.9673e-04 | 1043 | 83886080 | 65 | 163840 | 1.9 |iter: 9/1000\r", " -0.25 | 1.1780e-05 | 3.8286e-04 | 1087 | 92274688 | 69 | 180224 | 2.1 |iter: 10/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.1494e-05 | 3.7638e-04 | 1157 | 100663296 | 74 | 196608 | 2.3 |iter: 11/1000\r", " -0.25 | 1.1738e-05 | 3.9438e-04 | 1280 | 109051904 | 84 | 212992 | 2.5 |iter: 12/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.1674e-05 | 4.0109e-04 | 1371 | 117440512 | 92 | 229376 | 2.7 |iter: 13/1000\r", " -0.25 | 1.1698e-05 | 3.9063e-04 | 1472 | 125829120 | 96 | 245760 | 2.9 |iter: 14/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " -0.25 | 1.1355e-05 | 3.9291e-04 | 1524 | 134217728 | 103 | 262144 | 3.0 |iter: 15/1000\r", " -0.25 | 1.1355e-05 | 3.9291e-04 | 1524 | 134217728 | 103 | 262144 | 3.0 |reached target block errors\n", " 0.0 | 5.9605e-07 | 1.2207e-04 | 5 | 8388608 | 2 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.1325e-06 | 9.1553e-05 | 19 | 16777216 | 3 | 32768 | 0.4 |iter: 1/1000\r", " 0.0 | 1.6292e-06 | 8.1380e-05 | 41 | 25165824 | 4 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.2219e-06 | 6.1035e-05 | 41 | 33554432 | 4 | 65536 | 0.8 |iter: 3/1000\r", " 0.0 | 9.7752e-07 | 4.8828e-05 | 41 | 41943040 | 4 | 81920 | 1.0 |iter: 4/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 8.9407e-07 | 6.1035e-05 | 45 | 50331648 | 6 | 98304 | 1.1 |iter: 5/1000\r", " 0.0 | 8.1744e-07 | 6.1035e-05 | 48 | 58720256 | 7 | 114688 | 1.3 |iter: 6/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 7.1526e-07 | 5.3406e-05 | 48 | 67108864 | 7 | 131072 | 1.5 |iter: 7/1000\r", " 0.0 | 7.9473e-07 | 5.4253e-05 | 60 | 75497472 | 8 | 147456 | 1.7 |iter: 8/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.3113e-06 | 7.3242e-05 | 110 | 83886080 | 12 | 163840 | 1.9 |iter: 9/1000\r", " 0.0 | 1.1921e-06 | 6.6584e-05 | 110 | 92274688 | 12 | 180224 | 2.1 |iter: 10/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.1424e-06 | 6.6121e-05 | 115 | 100663296 | 13 | 196608 | 2.3 |iter: 11/1000\r", " 0.0 | 1.0545e-06 | 6.1035e-05 | 115 | 109051904 | 13 | 212992 | 2.5 |iter: 12/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.0133e-06 | 6.1035e-05 | 119 | 117440512 | 14 | 229376 | 2.7 |iter: 13/1000\r", " 0.0 | 1.5497e-06 | 6.9173e-05 | 195 | 125829120 | 17 | 245760 | 2.9 |iter: 14/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.9595e-06 | 7.2479e-05 | 263 | 134217728 | 19 | 262144 | 3.0 |iter: 15/1000\r", " 0.0 | 1.8933e-06 | 7.1806e-05 | 270 | 142606336 | 20 | 278528 | 3.2 |iter: 16/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.1524e-06 | 7.1208e-05 | 325 | 150994944 | 21 | 294912 | 3.4 |iter: 17/1000\r", " 0.0 | 2.0956e-06 | 7.7097e-05 | 334 | 159383552 | 24 | 311296 | 3.6 |iter: 18/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.9968e-06 | 7.6294e-05 | 335 | 167772160 | 25 | 327680 | 3.8 |iter: 19/1000\r", " 0.0 | 1.9982e-06 | 7.5567e-05 | 352 | 176160768 | 26 | 344064 | 4.0 |iter: 20/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.2270e-06 | 7.4907e-05 | 411 | 184549376 | 27 | 360448 | 4.2 |iter: 21/1000\r", " 0.0 | 2.1406e-06 | 7.4304e-05 | 413 | 192937984 | 28 | 376832 | 4.4 |iter: 22/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.0514e-06 | 7.1208e-05 | 413 | 201326592 | 28 | 393216 | 4.6 |iter: 23/1000\r", " 0.0 | 1.9693e-06 | 6.8359e-05 | 413 | 209715200 | 28 | 409600 | 4.8 |iter: 24/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.8936e-06 | 6.5730e-05 | 413 | 218103808 | 28 | 425984 | 4.9 |iter: 25/1000\r", " 0.0 | 2.1104e-06 | 6.7817e-05 | 478 | 226492416 | 30 | 442368 | 5.1 |iter: 26/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.0862e-06 | 6.9754e-05 | 490 | 234881024 | 32 | 458752 | 5.3 |iter: 27/1000\r", " 0.0 | 2.0636e-06 | 7.3663e-05 | 502 | 243269632 | 35 | 475136 | 5.5 |iter: 28/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 1.9948e-06 | 7.1208e-05 | 502 | 251658240 | 35 | 491520 | 5.7 |iter: 29/1000\r", " 0.0 | 2.3726e-06 | 7.4817e-05 | 617 | 260046848 | 38 | 507904 | 5.9 |iter: 30/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.3060e-06 | 7.4387e-05 | 619 | 268435456 | 39 | 524288 | 6.1 |iter: 31/1000\r", " 0.0 | 2.2361e-06 | 7.2132e-05 | 619 | 276824064 | 39 | 540672 | 6.3 |iter: 32/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.4333e-06 | 7.3601e-05 | 694 | 285212672 | 41 | 557056 | 6.5 |iter: 33/1000\r", " 0.0 | 2.3740e-06 | 7.4986e-05 | 697 | 293601280 | 43 | 573440 | 6.7 |iter: 34/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.4173e-06 | 7.9685e-05 | 730 | 301989888 | 47 | 589824 | 6.8 |iter: 35/1000\r", " 0.0 | 2.3520e-06 | 7.7531e-05 | 730 | 310378496 | 47 | 606208 | 7.0 |iter: 36/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5442e-06 | 7.7097e-05 | 811 | 318767104 | 48 | 622592 | 7.2 |iter: 37/1000\r", " 0.0 | 2.6318e-06 | 7.6685e-05 | 861 | 327155712 | 49 | 638976 | 7.4 |iter: 38/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5749e-06 | 7.6294e-05 | 864 | 335544320 | 50 | 655360 | 7.6 |iter: 39/1000\r", " 0.0 | 2.5237e-06 | 7.5922e-05 | 868 | 343932928 | 51 | 671744 | 7.8 |iter: 40/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.4637e-06 | 7.4114e-05 | 868 | 352321536 | 51 | 688128 | 8.0 |iter: 41/1000\r", " 0.0 | 2.4091e-06 | 7.3810e-05 | 869 | 360710144 | 52 | 704512 | 8.2 |iter: 42/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.7174e-06 | 7.9068e-05 | 1003 | 369098752 | 57 | 720896 | 8.4 |iter: 43/1000\r", " 0.0 | 2.6597e-06 | 7.8668e-05 | 1004 | 377487360 | 58 | 737280 | 8.6 |iter: 44/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6019e-06 | 7.6957e-05 | 1004 | 385875968 | 58 | 753664 | 8.8 |iter: 45/1000\r", " 0.0 | 2.5643e-06 | 7.7917e-05 | 1011 | 394264576 | 60 | 770048 | 8.9 |iter: 46/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5133e-06 | 7.7566e-05 | 1012 | 402653184 | 61 | 786432 | 9.1 |iter: 47/1000\r", " 0.0 | 2.7369e-06 | 7.9719e-05 | 1125 | 411041792 | 64 | 802816 | 9.3 |iter: 48/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6822e-06 | 7.8125e-05 | 1125 | 419430400 | 64 | 819200 | 9.5 |iter: 49/1000\r", " 0.0 | 2.7348e-06 | 8.0183e-05 | 1170 | 427819008 | 67 | 835584 | 9.7 |iter: 50/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6983e-06 | 8.0989e-05 | 1177 | 436207616 | 69 | 851968 | 9.9 |iter: 51/1000\r", " 0.0 | 2.6631e-06 | 8.0612e-05 | 1184 | 444596224 | 70 | 868352 | 10.1 |iter: 52/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6557e-06 | 8.0250e-05 | 1203 | 452984832 | 71 | 884736 | 10.3 |iter: 53/1000\r", " 0.0 | 2.6573e-06 | 8.1010e-05 | 1226 | 461373440 | 73 | 901120 | 10.5 |iter: 54/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6631e-06 | 8.0654e-05 | 1251 | 469762048 | 74 | 917504 | 10.7 |iter: 55/1000\r", " 0.0 | 2.6310e-06 | 8.1380e-05 | 1258 | 478150656 | 76 | 933888 | 10.9 |iter: 56/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6103e-06 | 8.2082e-05 | 1270 | 486539264 | 78 | 950272 | 11.0 |iter: 57/1000\r", " 0.0 | 2.5681e-06 | 8.1725e-05 | 1271 | 494927872 | 79 | 966656 | 11.2 |iter: 58/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5908e-06 | 8.3415e-05 | 1304 | 503316480 | 82 | 983040 | 11.4 |iter: 59/1000\r", " 0.0 | 2.6246e-06 | 8.5049e-05 | 1343 | 511705088 | 85 | 999424 | 11.6 |iter: 60/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5822e-06 | 8.3677e-05 | 1343 | 520093696 | 85 | 1015808 | 11.8 |iter: 61/1000\r", " 0.0 | 2.5412e-06 | 8.2349e-05 | 1343 | 528482304 | 85 | 1032192 | 12.0 |iter: 62/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5481e-06 | 8.2970e-05 | 1368 | 536870912 | 87 | 1048576 | 12.2 |iter: 63/1000\r", " 0.0 | 2.5419e-06 | 8.3571e-05 | 1386 | 545259520 | 89 | 1064960 | 12.4 |iter: 64/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5034e-06 | 8.2305e-05 | 1386 | 553648128 | 89 | 1081344 | 12.6 |iter: 65/1000\r", " 0.0 | 2.4660e-06 | 8.1077e-05 | 1386 | 562036736 | 89 | 1097728 | 12.8 |iter: 66/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.4298e-06 | 7.9884e-05 | 1386 | 570425344 | 89 | 1114112 | 13.0 |iter: 67/1000\r", " 0.0 | 2.5069e-06 | 8.1380e-05 | 1451 | 578813952 | 92 | 1130496 | 13.1 |iter: 68/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.4710e-06 | 8.0218e-05 | 1451 | 587202560 | 92 | 1146880 | 13.3 |iter: 69/1000\r", " 0.0 | 2.5269e-06 | 7.9947e-05 | 1505 | 595591168 | 93 | 1163264 | 13.5 |iter: 70/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.6243e-06 | 8.0532e-05 | 1585 | 603979776 | 95 | 1179648 | 13.7 |iter: 71/1000\r", " 0.0 | 2.5916e-06 | 8.0265e-05 | 1587 | 612368384 | 96 | 1196032 | 13.9 |iter: 72/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5775e-06 | 8.0006e-05 | 1600 | 620756992 | 97 | 1212416 | 14.1 |iter: 73/1000\r", " 0.0 | 2.5543e-06 | 8.0566e-05 | 1607 | 629145600 | 99 | 1228800 | 14.3 |iter: 74/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.0 | 2.5379e-06 | 8.1113e-05 | 1618 | 637534208 | 101 | 1245184 | 14.5 |iter: 75/1000\r", " 0.0 | 2.5379e-06 | 8.1113e-05 | 1618 | 637534208 | 101 | 1245184 | 14.5 |reached target block errors\n" ] } ], "source": [ "model1 = Model()\n", "\n", "ber_plot.simulate(model1,\n", " np.arange(-2.5, 0.25, 0.25),\n", " batch_size=4096,\n", " max_mc_iter=1000,\n", " num_target_block_errors=100,\n", " compile_mode=\"reduce-overhead\",\n", " legend=\"Uncorrelated\",\n", " show_fig=False);" ] }, { "cell_type": "code", "execution_count": 21, "id": "a2a4c2f1-fd81-4544-a85a-46807d76ffbc", "metadata": { "execution": { "iopub.execute_input": "2026-02-13T15:10:41.693694Z", "iopub.status.busy": "2026-02-13T15:10:41.693373Z", "iopub.status.idle": "2026-02-13T15:11:38.006244Z", "shell.execute_reply": "2026-02-13T15:11:38.005177Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "EbNo [dB] | BER | BLER | bit errors | num bits | block errors | num blocks | runtime [s] | status\n", "---------------------------------------------------------------------------------------------------------------------------------------\n", " 0.0 | 7.2281e-02 | 7.2388e-01 | 606335 | 8388608 | 11860 | 16384 | 8.9 |iter: 0/1000\r", " 0.0 | 7.2281e-02 | 7.2388e-01 | 606335 | 8388608 | 11860 | 16384 | 8.9 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.25 | 4.6628e-02 | 5.3198e-01 | 391146 | 8388608 | 8716 | 16384 | 0.2 |iter: 0/1000\r", " 0.25 | 4.6628e-02 | 5.3198e-01 | 391146 | 8388608 | 8716 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.5 | 2.7184e-02 | 3.5211e-01 | 228039 | 8388608 | 5769 | 16384 | 0.2 |iter: 0/1000\r", " 0.5 | 2.7184e-02 | 3.5211e-01 | 228039 | 8388608 | 5769 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0.75 | 1.3476e-02 | 2.0020e-01 | 113045 | 8388608 | 3280 | 16384 | 0.2 |iter: 0/1000\r", " 0.75 | 1.3476e-02 | 2.0020e-01 | 113045 | 8388608 | 3280 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.0 | 5.9217e-03 | 9.4849e-02 | 49675 | 8388608 | 1554 | 16384 | 0.2 |iter: 0/1000\r", " 1.0 | 5.9217e-03 | 9.4849e-02 | 49675 | 8388608 | 1554 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.25 | 2.4785e-03 | 4.1199e-02 | 20791 | 8388608 | 675 | 16384 | 0.2 |iter: 0/1000\r", " 1.25 | 2.4785e-03 | 4.1199e-02 | 20791 | 8388608 | 675 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.5 | 7.9429e-04 | 1.5381e-02 | 6663 | 8388608 | 252 | 16384 | 0.2 |iter: 0/1000\r", " 1.5 | 7.9429e-04 | 1.5381e-02 | 6663 | 8388608 | 252 | 16384 | 0.2 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.75 | 2.7728e-04 | 4.7607e-03 | 2326 | 8388608 | 78 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.75 | 2.2185e-04 | 4.7607e-03 | 3722 | 16777216 | 156 | 32768 | 0.4 |iter: 1/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 1.75 | 2.5439e-04 | 5.0659e-03 | 6402 | 25165824 | 249 | 49152 | 0.6 |iter: 2/1000\r", " 1.75 | 2.5439e-04 | 5.0659e-03 | 6402 | 25165824 | 249 | 49152 | 0.6 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.2810e-05 | 1.3428e-03 | 443 | 8388608 | 22 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 4.5717e-05 | 1.0376e-03 | 767 | 16777216 | 34 | 32768 | 0.4 |iter: 1/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.0664e-05 | 1.0986e-03 | 1275 | 25165824 | 54 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.6535e-05 | 1.1292e-03 | 1897 | 33554432 | 74 | 65536 | 0.8 |iter: 3/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 6.3586e-05 | 1.1475e-03 | 2667 | 41943040 | 94 | 81920 | 1.0 |iter: 4/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 6.6459e-05 | 1.1902e-03 | 3345 | 50331648 | 117 | 98304 | 1.2 |iter: 5/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 6.2295e-05 | 1.1858e-03 | 3658 | 58720256 | 136 | 114688 | 1.4 |iter: 6/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 6.1318e-05 | 1.2131e-03 | 4115 | 67108864 | 159 | 131072 | 1.6 |iter: 7/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.7830e-05 | 1.1529e-03 | 4366 | 75497472 | 170 | 147456 | 1.8 |iter: 8/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.6243e-05 | 1.1414e-03 | 4718 | 83886080 | 187 | 163840 | 2.0 |iter: 9/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.2560e-05 | 1.0986e-03 | 4850 | 92274688 | 198 | 180224 | 2.2 |iter: 10/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.0 | 5.5909e-05 | 1.1546e-03 | 5628 | 100663296 | 227 | 196608 | 2.4 |iter: 11/1000\r", " 2.0 | 5.5909e-05 | 1.1546e-03 | 5628 | 100663296 | 227 | 196608 | 2.4 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.7762e-05 | 1.8311e-04 | 149 | 8388608 | 3 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2159e-05 | 2.7466e-04 | 204 | 16777216 | 9 | 32768 | 0.4 |iter: 1/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.0371e-05 | 2.4414e-04 | 261 | 25165824 | 12 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 7.8082e-06 | 1.9836e-04 | 262 | 33554432 | 13 | 65536 | 0.8 |iter: 3/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 6.2704e-06 | 1.7090e-04 | 263 | 41943040 | 14 | 81920 | 1.0 |iter: 4/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.0212e-05 | 2.2380e-04 | 514 | 50331648 | 22 | 98304 | 1.2 |iter: 5/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2415e-05 | 2.7030e-04 | 729 | 58720256 | 31 | 114688 | 1.4 |iter: 6/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2502e-05 | 2.5940e-04 | 839 | 67108864 | 34 | 131072 | 1.6 |iter: 7/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2345e-05 | 2.7805e-04 | 932 | 75497472 | 41 | 147456 | 1.8 |iter: 8/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2696e-05 | 2.9907e-04 | 1065 | 83886080 | 49 | 163840 | 2.0 |iter: 9/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3481e-05 | 3.1072e-04 | 1244 | 92274688 | 56 | 180224 | 2.2 |iter: 10/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2626e-05 | 3.0518e-04 | 1271 | 100663296 | 60 | 196608 | 2.4 |iter: 11/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2792e-05 | 3.0518e-04 | 1395 | 109051904 | 65 | 212992 | 2.6 |iter: 12/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2185e-05 | 2.9646e-04 | 1431 | 117440512 | 68 | 229376 | 2.8 |iter: 13/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.1500e-05 | 2.8890e-04 | 1447 | 125829120 | 71 | 245760 | 3.0 |iter: 14/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2472e-05 | 2.9755e-04 | 1674 | 134217728 | 78 | 262144 | 3.2 |iter: 15/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.2552e-05 | 2.9081e-04 | 1790 | 142606336 | 81 | 278528 | 3.4 |iter: 16/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3570e-05 | 2.9500e-04 | 2049 | 150994944 | 87 | 294912 | 3.7 |iter: 17/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3822e-05 | 3.0196e-04 | 2203 | 159383552 | 94 | 311296 | 3.9 |iter: 18/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3804e-05 | 2.9907e-04 | 2316 | 167772160 | 98 | 327680 | 4.1 |iter: 19/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3874e-05 | 2.9936e-04 | 2444 | 176160768 | 103 | 344064 | 4.3 |iter: 20/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3639e-05 | 2.9685e-04 | 2517 | 184549376 | 107 | 360448 | 4.5 |iter: 21/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3968e-05 | 2.9456e-04 | 2695 | 192937984 | 111 | 376832 | 4.7 |iter: 22/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4116e-05 | 2.9755e-04 | 2842 | 201326592 | 117 | 393216 | 4.9 |iter: 23/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3614e-05 | 2.9785e-04 | 2855 | 209715200 | 122 | 409600 | 5.1 |iter: 24/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4291e-05 | 2.9813e-04 | 3117 | 218103808 | 127 | 425984 | 5.3 |iter: 25/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3850e-05 | 2.9387e-04 | 3137 | 226492416 | 130 | 442368 | 5.5 |iter: 26/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4441e-05 | 3.0300e-04 | 3392 | 234881024 | 139 | 458752 | 5.7 |iter: 27/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4058e-05 | 3.0097e-04 | 3420 | 243269632 | 143 | 475136 | 5.9 |iter: 28/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3904e-05 | 3.0314e-04 | 3499 | 251658240 | 149 | 491520 | 6.1 |iter: 29/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3517e-05 | 3.0321e-04 | 3515 | 260046848 | 154 | 507904 | 6.3 |iter: 30/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3269e-05 | 3.0708e-04 | 3562 | 268435456 | 161 | 524288 | 6.5 |iter: 31/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3489e-05 | 3.0333e-04 | 3734 | 276824064 | 164 | 540672 | 6.7 |iter: 32/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3625e-05 | 3.0518e-04 | 3886 | 285212672 | 170 | 557056 | 6.9 |iter: 33/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.3815e-05 | 3.0518e-04 | 4056 | 293601280 | 175 | 573440 | 7.1 |iter: 34/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4292e-05 | 3.1026e-04 | 4316 | 301989888 | 183 | 589824 | 7.3 |iter: 35/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4173e-05 | 3.1342e-04 | 4399 | 310378496 | 190 | 606208 | 7.5 |iter: 36/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4305e-05 | 3.1321e-04 | 4560 | 318767104 | 195 | 622592 | 7.7 |iter: 37/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4024e-05 | 3.0674e-04 | 4588 | 327155712 | 196 | 638976 | 7.9 |iter: 38/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.25 | 1.4114e-05 | 3.0518e-04 | 4736 | 335544320 | 200 | 655360 | 8.1 |iter: 39/1000\r", " 2.25 | 1.4114e-05 | 3.0518e-04 | 4736 | 335544320 | 200 | 655360 | 8.1 |reached target block errors\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 1.8716e-05 | 1.8311e-04 | 157 | 8388608 | 3 | 16384 | 0.2 |iter: 0/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 9.3579e-06 | 9.1553e-05 | 157 | 16777216 | 3 | 32768 | 0.4 |iter: 1/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 6.2386e-06 | 6.1035e-05 | 157 | 25165824 | 3 | 49152 | 0.6 |iter: 2/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 4.6790e-06 | 4.5776e-05 | 157 | 33554432 | 3 | 65536 | 0.8 |iter: 3/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 5.0068e-06 | 4.8828e-05 | 210 | 41943040 | 4 | 81920 | 1.0 |iter: 4/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 4.8478e-06 | 5.0863e-05 | 244 | 50331648 | 5 | 98304 | 1.2 |iter: 5/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 4.1553e-06 | 4.3597e-05 | 244 | 58720256 | 5 | 114688 | 1.4 |iter: 6/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.6955e-06 | 4.5776e-05 | 248 | 67108864 | 6 | 131072 | 1.6 |iter: 7/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.2849e-06 | 4.0690e-05 | 248 | 75497472 | 6 | 147456 | 1.8 |iter: 8/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0518e-06 | 4.8828e-05 | 256 | 83886080 | 8 | 163840 | 2.0 |iter: 9/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9911e-06 | 5.5487e-05 | 276 | 92274688 | 10 | 180224 | 2.2 |iter: 10/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9902e-06 | 6.6121e-05 | 301 | 100663296 | 13 | 196608 | 2.4 |iter: 11/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.7230e-06 | 7.0425e-05 | 406 | 109051904 | 15 | 212992 | 2.6 |iter: 12/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.5082e-06 | 7.4114e-05 | 412 | 117440512 | 17 | 229376 | 2.8 |iter: 13/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.2743e-06 | 6.9173e-05 | 412 | 125829120 | 17 | 245760 | 3.0 |iter: 14/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0771e-06 | 6.8665e-05 | 413 | 134217728 | 18 | 262144 | 3.3 |iter: 15/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8961e-06 | 6.4625e-05 | 413 | 142606336 | 18 | 278528 | 3.5 |iter: 16/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7352e-06 | 6.1035e-05 | 413 | 150994944 | 18 | 294912 | 3.7 |iter: 17/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5975e-06 | 6.1035e-05 | 414 | 159383552 | 19 | 311296 | 3.9 |iter: 18/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8551e-06 | 6.1035e-05 | 479 | 167772160 | 20 | 327680 | 4.1 |iter: 19/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8610e-06 | 6.1035e-05 | 504 | 176160768 | 21 | 344064 | 4.3 |iter: 20/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0290e-06 | 6.9358e-05 | 559 | 184549376 | 25 | 360448 | 4.5 |iter: 21/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0839e-06 | 7.1650e-05 | 595 | 192937984 | 27 | 376832 | 4.7 |iter: 22/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9554e-06 | 6.8665e-05 | 595 | 201326592 | 27 | 393216 | 4.9 |iter: 23/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8419e-06 | 6.8359e-05 | 596 | 209715200 | 28 | 409600 | 5.1 |iter: 24/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0811e-06 | 7.0425e-05 | 672 | 218103808 | 30 | 425984 | 5.3 |iter: 25/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.1657e-06 | 7.4599e-05 | 717 | 226492416 | 33 | 442368 | 5.5 |iter: 26/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0739e-06 | 7.6294e-05 | 722 | 234881024 | 35 | 458752 | 5.7 |iter: 27/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9679e-06 | 7.3663e-05 | 722 | 243269632 | 35 | 475136 | 5.9 |iter: 28/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8769e-06 | 7.5277e-05 | 724 | 251658240 | 37 | 491520 | 6.1 |iter: 29/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7918e-06 | 7.6786e-05 | 726 | 260046848 | 39 | 507904 | 6.3 |iter: 30/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7046e-06 | 7.4387e-05 | 726 | 268435456 | 39 | 524288 | 6.5 |iter: 31/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6226e-06 | 7.2132e-05 | 726 | 276824064 | 39 | 540672 | 6.7 |iter: 32/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5455e-06 | 7.0011e-05 | 726 | 285212672 | 39 | 557056 | 6.9 |iter: 33/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.4932e-06 | 6.9754e-05 | 732 | 293601280 | 40 | 573440 | 7.1 |iter: 34/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7286e-06 | 6.9512e-05 | 824 | 301989888 | 41 | 589824 | 7.3 |iter: 35/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6548e-06 | 6.7634e-05 | 824 | 310378496 | 41 | 606208 | 7.5 |iter: 36/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5850e-06 | 6.5854e-05 | 824 | 318767104 | 41 | 622592 | 7.7 |iter: 37/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5706e-06 | 6.7295e-05 | 841 | 327155712 | 43 | 638976 | 7.9 |iter: 38/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7031e-06 | 6.8665e-05 | 907 | 335544320 | 45 | 655360 | 8.1 |iter: 39/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8232e-06 | 6.9967e-05 | 971 | 343932928 | 47 | 671744 | 8.3 |iter: 40/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7560e-06 | 6.8301e-05 | 971 | 352321536 | 47 | 688128 | 8.5 |iter: 41/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7002e-06 | 6.9552e-05 | 974 | 360710144 | 49 | 704512 | 8.7 |iter: 42/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8041e-06 | 7.0745e-05 | 1035 | 369098752 | 51 | 720896 | 9.0 |iter: 43/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7418e-06 | 6.9173e-05 | 1035 | 377487360 | 51 | 737280 | 9.2 |iter: 44/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7081e-06 | 7.0323e-05 | 1045 | 385875968 | 53 | 753664 | 9.4 |iter: 45/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6505e-06 | 6.8827e-05 | 1045 | 394264576 | 53 | 770048 | 9.6 |iter: 46/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5978e-06 | 6.8665e-05 | 1046 | 402653184 | 54 | 786432 | 9.8 |iter: 47/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5788e-06 | 6.9754e-05 | 1060 | 411041792 | 56 | 802816 | 10.0 |iter: 48/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.5272e-06 | 6.8359e-05 | 1060 | 419430400 | 56 | 819200 | 10.2 |iter: 49/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.4777e-06 | 6.7019e-05 | 1060 | 427819008 | 56 | 835584 | 10.4 |iter: 50/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.4300e-06 | 6.5730e-05 | 1060 | 436207616 | 56 | 851968 | 10.6 |iter: 51/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7396e-06 | 6.7945e-05 | 1218 | 444596224 | 59 | 868352 | 10.8 |iter: 52/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9692e-06 | 7.0077e-05 | 1345 | 452984832 | 62 | 884736 | 11.0 |iter: 53/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9629e-06 | 6.9913e-05 | 1367 | 461373440 | 63 | 901120 | 11.2 |iter: 54/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9717e-06 | 7.0844e-05 | 1396 | 469762048 | 65 | 917504 | 11.4 |iter: 55/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9238e-06 | 7.0672e-05 | 1398 | 478150656 | 66 | 933888 | 11.6 |iter: 56/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8734e-06 | 6.9454e-05 | 1398 | 486539264 | 66 | 950272 | 11.8 |iter: 57/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8247e-06 | 6.8277e-05 | 1398 | 494927872 | 66 | 966656 | 12.0 |iter: 58/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8590e-06 | 7.0190e-05 | 1439 | 503316480 | 69 | 983040 | 12.2 |iter: 59/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8610e-06 | 7.0040e-05 | 1464 | 511705088 | 70 | 999424 | 12.4 |iter: 60/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8149e-06 | 6.8911e-05 | 1464 | 520093696 | 70 | 1015808 | 12.6 |iter: 61/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8043e-06 | 6.8786e-05 | 1482 | 528482304 | 71 | 1032192 | 12.8 |iter: 62/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7604e-06 | 6.7711e-05 | 1482 | 536870912 | 71 | 1048576 | 13.0 |iter: 63/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7180e-06 | 6.6669e-05 | 1482 | 545259520 | 71 | 1064960 | 13.2 |iter: 64/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8141e-06 | 6.6584e-05 | 1558 | 553648128 | 72 | 1081344 | 13.4 |iter: 65/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7721e-06 | 6.5590e-05 | 1558 | 562036736 | 72 | 1097728 | 13.6 |iter: 66/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7611e-06 | 6.7318e-05 | 1575 | 570425344 | 75 | 1114112 | 13.8 |iter: 67/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8282e-06 | 6.8996e-05 | 1637 | 578813952 | 78 | 1130496 | 14.1 |iter: 68/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7946e-06 | 6.8883e-05 | 1641 | 587202560 | 79 | 1146880 | 14.3 |iter: 69/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7653e-06 | 6.8772e-05 | 1647 | 595591168 | 80 | 1163264 | 14.5 |iter: 70/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7269e-06 | 6.7817e-05 | 1647 | 603979776 | 80 | 1179648 | 14.7 |iter: 71/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9508e-06 | 6.8560e-05 | 1807 | 612368384 | 82 | 1196032 | 14.9 |iter: 72/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9400e-06 | 6.8458e-05 | 1825 | 620756992 | 83 | 1212416 | 15.1 |iter: 73/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9421e-06 | 6.9173e-05 | 1851 | 629145600 | 85 | 1228800 | 15.3 |iter: 74/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9128e-06 | 6.9066e-05 | 1857 | 637534208 | 86 | 1245184 | 15.5 |iter: 75/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9415e-06 | 6.8962e-05 | 1900 | 645922816 | 87 | 1261568 | 15.7 |iter: 76/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9787e-06 | 6.8860e-05 | 1949 | 654311424 | 88 | 1277952 | 15.9 |iter: 77/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0315e-06 | 6.9534e-05 | 2009 | 662700032 | 90 | 1294336 | 16.1 |iter: 78/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 3.0056e-06 | 6.9427e-05 | 2017 | 671088640 | 91 | 1310720 | 16.3 |iter: 79/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9699e-06 | 6.9324e-05 | 2018 | 679477248 | 92 | 1327104 | 16.5 |iter: 80/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9395e-06 | 6.9223e-05 | 2022 | 687865856 | 93 | 1343488 | 16.7 |iter: 81/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9041e-06 | 6.8389e-05 | 2022 | 696254464 | 93 | 1359872 | 16.9 |iter: 82/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8710e-06 | 6.8301e-05 | 2023 | 704643072 | 94 | 1376256 | 17.1 |iter: 83/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8372e-06 | 6.7498e-05 | 2023 | 713031680 | 94 | 1392640 | 17.3 |iter: 84/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.9095e-06 | 6.8132e-05 | 2099 | 721420288 | 96 | 1409024 | 17.5 |iter: 85/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8761e-06 | 6.7349e-05 | 2099 | 729808896 | 96 | 1425408 | 17.7 |iter: 86/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8434e-06 | 6.6584e-05 | 2099 | 738197504 | 96 | 1441792 | 17.9 |iter: 87/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8115e-06 | 6.5836e-05 | 2099 | 746586112 | 96 | 1458176 | 18.1 |iter: 88/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8120e-06 | 6.7139e-05 | 2123 | 754974720 | 99 | 1474560 | 18.3 |iter: 89/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7995e-06 | 6.7742e-05 | 2137 | 763363328 | 101 | 1490944 | 18.5 |iter: 90/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7690e-06 | 6.7006e-05 | 2137 | 771751936 | 101 | 1507328 | 18.7 |iter: 91/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7393e-06 | 6.6285e-05 | 2137 | 780140544 | 101 | 1523712 | 18.9 |iter: 92/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7773e-06 | 6.8178e-05 | 2190 | 788529152 | 105 | 1540096 | 19.2 |iter: 93/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7506e-06 | 6.8102e-05 | 2192 | 796917760 | 106 | 1556480 | 19.4 |iter: 94/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7257e-06 | 6.8029e-05 | 2195 | 805306368 | 107 | 1572864 | 19.6 |iter: 95/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7111e-06 | 6.9215e-05 | 2206 | 813694976 | 110 | 1589248 | 19.8 |iter: 96/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6846e-06 | 6.9132e-05 | 2207 | 822083584 | 111 | 1605632 | 20.0 |iter: 97/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6587e-06 | 6.9050e-05 | 2208 | 830472192 | 112 | 1622016 | 20.2 |iter: 98/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6357e-06 | 6.8970e-05 | 2211 | 838860800 | 113 | 1638400 | 20.4 |iter: 99/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7265e-06 | 7.0100e-05 | 2310 | 847249408 | 116 | 1654784 | 20.6 |iter: 100/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7068e-06 | 7.0011e-05 | 2316 | 855638016 | 117 | 1671168 | 20.8 |iter: 101/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7140e-06 | 6.9924e-05 | 2345 | 864026624 | 118 | 1687552 | 21.0 |iter: 102/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6879e-06 | 6.9251e-05 | 2345 | 872415232 | 118 | 1703936 | 21.2 |iter: 103/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6657e-06 | 6.9173e-05 | 2348 | 880803840 | 119 | 1720320 | 21.4 |iter: 104/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6586e-06 | 7.0248e-05 | 2364 | 889192448 | 122 | 1736704 | 21.6 |iter: 105/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6583e-06 | 7.0162e-05 | 2386 | 897581056 | 123 | 1753088 | 21.8 |iter: 106/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6370e-06 | 7.0077e-05 | 2389 | 905969664 | 124 | 1769472 | 22.0 |iter: 107/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6565e-06 | 7.0554e-05 | 2429 | 914358272 | 126 | 1785856 | 22.2 |iter: 108/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6324e-06 | 6.9913e-05 | 2429 | 922746880 | 126 | 1802240 | 22.4 |iter: 109/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6838e-06 | 6.9833e-05 | 2499 | 931135488 | 127 | 1818624 | 22.6 |iter: 110/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6599e-06 | 6.9210e-05 | 2499 | 939524096 | 127 | 1835008 | 22.8 |iter: 111/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7165e-06 | 6.9137e-05 | 2575 | 947912704 | 128 | 1851392 | 23.0 |iter: 112/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7680e-06 | 6.9066e-05 | 2647 | 956301312 | 129 | 1867776 | 23.2 |iter: 113/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7439e-06 | 6.8466e-05 | 2647 | 964689920 | 129 | 1884160 | 23.4 |iter: 114/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7223e-06 | 6.8401e-05 | 2649 | 973078528 | 130 | 1900544 | 23.6 |iter: 115/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6990e-06 | 6.7817e-05 | 2649 | 981467136 | 130 | 1916928 | 23.9 |iter: 116/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6802e-06 | 6.7759e-05 | 2653 | 989855744 | 131 | 1933312 | 24.1 |iter: 117/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6647e-06 | 6.7703e-05 | 2660 | 998244352 | 132 | 1949696 | 24.3 |iter: 118/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6623e-06 | 6.8156e-05 | 2680 | 1006632960 | 134 | 1966080 | 24.5 |iter: 119/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6433e-06 | 6.8097e-05 | 2683 | 1015021568 | 135 | 1982464 | 24.7 |iter: 120/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6431e-06 | 6.9040e-05 | 2705 | 1023410176 | 138 | 1998848 | 24.9 |iter: 121/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6759e-06 | 6.8975e-05 | 2761 | 1031798784 | 139 | 2015232 | 25.1 |iter: 122/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6553e-06 | 6.8911e-05 | 2762 | 1040187392 | 140 | 2031616 | 25.3 |iter: 123/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6369e-06 | 6.8848e-05 | 2765 | 1048576000 | 141 | 2048000 | 25.5 |iter: 124/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6179e-06 | 6.8786e-05 | 2767 | 1056964608 | 142 | 2064384 | 25.7 |iter: 125/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6160e-06 | 6.8725e-05 | 2787 | 1065353216 | 143 | 2080768 | 25.9 |iter: 126/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7195e-06 | 7.0095e-05 | 2920 | 1073741824 | 147 | 2097152 | 26.1 |iter: 127/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6984e-06 | 6.9552e-05 | 2920 | 1082130432 | 147 | 2113536 | 26.3 |iter: 128/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6776e-06 | 6.9017e-05 | 2920 | 1090519040 | 147 | 2129920 | 26.5 |iter: 129/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7309e-06 | 6.8956e-05 | 3001 | 1098907648 | 148 | 2146304 | 26.7 |iter: 130/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7102e-06 | 6.8433e-05 | 3001 | 1107296256 | 148 | 2162688 | 26.9 |iter: 131/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6898e-06 | 6.7919e-05 | 3001 | 1115684864 | 148 | 2179072 | 27.1 |iter: 132/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6706e-06 | 6.7867e-05 | 3002 | 1124073472 | 149 | 2195456 | 27.3 |iter: 133/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6526e-06 | 6.8269e-05 | 3004 | 1132462080 | 151 | 2211840 | 27.5 |iter: 134/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6375e-06 | 6.8216e-05 | 3009 | 1140850688 | 152 | 2228224 | 27.7 |iter: 135/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6748e-06 | 6.8163e-05 | 3074 | 1149239296 | 153 | 2244608 | 27.9 |iter: 136/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6952e-06 | 6.8112e-05 | 3120 | 1157627904 | 154 | 2260992 | 28.1 |iter: 137/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6758e-06 | 6.7622e-05 | 3120 | 1166016512 | 154 | 2277376 | 28.3 |iter: 138/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7052e-06 | 6.7575e-05 | 3177 | 1174405120 | 155 | 2293760 | 28.5 |iter: 139/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7173e-06 | 6.7961e-05 | 3214 | 1182793728 | 157 | 2310144 | 28.8 |iter: 140/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6990e-06 | 6.7912e-05 | 3215 | 1191182336 | 158 | 2326528 | 29.0 |iter: 141/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7435e-06 | 6.8291e-05 | 3291 | 1199570944 | 160 | 2342912 | 29.2 |iter: 142/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7244e-06 | 6.7817e-05 | 3291 | 1207959552 | 160 | 2359296 | 29.4 |iter: 143/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7377e-06 | 6.9033e-05 | 3330 | 1216348160 | 164 | 2375680 | 29.6 |iter: 144/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7214e-06 | 6.9396e-05 | 3333 | 1224736768 | 166 | 2392064 | 29.8 |iter: 145/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7029e-06 | 6.8924e-05 | 3333 | 1233125376 | 166 | 2408448 | 30.0 |iter: 146/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6846e-06 | 6.8458e-05 | 3333 | 1241513984 | 166 | 2424832 | 30.2 |iter: 147/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6666e-06 | 6.7999e-05 | 3333 | 1249902592 | 166 | 2441216 | 30.4 |iter: 148/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6488e-06 | 6.7546e-05 | 3333 | 1258291200 | 166 | 2457600 | 30.6 |iter: 149/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6313e-06 | 6.7098e-05 | 3333 | 1266679808 | 166 | 2473984 | 30.8 |iter: 150/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6728e-06 | 6.7460e-05 | 3408 | 1275068416 | 168 | 2490368 | 31.0 |iter: 151/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6584e-06 | 6.7418e-05 | 3412 | 1283457024 | 169 | 2506752 | 31.2 |iter: 152/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.6412e-06 | 6.6980e-05 | 3412 | 1291845632 | 169 | 2523136 | 31.4 |iter: 153/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7049e-06 | 6.7336e-05 | 3517 | 1300234240 | 171 | 2539520 | 31.6 |iter: 154/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7135e-06 | 6.7295e-05 | 3551 | 1308622848 | 172 | 2555904 | 31.8 |iter: 155/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7433e-06 | 6.8033e-05 | 3613 | 1317011456 | 175 | 2572288 | 32.0 |iter: 156/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7267e-06 | 6.7989e-05 | 3614 | 1325400064 | 176 | 2588672 | 32.2 |iter: 157/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7103e-06 | 6.7945e-05 | 3615 | 1333788672 | 177 | 2605056 | 32.4 |iter: 158/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7157e-06 | 6.8283e-05 | 3645 | 1342177280 | 179 | 2621440 | 32.6 |iter: 159/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7100e-06 | 6.8617e-05 | 3660 | 1350565888 | 181 | 2637824 | 32.8 |iter: 160/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7212e-06 | 6.8570e-05 | 3698 | 1358954496 | 182 | 2654208 | 33.0 |iter: 161/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7074e-06 | 6.8899e-05 | 3702 | 1367343104 | 184 | 2670592 | 33.2 |iter: 162/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7782e-06 | 7.0339e-05 | 3822 | 1375731712 | 189 | 2686976 | 33.4 |iter: 163/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8083e-06 | 7.0653e-05 | 3887 | 1384120320 | 191 | 2703360 | 33.7 |iter: 164/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7985e-06 | 7.0595e-05 | 3897 | 1392508928 | 192 | 2719744 | 33.9 |iter: 165/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.7975e-06 | 7.0538e-05 | 3919 | 1400897536 | 193 | 2736128 | 34.1 |iter: 166/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8227e-06 | 7.1208e-05 | 3978 | 1409286144 | 196 | 2752512 | 34.3 |iter: 167/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8116e-06 | 7.1509e-05 | 3986 | 1417674752 | 198 | 2768896 | 34.5 |iter: 168/1000\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 2.5 | 2.8323e-06 | 7.2165e-05 | 4039 | 1426063360 | 201 | 2785280 | 34.7 |iter: 169/1000\r", " 2.5 | 2.8323e-06 | 7.2165e-05 | 4039 | 1426063360 | 201 | 2785280 | 34.7 |reached target block errors\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABVgAAAOECAYAAABU1lq/AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd0VNXax/HvTHpIIRC6dFBQQOkg0ouAiAJSRBRQwYKIDcvVK6De66tyLUhRFCnSBAWUXqX3DtJ7KAFCQhIISSYz5/1jzJiQHhJOEn6ftVhrzj777PPMnLNnyDN79rYYhmEgIiIiIiIiIiIiIllmNTsAERERERERERERkfxKCVYRERERERERERGRbFKCVURERERERERERCSblGAVERERERERERERySYlWEVERERERERERESySQlWERERERERERERkWxSglVEREREREREREQkm5RgFREREREREREREckmJVhFREREREREREREskkJVhEREZFbUKFCBSwWCxaLhdWrV5sdTq5KfJ4Wi4VTp06ZHU62nDp1KtnzEBERERG5VUqwioiISIHWr1+/ZAm11P55enpSrFgx6tWrx0svvcTq1asxDMPs0FO1c+dOV9zdunVLtq9FixYZPldvb29KlCjBgw8+yOuvv8727dtNeiZ3psxco/T+FfQkfm5L+oVIav98fX0pVaoUTZs25c0332THjh1mhywiIiL5gBKsIiIicsez2WyEhYWxY8cOvvvuO1q2bEnLli05efJkjrQ/adIkVwKnRYsWt9TW/PnzXY87deqU5ePj4uK4dOkSmzZt4uuvv6Z+/fp069aNsLCwW4pLpCC4ceMGoaGhrF+/ni+//JJ69erRqVMnQkNDTYln+PDhrveOfv36mRKDiIiIZMzd7ABEREREbpegoCAaNGiQojwmJoaQkJBkP3tfs2YNzZo1Y9OmTdx11123Mcr0JSZYrVYrjzzySJr1SpcuTc2aNVOUX79+nZMnT3Lu3DlX2Zw5czh27Bjr16/H398/54OWVKV1jdJTpEiRXIrmzlO5cmWqVKmSrOz69escO3YsWUJ14cKFtGzZkg0bNuj1FxERkVQpwSoiIiJ3jFq1arFkyZI09x89epShQ4fy+++/A3D27Flee+01fv311zSPuZ1zkV64cIGdO3cCUL9+fYoXL55m3bZt2zJp0qQ09+/a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n3/+ic1mo2HDhjn/AoqIiBR0hoiIiEgB1rdvXwPI8j9PT09j2LBhRnx8fLrtly9f3nXMn3/+mWa9kydPGnfddVe650w8/qeffnKV/fvf/870c23evHm2nmtAQIAxevToDNtPeszJkyfTrBcfH2/06tUr0+cfPHiw4XA4Mjz/jh07jJIlS2a63SFDhqRo4+TJk8nqpCcqKspo3Lixq66Xl5exZMmSDONMT3avUU49p6QmTpzoOqZ58+ZZeh7nz583atSokamYPTw8jBkzZqTb3rBhw1z1+/btm6VYsiJpfx02bFiWjn3rrbdcx1qtVuPw4cPJ9q9cudLw9PTM8PW49957jUuXLmX6vWPbtm1G4cKF020ztf5os9mMQYMGZfkea9iwYZZeFxERETEMTREgIiIidzyLxYK/vz8VK1bkscce46uvviIkJIThw4fj4eGRI+eoUKECe/bs4dNPP6VZs2YUL1482ejVpJJOD5DT869arVYCAwO5++676dGjB+PHjyckJIRBgwbl2Dk8PDyYPn06U6dOpXLlymnWq1GjBn/88QejRo3K1BQMderU4cCBA7z99tvpLpTk7e1Nly5d6NOnT3bCd/H392fJkiWuEX1xcXE8/vjjLF++/JbaLQhKlSrFli1bGDZsGEFBQanWsVqtdOjQgZ07d9KrV6/bHGHOe+utt1yLzTkcDv7zn/8k29+qVStWr15NzZo1Uz3e19eXF198ka1bt1KsWLFMn7devXrs37+f999/n0aNGlGkSJFko1fT4u7uzujRo1m3bh3t2rXDzc0tzboWi4XatWvz8ccfJ5szV0RERDLHYhiZWGVBRERERG6LuLg4goODuXbtGiVLluT8+fO3NP9rXrBv3z527tzJpUuXsFgslChRgkaNGlG1atVst2m329m8eTOHDh3i8uXLgHPuyWrVqlG/fn1XIkxyX0JCAhs3buTQoUNcuXIFX19fypQpQ/PmzbOUSCwoDMNg+/btbN++nYiICIKCgihbtiwtWrRwLT5lhsjISNavX09ISAjh4eG4u7tTuHBhqlSpQq1atQgODjYtNhERkfxOCVYRERGRPGTp0qWueTmfe+45fvzxR5MjEhERERGR9GiKABEREZE8JOn0AJ06dTIxEhERERERyYyMJ+8RERERkdumVq1aDBs2DIC2bduaHI2IiIiIiGREUwSIiIiI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R1SuXJmVK1e6fjr97bff8u67795yu0kTmVu2bEm37tatW1M9LqfUru1c/PDEiRPZng+zTp06AJw5c4bTp2/tM8Tf358lS5a45gN9/fXXGT16dKp1E2MH2LBhwy2dNz/y8vKialXnL1Ayuo927dqFzWYDkt9HlStXxsfHubbKtm3b0m0jvf130rVQglVEclSpQB8+7VqLpa81o0ONf+YFOn0lhldn7OLR0etZdywMQ3lWERGRvMWzEDR5FYbshdYfgndhZ7lhh10/w7d1YP5rEHnWzChFRPKEatWqsXz5cteov88++4yPPvroltosXbo01as758CeNWsW165dS7We3W5n0qRJgHOkYWIiMyd17twZAMMw+Oabb7LVxqOPPup6/NVXX91yTIGBgSxbtoy6desCMHjwYMaNG5eiXps2bVxzl44aNQrjDvzjs02bNgD89ddfyZLxN/vxxx9THAPg7u5OixYtAFi2bFmao5AdDgeTJ09ON4475VoowSoiuaJKcT/G9anLvEFNaFzpn58F/HU+imcn72TMASsnw66bGKGIiIikyssPmr4Jr+2DFv8Cr0BnuSMBdkyEUbVh0VCIurWffIqI5He1atVi6dKlBAQEADBs2DD+97//3VKbgwYNAuDy5cu8+uqrqdYZMWIEBw4cAGDAgAF4eXnd0jlT065dO9fq8F988YVrkam07Nu3j/nz5ycra9OmjSsZ+u233zJz5sw0j79y5Qo3btzIMK7ChQuzfPly18jIQYMG8cMPP6So88orrwCwceNGXn/99RQLQSV18eLFZInGguCll15yLYI1cOBAoqKiUtRZtmwZEyZMAKBBgwau0cFJ2wCIi4vjhRdeSLEQGsCnn37Kvn370ozjTroWmoO1ALPZbK6h3iJmua9kISb3q8P641cYuewoBy5EA3A0yspjYzfzYadqdKtd2vRJ3EXuNImfD/qcEDFHvuiDbj7Q5A2o8yzWreOwbv0eS/w1sMfD1vEYO6fgqNMPR+NX74yVyqXAyRf9MBU2mw3DMHA4HOkmKuTWJX19E1/zm9WpU4cFCxbQoUMHrl+/zltvvYW3t7crOXVzOxldt4EDBzJt2jQ2bdrExIkTOX36NC+++CIVK1bkwoULTJw4kblz5wLOn3G///77KdpLOkowvXNlFNfUqVNp1KgR4eHh9OzZk59//pkePXpQtWpV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PaT9+/frtdde080331wT8QEAACpFgRUAAABV8s033/ja11xzjebPn28uTBm++OILZWVlSZIuu+wyRUaW/ZHX/zpiY2OVn58vSVq6dGmlBVaPx6OtW7f6tqtaZK4pS5YsUXp6uiQpOTlZzZs3N5zIO7p31apV5b6+Z88ezZo1S//5z38kSYcOHdKMGTO0ZMmSCs97++2367HHHlNxcbHmzp2rm266SRaLJaTZAQAAAlE3nmMCAABAvVBcXKxt27b5tvv162cwTdn8pweYOHFimfucfh3Tp0/3td97771K5wLdv3+/7Ha7b7uuFFj/+te/+tr1ZURnjx499O6772rkyJG+ny1btkw//vhjhce1bt1aV1xxhSRp7969vlHLAAAAtY0CKwAAAAK2a9cuFRYW+rbrcoE1IiJC48ePL3Of06/jpptuUqdOnSR5R1Bu2bKlwvfwnx4gMjJSffv2rW7satu+fbs2bdokSerevXutLCYWKlarVTNmzPBtu1yuSv8bSN5RuiVeeumlmogGAABQKQqsAAAACJj/Y/WS6kRh0d93333nG5l6ySWXlPuI/OnTA5x11lmaNGmS72dLly6t8H38j+/Vq5eio6ODDx0ib7zxhq89efLkKh+/YcMGXX/99eratauio6PVpk0bXXLJJXr22WeVk5MTuqDl6NWrV6ntykawSt75fBs1aiRJWrVqVUDHAAAAhBoFVgAAAATMf+Rm586dFR8fbzDNmfynB5gwYUK5+/lfR//+/WW1WksVWJctW1bh+9TFBa7+/e9/+9rjxo0L+Lji4mLdeuutGjFihBYuXKiMjAwVFRXp2LFj2rRpk+666y6dd955+uqrr2oits+pU6dKbcfGxlZ6TGxsrIYMGSJJcjqdvnlcAQAAahMFVgAAAATMf+RmXZweYMWKFb52efOvSqWvo6RAOmLECDVr1kyStHPnTt9iUZUdXxfmXz1w4ID27NkjyTtlwcUXXxzQcR6PR7/+9a/18ssvl/p5nz59NHLkSPXo0UOSdPDgQSUlJenQoUOhDe6nZHqDEoGOjh4xYoSv/eGHH4Y0EwAAQCAosAIAACBgdbnAWlBQoLVr10qSunXrpt69e5e7b1kF0sjISN+iSVL50wRkZWXpyJEjZxxv0vr1633tPn36qEmTJgEd989//lOLFy/2bY8cOVLp6enasWOH1q5dq/T0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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "r_tx = exp_corr_mat(0.4, num_tx_ant)\n", "r_rx = exp_corr_mat(0.7, num_rx_ant)\n", "model2 = Model(KroneckerModel(r_tx, r_rx))\n", "\n", "ber_plot.simulate(model2,\n", " np.arange(0,2.6,0.25),\n", " batch_size=4096,\n", " max_mc_iter=1000,\n", " num_target_block_errors=200,\n", " compile_mode=\"reduce-overhead\",\n", " legend=\"Kronecker model\");" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "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.12.12" } }, "nbformat": 4, "nbformat_minor": 5 }