{ "cells": [ { "cell_type": "markdown", "id": "90bc98c1", "metadata": {}, "source": [ "# Working with DeepMIMO Scenarios\n", "**NeoRadium**’s [DeepMimoData](https://interdigitalinc.github.io/NeoRadium/html/source/API/DeepMIMO.html#neoradium.deepmimo.DeepMimoData) class can be used with [DeepMIMO](https://www.deepmimo.net) scenarios to generate trajectories of user movements within a ray-tracing environment. By employing the [TrjChannel](https://interdigitalinc.github.io/NeoRadium/html/source/API/Channels.html#neoradium.trajchannel.TrjChannel) class, designed as a trajectory-based channel model, you can construct sequences of channels that adhere to temporal and spatial consistency, based on the provided trajectory.\n", "\n", "This notebook shows how to:\n", "* Use the [DeepMimoData](https://interdigitalinc.github.io/NeoRadium/html/source/API/DeepMIMO.html#neoradium.deepmimo.DeepMimoData) class to open a [DeepMIMO](https://www.deepmimo.net) scenario\n", "* Use its visialization method to draw the scenario map\n", "* Create randomly generated trajectories\n", "* Create your own trajectories interactively on the scenario map\n", "* Draw the generated trajectory on the map\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "id": "cda1e812", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import os, time\n", "import scipy\n", "import matplotlib.pyplot as plt\n", "\n", "from neoradium import DeepMimoData, Carrier, random" ] }, { "cell_type": "code", "execution_count": 2, "id": "bd6fa364", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scenario: asu_campus_3p5\n", "File Version: 4.0.0a3\n", "Carrier Frequency: 3.5 GHz\n", "Data Folder: /Users/shahab/data/RayTracing/DeepMIMO/Scenarios/V4/asu_campus_3p5/\n", "\n", "UE Grids: (1)\n", " rx_grid: ID:0, Num UEs:131,931, xRange:-225.55..184.45, yRange:-160.17..159.83\n", "\n", "Base Stations: (1)\n", " BS: ID:1, Position:(166.00,104.00,22.00)\n" ] } ], "source": [ "# Replace this with the folder on your computer where you store DeepMIMO scenarios\n", "dataFolder = \"/data/RayTracing/DeepMIMO/Scenarios/V4/\"\n", "DeepMimoData.setScenariosPath(dataFolder)\n", "\n", "# Get information about a scenario:\n", "DeepMimoData.showScenarioInfo(\"asu_campus_3p5\")" ] }, { "cell_type": "code", "execution_count": 3, "id": "04532b4f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "DeepMimoData Properties:\n", " Scenario: asu_campus_3p5\n", " Version: 4.0.0a3\n", " UE Grid: rx_grid\n", " Grid Size: 411 x 321\n", " Base Station: BS (at [166. 104. 22.])\n", " Total Grid Points: 131,931\n", " UE Spacing: [1. 1.]\n", " UE bounds (xyMin, xyMax) [-225.55 -160.17], [184.45 159.83]\n", " UE Height: 1.50\n", " Carrier Frequency: 3.5 GHz\n", " Num. paths (Min, Avg, Max): 0, 6.21, 10\n", " Num. total blockage: 46774\n", " LOS percentage: 19.71%\n", "\n" ] } ], "source": [ "# Using the above information we create a DeepMimoData object for user grid 0 and base station 1:\n", "deepMimoData = DeepMimoData(\"asu_campus_3p5\", baseStationId=1, gridId=0)\n", "deepMimoData.print()\n" ] }, { "cell_type": "code", "execution_count": 4, "id": "f1c5da66", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(
,\n", " )" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAp4AAAHACAYAAAALGmiJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8ekN5oAAAACXBIWXMAAA9hAAAPYQGoP6dpAABGiUlEQVR4nO3dCbxM9f/H8c+1Xfsu8rMnQoUoS+lnK2mVUkmFRJaSpSwttkI/FYlKm+X3b/f7lRZSlrQRpRCFQiRr4tovl/N/fL515jdz79xrrjtz5pwzr+fjMa45c2buOXPmzrzn811OkmVZlgAAAAAxlivWvwAAAABQBE8AAAA4guAJAAAARxA8AQAA4AiCJwAAABxB8AQAAIAjCJ4AAABwBMETAAAAjiB4AgAAwBEETwBhHTx4UO666y4pV66cJCUlSb9+/eK9SYixRYsWmWP9n//8J96bAsCnCJ5AFE2fPt18cOvlyy+/zHC7nqG2YsWK5varr75a3GzMmDFmf3r16iX/93//J7fffnum61apUiWi/dmyZYv07NnTrJ+cnCxnnHGGtGvXTr766quw6//666/StWtXOeussyR//vwmBF966aUyfPjwsOt/8MEHkitXLtmxY4e5r30s/vvf/2ZYd8SIEea2P/74I7CsS5cuUrhw4VPux6FDh+TRRx+V888/XwoWLCjFihWTZs2ayb///W9zjMOFeN3mc889VwoVKiSlSpWSevXqyX333Sfbtm0Tp73++uvy9NNPO/57ASBPvDcA8CMNSfrhfskll4Qs/+yzz2Tr1q0mdLndwoULpXHjxpmGvOzScHnllVea/2sltXbt2iYgarjV0DZx4kS59957A+v/8ssvcuGFF0qBAgXkzjvvNGF1+/bt8t1338m//vUvGTlyZIbfMXv2bGnQoIEJqBo8baNGjZL27duboJlTO3fulFatWslPP/0kt9xyi9xzzz1y9OhRE247d+4sc+bMkddee01y585t1j9+/LgJy2vXrjW36z5qEF2zZo15jVx//fVSvnx5cZL+3tWrV1PFBuA4gicQAxqwZs6cKc8884zkyZMn5ANfg1Fwlc2tdu3aZcJhNOzdu1duvPFGEyI1gGoF0zZgwABp06aNCUH63DRt2tQsnzBhggloK1askMqVK2fYtnA09GlIDaaVRX2Md99914TPnNLwqKFTH+/aa68N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OXOmnHPOOWad8847T+bMmSPxNnr0aGnatKkULFhQihcvHnYdPTtU+subb74Zss6iRYvkggsuMKM7q1evLtOnTxcv7NuWLVvkqquuMuucccYZ8sADD0haWprr9y2cKlWqZDhOjz/+eLZfp2717LPPmn3UbW/UqJEsW7ZMvGTEiBEZjo++H9iOHj0qffr0kVKlSknhwoXlhhtukJ07d4obff7553LNNdeYM+DofsyaNSvkdh0vO2zYMDnzzDPN+2br1q3l559/Dlnnzz//lE6dOpmJ1/XvU99nDx48KF7Yvy5dumQ4lldccYVn9g8geLrY2rVrzSk6X3jhBVmzZo1MmDBBpkyZIg8++GDIadMuv/xyqVy5sixfvlyeeOIJ8yHz4osvBtZZvHixdOzY0bz5fP/999KuXTtzWb16tcSTBugOHTpIr169slxv2rRpsn379sBFt922adMmE95atGghK1askH79+sldd90lH3/8sbh5306cOGG2W9fT4zNjxgwTKvUD0+37lplRo0aFHKd77703W69Tt3rrrbdkwIAB5kvfd999J3Xr1pU2bdrIrl27xEvq1KkTcny+/PLLwG39+/eXDz74wHxB/eyzz8xpgdu3by9udOjQIXMM9MtAOPqF5plnnjHvlUuXLpVChQqZ46Xh2qahTN9T582bJx9++KEJez169BAv7J/SoBl8LN94442Q2928f4B+O4SHjBs3zqpatWrg+nPPPWeVKFHCSk1NDSwbPHiwVbNmzcD1m266ybrqqqtCHqdRo0bW3XffbbnBtGnTrGLFioW9TV+i7777bqb3HTRokFWnTp2QZTfffLPVpk0by837NmfOHCtXrlzWjh07Asuef/55q2jRooFj6fZ9C1a5cmVrwoQJmd4eyevUrS666CKrT58+gesnTpywypcvb40dO9byiuHDh1t169YNe9u+ffusvHnzWjNnzgws++mnn8zf3pIlSyw3S//+cPLkSatcuXLWE088EbJ/ycnJ1htvvGGu//jjj+Z+33zzTWCdjz76yEpKSrJ+//13y03Cvf917tzZuu666zK9j5f2D4mJiqfHpKSkSMmSJQPXlyxZIpdeeqnky5cvsEy/3a9bt0727t0bWEebm4LpOrrcC7QJsHTp0nLRRRfJ1KlTTVOazav7ptunXR7Kli0bst1aGdRKhRf3TZvWtam2fv36pqIZ3G0gktepG2lFWiu0wcchV65c5rpbj0NmtLlZm2+rVatmKmLa1UPp/h0/fjxkH7UZvlKlSp7bR20l2LFjR8i+6PnBtXuEvS/6U5ufGzZsGFhH19fjqhVSL9AuONo9p2bNmqZVZc+ePYHb/LB/8Lc88d4ARO6XX36RSZMmyZNPPhlYpm+y2gc0mB1m9LYSJUqYn8EBx15Hl7udNt+2bNnS9IP85JNPpHfv3qavUt++fc3tme2bBrgjR46YPl5ulNl227d5bd/0eGhfVP1SpF0Hhg4dapoAx48fH/Hr1I3++OMP0y0i3HHQrjBeocFLu3JoUNHjMnLkSNPfVrvb6POvXwjS90X2yntEMHt7s3q/058a2oLlyZPHvHa9sL/azK7dIPTvacOGDabrVdu2bU3gzJ07t+f3D/5H8IyDIUOGyL/+9a8s1/npp59COv///vvv5g1H+w12795d/LRvWXnkkUcC/9dKmvZ/0mqaHTy9vG9ul5391T6QtvPPP98EmbvvvlvGjh3LKf1cQINJ8PHRIKr9bd9++21XfYHBqd1yyy2B/2uriR5PHXiqVdBWrVrFdduASBA842DgwIFmZGJWtDnMph39dYCJjpJOPxijXLlyGUaf2tf1tqzWsW+P575ll35gPvroo5KammoCTWb7pqM5o/2BGs190+1OPzI60uMWi32L9v7qcdKmdp2ZQatskbxO3Ui7eGgVyam/H6dodbNGjRqmFeWyyy4zXQr27dsXUvX04j7a26vbrqPabXq9Xr16gXXSDwzT16qOBPfa/tp/g/o61WOpwdNv+wf/IXjGQZkyZcwlElrp1NDZoEEDM7pb++kEa9KkiTz00EOmj1bevHnNMh3JqB/2dvOlrrNgwQIzKtqm6+jyeO7b6dDR3bpfdhVN9yH91FBe2DfdPp1yST8g7GYx3W4NlbVr13Z836K9v3qc9LVq71skr1M30sqt/u3p3489m4LONKHX77nnHvEq7a6izbS333672T89JrpPOo2S0r632gfUqddatGjzs4Yr3Rc7aGrXFO3baM8wofukIVv7tuq+q4ULF5rjql+YvGbr1q2mj6cdtP22f/CheI9uQua2bt1qVa9e3WrVqpX5//bt2wOX4BGbZcuWtW6//XZr9erV1ptvvmkVLFjQeuGFFwLrfPXVV1aePHmsJ5980oxW1RGuOor1hx9+sOJp8+bN1vfff2+NHDnSKly4sPm/Xg4cOGBuf//9962XXnrJbOfPP/9sRkbrvg0bNizwGBs3bjTLHnjgAbNvzz77rJU7d25r7ty5rt63tLQ069xzz7Uuv/xya8WKFWZ7y5QpYw0dOtT1+5be4sWLzYh23Y8NGzZYr776qtmXO+64I1uvU7fSbdVR0dOnTzcjhnv06GEVL148ZEYCtxs4cKC1aNEia9OmTeb9oHXr1lbp0qWtXbt2mdt79uxpVapUyVq4cKH17bffWk2aNDEXN9K/IfvvST/Cxo8fb/6vf3Pq8ccfN8fnvffes1atWmVGgOtMIEeOHAk8xhVXXGHVr1/fWrp0qfXll19aZ599ttWxY0fL7funt91///1mtgE9lvPnz7cuuOACs/1Hjx71xP4BBE8X06l49I0n3CXYypUrrUsuucR8OP7jH/8wb7zpvf3221aNGjWsfPnymSl6Zs+ebcWbTgsSbt8+/fTTwBQg9erVM8GtUKFCZjqYKVOmmOlsgun6up7uW7Vq1czz5vZ9U7/++qvVtm1bq0CBAiYEaDg4fvy46/ctveXLl5vpuXTaqPz581u1atWyxowZE/JBGOnr1K0mTZpkgpkeB51e6euvv7a8RKfhOvPMM83263Ov13/55ZfA7RrKevfubaa80i8E119/fcgXXDfRv4lwf1v6N2dPqfTII4+YLzr6WtMv7uvWrQt5jD179pggpu8tOoVZ165dA18K3bx/hw8fNl9W9YudFg90GrPu3btn+BLk5v0DkvSfeFddAQAA4H/M4wkAAABHEDwBAADgCIInAAAAHEHwBAAAgCMIngAAAHAEwRMAAACOIHgCAADAEQRPAAAAOILgCQAAAEcQPAF41okTJ6Rp06bSvn37kOUpKSlSsWJFeeihh+K2bQCAjDhlJgBPW79+vdSrV09eeukl6dSpk1l2xx13yMqVK+Wbb76RfPnyxXsTAQB/I3gC8LxnnnlGRowYIWvWrJFly5ZJhw4dTOisW7duvDcNABCE4AnA8/RtrGXLlpI7d2754Ycf5N5775WHH3443psFAEiH4AnAF9auXSu1atWS8847T7777jvJkydPvDcJAJAOg4sA+MLUqVOlYMGCsmnTJtm6dWu8NwcAEAYVTwCet3jxYvnnP/8pn3zyiTz22GNm2fz58yUpKSnemwYACELFE4CnHT58WLp06SK9evWSFi1ayCuvvGIGGE2ZMiXemwYASIeKJwBPu++++2TOnDlm+iRtalcvvPCC3H///WagUZUqVeK9iQCAvxE8AXjWZ599Jq1atZJFixbJJZdcEnJbmzZtJC0tjSZ3AHARgicAAAAcQR9PAAAAOILgCQAAAEcQPAEAAOAIgicAAAAcQfAEAACAIwieAAAAcATBEwAAAI4geAIAAMARBE8AAAA4guAJAAAARxA8AQAAIE74fwoOLykP/HpfAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Draw a map of the scenario showing the Line-Of-Sight (LOS) vs Non-Line-Of-Sight (NLOS) communication\n", "# between the UEs and the base station.\n", "deepMimoData.drawMap(\"LOS-NLOS\") # Also try \"1stPathDelays\" or \"1stPathPowers\"\n" ] }, { "cell_type": "markdown", "id": "860784a9", "metadata": {}, "source": [ "## Creating Random Trajectory" ] }, { "cell_type": "code", "execution_count": 5, "id": "2f1b813c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Trajectory Properties:\n", " start (x,y,z): (-164.55, 39.83, 1.50)\n", " No. of points: 203482\n", " curIdx: 0 (0.00%)\n", " curSpeed: [0.85 0.85 0. ]\n", " Total distance: 244.15 meters\n", " Total time: 203.481 seconds\n", " Average Speed: 1.200 mps\n", " Carrier Frequency: 3.5 GHz\n", " Paths (Min, Avg, Max): 3, 8.87, 10\n", " Totally blocked: 0\n", " LOS percentage: 27.38%\n", "\n" ] }, { "data": { "text/plain": [ "(
,\n", " )" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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EEL9hNAHAIAfltDUFYycXjFJHzcVtKufPRNP7ty55ZprrpHZs2ebFtsjR46YuUK1z6j+v1ChQiZ86sBpHT2P/8RYybVvIxEdca/9Po4fPy558uRxXx4zgkleAADOs0KtCOIlViT87Dx37pwZXKyDiD3HbRisHR/Wkn1tE6ASCgAAQocGQkJhVGCeAAAAADiOSigAAGEs1MYk0McPvqISCgAAAMcRQgEAAOA4QigAAAAcRwgFAACA4wihAAAAcByj4wEAQAjZLSIOTlYvuloS85IGAyEUAACEUACtqOvuOPiYuqrPtqAG0YYNG0qNGjXktddek2hCczwAAAgR/zgcQMX1eL5VXmNiYpI9DR+etklbP//8c3n++efFn6G2b9++EuqohCLNHrxW5NVmInmyily4JHLh8n8/f9or0u0rkeOxwd5LAAD8Y//+/e7/z5w5U4YOHSrbtmkVNU6uXLnc/7csSy5duiSZMqUctQoUKCCh6Pz585IlS5aA3T+VUKTJQ9eJTG8jUiiHSJaMIjmziOTLJlI4p0jx3CJtK4nMf1Akd+DeuwAAOKpYsWLuU968eU310z6/detWyZ07t3z77bdSq1YtyZo1qyxfvly2b98urVu3lqJFi5qQev3118vixYuTrVzGxsbKgAED5Morr5ScOXNKnTp1ZNmyZfFu8+OPP5rb5ciRQ/Lnzy/NmjWTo0ePSpcuXeT777+XCRMmuCu0f/31l7mNXn7DDTeYfbviiitk8ODBcvHixXj78dhjj5l9KVSokLnPbt26ye233x7vsS9cuCBFihSR999/P13PJ5VQpNqj14tMahn3/4mrRV5aLpI5o0jmDHE/r8wt8undInVLxAXRZh+JnDof7L0GACDwNNiNGzdOypUrZ8Lhnj17pGXLljJq1CgT/j744AO54447TAW1VCnv/VA1CP72228yY8YMKV68uHzxxRfSvHlz2bhxo1x99dWybt06adKkiQmIGja12vrdd9+Zyque//3336Vq1aoycuRIc3+FCxeWv//+2+yHhlTdBw3NPXr0kGzZssXrRjB9+nTp1auXCbnqyJEjcvPNN5sqsAZX9c0338iZM2fkvvvuS9dzRQhFqvSrJ/LKbXH/H7dC5KlFibf57bBI0w9FlnYSqV9SZN4DIi0+Fjl9wfHdBQDAURr8br311nhN7dWrV3ef176fGirn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63Ov5//880/39RrQevfubabR0i8Hd911V7wvu6FEfye8/W7p75w9TdNzzz1nvvToe02/xG/bti3efRw5csSEMv3botOide3a1f0FMZSP78yZM+aLq37J00KCTo3Wo0ePRF+IQvn4AE8x+k+wq7EAAACILswTCgAAAMcRQgEAAOA4QigAAAAcRwgFAACA4wihAAAAcBwhFAAAAI4jhAIAAMBxhFAAAAA4jhAKAAAAxxFCAYStS5cuSf369aVt27bxLj9+/LiULFlSnnnmmaDtGwAgeSzbCSCs/f7771KjRg159913pUOHDuayTp06yfr16+Xnn3+WLFmyBHsXAQBeEEIBhL3XX39dhg8fLps3b5bVq1dLu3btTACtXr16sHcNAJAEQiiAsKd/xho3biwZM2aUjRs3yuOPPy7PPvtssHcLAJAMQiiAiLB161apVKmSVKtWTX799VfJlClTsHcJAJAMBiYBiAhTpkyRHDlyyM6dO2Xv3r3B3h0AQAqohAIIeytWrJBbbrlFFi5cKC+88IK5bPHixRITExPsXQMAJIFKKICwdubMGenSpYv06tVLGjVqJO+//74ZnDR58uRg7xoAIBlUQgGEtSeeeELmzZtnpmTS5nj19ttvy4ABA8wgpTJlygR7FwEAXhBCAYSt77//Xpo0aSLLli2Tm266Kd51zZo1k4sXL9IsDwAhihAKAAAAx9EnFAAAAI4jhAIAAMBxhFAAAAA4jhAKAAAAxxFCAQAA4DhCKAAAABxHCAUAAIDjCKEAAABwHCEUAAAAjiOEAgAAwHGEUAAAAIjT/h/vJiAQOzPxqAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Now let's create a random trajectory:\n", "random.setSeed(1234) # Remark this out if you want new random trajectories on each run.\n", "\n", "# The points on a trajectory are determined by the timing of slots within 3GPP subframes, which are \n", "# governed by a specific numerology. The “getRandomTrajectory” function utilizes a BandwidthPart object \n", "# to extract the necessary timing information. Therefore, let’s first create the Carrier and BandwidthPart\n", "# objects.\n", "carrier = Carrier(startRb=0, numRbs=25, spacing=15) # Carrier with 25 Resource Blocks, 15KHz subcarrier spacing\n", "bwp = carrier.curBwp # The only bandwidth part in the carrier\n", "\n", "# We need to specify the bounding box of the trajectory. Here we select a wide area\n", "# from the map that has both LOS and NLOS points:\n", "xyBounds = np.array([[-210, 40], [-120, 100]]) # [[minX, minY], [maxX, maxY]]\n", "segLen = 5 # The number of grid points on the shortest segment\n", "\n", "trajectory = deepMimoData.getRandomTrajectory(xyBounds, segLen, bwp,\n", " trajLen=200, # Number of grid points on trajectory\n", " speedMps=1.2) # Speed in mps (Walking)\n", "# Print the trajectory information:\n", "trajectory.print()\n", "\n", "# Draw the Map with the trajectory:\n", "deepMimoData.drawMap(\"LOS-NLOS\", trajectory)\n" ] }, { "cell_type": "markdown", "id": "9af56716", "metadata": {}, "source": [ "## Interactively trajectory generation" ] }, { "cell_type": "code", "execution_count": 6, "id": "10148811", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running the interactive map for 'asu_campus_3p5'...\n", "Done. 32 points selected.\n", "Selected Points:\n", " [[-2.08244352e+02 -1.02666732e+02]\n", " [-2.13703861e+02 -2.53236924e+01]\n", " [-2.09154271e+02 1.97172539e+01]\n", " [-2.00055090e+02 4.24652066e+01]\n", " [-1.80036891e+02 5.88437325e+01]\n", " [-1.43185208e+02 7.38573813e+01]\n", " [-1.04058729e+02 8.20466442e+01]\n", " [-5.49231514e+01 8.38664805e+01]\n", " [ 1.26894117e-01 8.43214395e+01]\n", " [ 5.83616530e+01 8.20466442e+01]\n", " [ 1.07042272e+02 7.43123403e+01]\n", " [ 1.46623709e+02 5.61139782e+01]\n", " [ 1.60272481e+02 2.29019673e+01]\n", " [ 1.62092317e+02 -1.25848389e+01]\n", " [ 1.56632809e+02 -5.30761947e+01]\n", " [ 1.45713791e+02 -9.22026733e+01]\n", " [ 1.17961289e+02 -1.23594848e+02]\n", " [ 8.11096057e+01 -1.34058906e+02]\n", " [ 4.47128814e+01 -1.33603947e+02]\n", " [-1.35218775e+01 -1.27234520e+02]\n", " [-6.17475372e+01 -1.04031609e+02]\n", " [-6.44772915e+01 -9.12927552e+01]\n", " [-5.40132333e+01 -5.80807443e+01]\n", " [-5.12834789e+01 -3.39679144e+01]\n", " [-6.26574553e+01 -1.48596342e+01]\n", " [-6.58421687e+01 5.61352322e+00]\n", " [-5.44681923e+01 1.60775815e+01]\n", " [-1.07921232e+01 1.15279909e+01]\n", " [ 1.33207067e+01 3.79368701e+00]\n", " [ 3.56137003e+01 -1.84993066e+01]\n", " [ 3.74335365e+01 -5.44410719e+01]\n", " [ 3.33389050e+01 -1.01756813e+02]]\n" ] } ], "source": [ "# You can also define your own trajectory interactively by selecting points on the map. The function\n", "# “interactiveTrajPoints” can be used to obtain a list of points on the map representing the trajectory. \n", "# This function opens a new window displaying the current scenario’s map, and you can click on the points\n", "# of the trajectory one by one. Use left-click to select new points and right-click to undo last point.\n", "points = deepMimoData.interactiveTrajPoints(mapType=\"LOS-NLOS\")\n", "print(\"Selected Points:\\n\",points)\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "38e4a4f9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Trajectory Properties:\n", " start: -208.55 -102.17 1.50\n", " No. of points: 89407\n", " curIdx: 0 (0.00%)\n", " curSpeed: [ 0. 14.08 0. ]\n", " Total distance: 1257.01 meters\n", " Total time: 89.406 seconds\n", " Average Speed: 14.060 mps\n", " Carrier Frequency: 3.5 GHz\n", " Num. paths (Min, Avg, Max): 3, 9.10, 10\n", " Num. totally blocked points: 0\n", " LOS percentage: 43.25%\n", "\n" ] }, { "data": { "text/plain": [ "(
,\n", " )" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Now create a trajectory using the selected points:\n", "trajectory = deepMimoData.trajectoryFromPoints(points, bwp, speedMps=14)\n", "\n", "# Print the trajectory information:\n", "trajectory.print()\n", "\n", "# Draw the Map with the trajectory:\n", "deepMimoData.drawMap(\"LOS-NLOS\", trajectory)\n" ] }, { "cell_type": "code", "execution_count": null, "id": "70b0a02b", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.6" } }, "nbformat": 4, "nbformat_minor": 5 }