{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# GEONE - DEESSE - Simulations using multiple TIs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Import what is required" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import time\n", "import os\n", "\n", "# import package 'geone'\n", "import geone as gn" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "sys.version_info(major=3, minor=13, micro=7, releaselevel='final', serial=0)\n", "geone version: 1.3.0\n" ] } ], "source": [ "# Show version of python and version of geone\n", "import sys \n", "print(sys.version_info)\n", "print('geone version: ' + gn.__version__)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Training images (TIs)\n", "The training images are read from the files `ti.txt` and `ti4.txt`. Both images have *one* variable of the same nature, but depicting different kinds of patterns.\n", "\n", "**Note:** to clarify the terminology, we say that we work with *two* TIs having *one* variable (or property) of the same nature." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+wAAAHCCAYAAAB14EPnAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAgTRJREFUeJzt3Xt4FdXdL/BvAuYCJMEAyU4OCUbUCJWbAWKq5QWJhEBRTNoKUgT1hZYmWIhYjI/IRdtY8ShiEU77KKCSan0FrWjxBSSgJaBGORSRHOGg6CE7qLxJSJAkkDl/8O5N9s6+zN57LmvNfD/P4yP7ktlr1sysNb/1m1kTpSiKAiIiIiIiIiISSrTZBSAiIiIiIiKirhiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERkQ6ioqJU/VdVVYUvv/wSUVFRePLJJ0Nebs+ePTF48GA89thjOHv2rAFrRkRG6W52AYiIiIiIrOill17yeP3iiy9i+/btXd4fNGgQfvjhh5CWfcstt+Cuu+4CADQ3N+P999/HkiVL8L//9//Ga6+9FlnBiUgYDNiJiIiIiHTwy1/+0uP1vn37sH379i7vA8CXX34Z0rKvueYaj+X8+te/RltbGzZv3oxz584hLi4urDITkVh4STwRERERkQU4HA5ERUWhe3fm5IisgkczEREREZFkzp07h++++w4A0NLSgn/+85/YuHEj7rzzTgbsRBbCo5mIiIiISDLPP/88nn/+eY/3pk6dir/85S8mlYiI9MCAnYiIiIhIMrfddhtKS0sBAGfPnsW+ffvw9NNP484778R//Md/ICoqyuQSEpEWGLATEREREUmmf//+yM/Pd7++9dZb0adPHyxatAhbt27FlClTTCwdEWmFk84REREREVnA+PHjAQB79uwxuSREpBUG7EREREREFnD+/HkAF5/LTkTWwICdiIiIiMgC3nrrLQDAsGHDTC4JEWmF97ATEREREUnm//yf/4OXX34ZwKVJ5zZu3IirrroKM2fONLl0RKQVBuxERERERJLZvn07tm/fDgDo1q0b0tLS8O///u949NFH0bNnT5NLR0RaiVIURTG7EERERERERETkifewExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERG5VVRUYNSoUUhISEBKSgqmTp2K2tpaj++cO3cOJSUl6NOnD3r16oXi4mLU19d7fOfEiROYPHkyevTogZSUFDzwwAPuZ0QTERGROgzYiYiIyG337t0oKSnBvn37sH37drS3t2PChAloaWlxf2fhwoV466238Nprr2H37t04efIkioqK3J9fuHABkydPRltbG/bu3YuNGzdiw4YNeOSRR8xYJSIiImlxlngiIiLy69tvv0VKSgp2796NMWPGoLGxEf369UNlZSV+9rOfAQCOHDmCQYMGobq6GjfccAP+8Y9/4Kc//SlOnjyJ1NRUAMC6deuwePFifPvtt4iJiTFzlYiIiKTB57ATERGRX42NjQCA5ORkAEBNTQ3a29uRn5/v/s61116LzMxMd8BeXV2NIUOGuIN1ACgoKMC8efPw2WefYcSIEV1+p7W1Fa2tre7XHR0dOH36NPr06YOoqCi9Vo+IiASkKArOnDmD9PR0REdHflH4uXPn0NbWpkHJgJiYGMTFxWmyLDUYsBMREZFPHR0dWLBgAW688UZcd911AACn04mYmBj07t3b47upqalwOp3u73QO1l2fuz7zpaKiAsuXL9d4DYiISGZff/01+vfvH9Eyzp07h6y0eDgbtCmTw+HA8ePHDQvaGbATERGRTyUlJTh06BA++OAD3X+rvLwcZWVl7teNjY3IzMzEn6tqEN+rV8TLv/XT7JC+//cRtcG/pNLM1aH9thFeui/y9Qu1TtXQst6JtKJmX1e774rYHkTCX1sSSfvw9xG1+KG5GXPH5iAhISHs5bi0tbXB2QB8vRpIjI9sWU0/ABn3OdHW1saAnYiIiMxTWlqKrVu3Ys+ePR7ZDYfDgba2NjQ0NHhk2evr6+FwONzf+fDDDz2W55pF3vUdb7GxsYiNje3yfnyvXujRK/ITtsQeoX1fi990E/CWfTPqVA1N651II2r2ddX7roDtQST8rXck7UPnZWp5S1RivD7tlt4YsBMREZGboiiYP38+tmzZgqqqKmRlZXl8npOTg8suuww7d+5EcXExAKC2thYnTpxAXl4eACAvLw+///3vcerUKaSkpAAAtm/fjsTERAwePNjYFRLA64tOerwufjLdpJKEVgbvcrsU1Whf/s05vn/LbjrX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48eVN998U7nyyiuVMWPGmFzyi+6//36lqqpKOX78uPLPf/5Tyc/PV/r27aucOnVKURRF+fWvf61kZmYq7733nvLxxx8reXl5Sl5ensml9nThwgUlMzNTWbx4scf7Itb9mTNnlE8//VT59NNPFQDKU089pXz66afuWdQff/xxpXfv3sqbb76pHDx4ULntttuUrKws5YcffnAvY+LEicqIESOU/fv3Kx988IFy9dVXK9OnTze9/G1tbcqtt96q9O/fXzlw4IDH8eCavXvv3r3K008/rRw4cEA5duyY8vLLLyv9+vVT7rrrLtPLf+bMGWXRokVKdXW1cvz4cWXHjh3K9ddfr1x99dXKuXPn3MsQtf5dGhsblR49eihr167t8vdm13+w9lJRgrc558+fV6677jplwoQJyoEDB5Rt27Yp/fr1U8rLyw1ZBzMwYCciIiLhPPvss0pmZqYSExOjjB49Wtm3b5/ZRfIJgM//1q9fryiKopw4cUIZM2aMkpycrMTGxipXXXWV8sADDyiNjY3mFvy/3XHHHUpaWpoSExOj/I//8T+UO+64Qzl69Kj78x9++EH5zW9+o1x++eVKjx49lNtvv12pq6szscRdvfvuuwoApba21uN9Eet+165dPveXWbNmKYpy8dFuS5YsUVJTU5XY2Fhl/PjxXdbr+++/V6ZPn6706tVLSUxMVO6++27lzJkzppf/+PHjfo+HXbt2KYqiKDU1NUpubq6SlJSkxMXFKYMGDVL+8Ic/eATEZpX/7NmzyoQJE5R+/fopl112mTJgwABlzpw5XQYKRa1/l//1v/6XEh8frzQ0NHT5e7PrP1h7qSjq2pwvv/xSKSwsVOLj45W+ffsq999/v9Le3m7IOpghSlEURafkPRERERERERGFifewExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgBiwExEREREREQmIATsRERERERGRgP4/S4OlXPaV4tEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Read files\n", "data_dir = 'data'\n", "tiA = gn.img.readImageTxt(os.path.join(data_dir, 'ti.txt'))\n", "tiB = gn.img.readImageTxt(os.path.join(data_dir, 'ti4.txt'))\n", "\n", "# Define category values and colors\n", "categ_val = [0, 1, 2]\n", "categ_col = ['lightblue', 'darkgreen', 'orange']\n", "\n", "# Figure\n", "plt.subplots(1,2, figsize=(12,5))\n", "\n", "plt.subplot(1,2,1)\n", "gn.imgplot.drawImage2D(tiA, categ=True, categVal=categ_val, categCol=categ_col, title='TI A')\n", "\n", "plt.subplot(1,2,2)\n", "gn.imgplot.drawImage2D(tiB, categ=True, categVal=categ_val, categCol=categ_col, title='TI B')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulation grid\n", "Define the simulation grid (number of cells in each direction, cell unit, origin)." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "nx, ny, nz = 480, 180, 1 # number of cells\n", "sx, sy, sz = 1.0, 1.0, 1.0 # cell unit\n", "ox, oy, oz = 0.0, 0.0, 0.0 # origin (corner of the \"first\" grid cell)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Probability of TI selection\n", "To perform a deesse simulation with multiple TIs, one needs to give for each simulation grid cell the probability to select each of the TI considered. When a cell is simulated, a TI is first selected randomly according to these probabilties in that cell, and then it is scanned. \n", "\n", "Below, a piece of python code to build:\n", "\n", "- `pdf_ti`: (`nTI`, `nz`, `ny`, `nx`)-array containing probability values to select each of the TI on the simulation grid (here `nTI` = 2)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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6uSTT9aMGTN0zTXXSKq4Pe2UU07RUUcdVa9jVn2vunTpEtIeFxenI444Yp/v5a89+OCDGjp0qNLT05WRkaHzzjtPQ4YM0RFHHCFJ+uqrryRJQ4cO3e8xduzYoZYtW+7TXvXequfV/VpiYqIk6dtvv5Wk4O2GB7MXXnhBvXr10tatW7V161ZJ0kknnaTS0lK99NJLwdsSAQAAfo3sXDdk51CNMTtL0gknnBCy6PHll1+uHTt26LbbbtOVV14ZlUdOADjwKPoCjUyvXr2CKxDvj9/v3yfMRsINN9ygadOmafTo0crKylJSUpIcx9HAgQP3+9v0aBgyZIhuuukmfffddyopKdH777+vJ554Imrjufzyy3X66adrzpw5euutt/TQQw/pgQce0D//+U/169cv+L176KGH1L1792qPkZCQUG171Xuff/55paam7rO/sS3e8NVXX2nFihWSqv/H1IwZMyj6AgCA/SI71x3Z+ReNLTvXpE+fPnrttde0fPlynX/++dEeDoADwJ6/wQDU6PDDD9fbb7+tXbt2hcxY+OKLL4L791b1W++9ffnll2revHnwN8Mvv/yyhg4dqr/97W/BPnv27NnvKrxfffWVzjrrrODr3bt368cff9R5551X7/OqUtNtVQMHDlReXp5efPFF/fzzz4qNjdUVV1xR72NWfa/WrFkTnGEgSaWlpVq7dm3Ib9X3p3379rr++ut1/fXXa9OmTerRo4fuvfde9evXT0ceeaSkipkFtTnW3qre265duxrfWzXuTz75pMbjRft2tRkzZig2NlbPP/+8fD5fyL53331XEydO1IYNG/a5zQ4AAOC3IDuTnffWWLJzTcrLyyVV/DkC0DTwTF+giTjvvPMUCAT2+S39I488Isdx1K9fv5D2goKCkGeLbdy4Ua+88orOPffcYPHN5/OF3JYmSY8//njwuWW/9tRTT6msrCz4evLkySovL9/ns+vjkEMO2W9gbtOmjfr166cXXnhBM2bMUN++fYOr6YY7pqR9jpudna24uDhNnDgx5PyfffZZ7dixo8bfnAcCgX1u32vXrp3S0tJUUlIiScrIyNCRRx6phx9+uNpQtnnz5v0ePycnR4mJibrvvvtCvte/fm/btm31u9/9TlOnTtWGDRtC+ux9Tvv7HhwoM2bM0Omnn64rrrhCl156ach2yy23SJJefPHFqIwNAADYi+xMdt77vY0lO9fktddekyR169YtyiMBcKAw0xdoIvr376+zzjpLt99+u9atW6du3brprbfe0iuvvKLRo0cHf8td5fjjj1dOTo5uvPFG+f1+Pfnkk5Kku+66K9jnf/7nf/T8888rKSlJxx57rAoKCvT222+rdevW1Y6htLRUffr00eWXX641a9boySefVO/evXXBBRf85vPLyMjQ22+/rQkTJigtLU2dOnVSZmZmcP+QIUN06aWXSpLuueeeWh2ze/fu8vl8euCBB7Rjxw75/X6dffbZateuncaMGaO77rpLffv21QUXXBA8n5NPPrnGRS527dqlQw89VJdeeqm6deumhIQEvf3221qxYkVw1ofrunrmmWfUr18/HXfccRo2bJg6dOig77//XosWLVJiYqJeffXVao+fmJioyZMn66qrrlKPHj00cOBAtW3bVhs2bNDrr7+u0047LfiPl4kTJ6p3797q0aOHRowYoU6dOmndunV6/fXXtXr16uD3VZJuv/12DRw4ULGxserfv38w0EbSsmXL9PXXXys3N7fa/R06dFCPHj00Y8YM3XrrrREfDwAAaDrIzmTnxpad9/bvf/9be/bskSRt27ZN//rXv7RkyRINHDhQXbt2PaBjARBFBkCjMG3aNCPJrFixosZ+Q4cONYcccki1+3bt2mVuvvlmk5aWZmJjY03nzp3NQw89ZDzPC+knyYwaNcq88MILpnPnzsbv95uTTjrJLFq0KKTff//7XzNs2DDTpk0bk5CQYHJycswXX3xhDj/8cDN06NB9xr5kyRIzYsQI07JlS5OQkGAGDx5stm7dGnLMM844w5xxxhnB12vXrjWSzLRp04Jt+fn55td/fX3xxRfmd7/7nWnWrJmRFPL5xhhTUlJiWrZsaZKSkszPP/9c4/dwb08//bQ54ogjjM/nM5JCvgdPPPGE6dq1q4mNjTUpKSlm5MiR5r///W+NxyspKTG33HKL6datm2nRooU55JBDTLdu3cyTTz65T98PP/zQXHzxxaZ169bG7/ebww8/3Fx++eVm4cKFwT5V39u1a9eGvHfRokUmJyfHJCUlmfj4eHPkkUeaq6++2qxcuTKk3yeffGIuuugik5ycbOLj402XLl3MnXfeGdLnnnvuMR06dDCu61b7Wftz3HHHhVzLvdXmz/MNN9xgJJlvvvlmv33GjRtn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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Set an image with simulation grid geometry defined above, and no variable\n", "im = gn.img.Img(nx, ny, nz, sx, sy, sz, ox, oy, oz, nv=0)\n", "\n", "# Get the x and y coordinates of the centers of grid cell (meshgrid)\n", "xx = im.xx()[0]\n", "yy = im.yy()[0]\n", "\n", "# Equivalent:\n", "## xg, yg: coordinates of the centers of grid cell\n", "#xg = ox + 0.5*sx + sx*np.arange(nx)\n", "#yg = oy + 0.5*sy + sy*np.arange(ny)\n", "#xx, yy = np.meshgrid(xg, yg) # create meshgrid from the center of grid cells\n", "\n", "# Number of TIs\n", "nTI = 2\n", "\n", "# Define probability to select TI B\n", "pB = (np.minimum(np.maximum(xx, 190), 290) - 190) / 100\n", "# Define probability to select TI A\n", "pA = 1.0 - pB\n", "\n", "pdf_ti = np.zeros((nTI, nz, ny, nx))\n", "pdf_ti[0,0,:,:] = pA\n", "pdf_ti[1,0,:,:] = pB\n", "\n", "# Set variables pA and pB in image im\n", "im.append_var(pdf_ti, varname=['pA', 'pB'])\n", "\n", "# Display\n", "plt.subplots(1,2, figsize=(17,5), sharey=True) # 1 x 2 sub-plots\n", "\n", "plt.subplot(1,2,1)\n", "gn.imgplot.drawImage2D(im, iv=0, title='Probability to select TI A')\n", "\n", "plt.subplot(1,2,2)\n", "gn.imgplot.drawImage2D(im, iv=1, title='Probability to select TI B')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fill the input structure for deesse and launch deesse" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "deesseRun: DeeSse running... [VERSION 3.2 / BUILD NUMBER 20230914 / OpenMP 19 thread(s)]\n", "deesseRun: DeeSse run complete\n", "Elapsed time: 2.5 sec\n" ] } ], "source": [ "deesse_input = gn.deesseinterface.DeesseInput(\n", " nx=nx, ny=ny, nz=nz,\n", " sx=sx, sy=sy, sz=sz,\n", " ox=ox, oy=oy, oz=oz,\n", " nv=1, varname='code',\n", " TI=[tiA, tiB], # list of TIs\n", " pdfTI=pdf_ti, # set probability of TI selection\n", " distanceType='categorical',\n", " nneighboringNode=24,\n", " distanceThreshold=0.02,\n", " maxScanFraction=[0.25, 0.3], # set maximal scanned fraction for each TI (list of length 'nTI')\n", " npostProcessingPathMax=1,\n", " seed=444,\n", " nrealization=1)\n", "\n", "# Run deesse\n", "t1 = time.time() # start time\n", "deesse_output = gn.deesseinterface.deesseRun(deesse_input)\n", "t2 = time.time() # end time\n", "print(f'Elapsed time: {t2-t1:.2g} sec')" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABHMAAAHDCAYAAACnJ1alAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAYRRJREFUeJzt3Xt4VNW9//HPREgAwwSjkhghyNN6ELxAC4JRTws1bbReSoWj9qFIlQO2AopYL5xHRX1sUWmrolzU058UlR8erFixioeDXI41UAilP7WARVFRDPSUZoaAJEjm9wdnhswwSeayb2vv9+t5eDSTmT1r773W2jvr+91rhWKxWEwAAAAAAAAwQoHbBQAAAAAAAEDmGMwBAAAAAAAwCIM5AAAAAAAABmEwBwAAAAAAwCAM5gAAAAAAABiEwRwAAAAAAACDMJgDAAAAAABgEAZzAAAAAAAADMJgDgAAAAAAgEEYzAEAwMdOO+00/ehHP3K7GHlbvXq1QqGQVq9e7XZRAAAAXMdgDgAABnrnnXc0evRo9enTR126dNGpp56qb3/723r88cfdLprvbNiwQZMnT9aZZ56p448/XpWVlbrqqqv0/vvvt/u5jz76SKFQKKN/H330UWLA6sUXX3RozwAAgKlCsVgs5nYhAABA5t5++22NGDFClZWVGjdunMrLy7Vz506tW7dOH3zwgbZv3554b1NTkwoKCtS5c2cXS5y/lpYWNTc3q7CwUAUFzsaiRo8erT/84Q/6l3/5F51zzjmqr6/XE088ocbGRq1bt05nnXVW2s/t379fS5cuTXrtl7/8pT799FM98sgjSa9///vf14YNGzRixAgtWbJEo0ePtm1/AACA+RjMAQDAMJdeeqk2bNig999/Xz169Ej63Z49e9SzZ093CuZTb7/9toYMGaLCwsLEa3/961919tlna/To0Xruuecy3tZll12md999Vx999NExv1u9ejWDOQAAICM8ZgUAgGE++OADnXnmmccM5Eg6ZiAndc6cBQsWKBQK6a233tJNN92kk08+WT169NANN9yg5uZmNTQ06Nprr9UJJ5ygE044QbfffrtyjfsMHz5cw4cPP+b1H/3oRzrttNOSXlu8eLEGDx6s7t27KxwO6+yzz9Zjjz2W+H26OXOGDx+us846S3/5y180YsQIdevWTaeeeqoefvjhY77z448/1hVXXKHjjz9ePXv21C233KI33ngjo3l4zj///KSBHEk6/fTTdeaZZ2rLli0dHod87Nu3T1OnTtVpp52moqIi9ezZU9/+9re1adMmW78XAAB4Wye3CwAAALLTp08f1dbW6t13323zEZ+OTJkyReXl5brvvvu0bt06PfXUU+rRo4fefvttVVZW6uc//7lee+01zZo1S2eddZauvfZai/fiqBUrVugHP/iBLrroIj300EOSpC1btugPf/iDbr755nY/+49//EMXX3yxrrzySl111VV68cUXdccdd+jss8/WJZdcIunI407f+ta39Pnnn+vmm29WeXm5Fi1apFWrVuVc5lgspt27d+vMM8/MeRuZ+PGPf6wXX3xRkydP1oABA/T3v/9db731lrZs2aKvf/3rtn43AADwLgZzAAAwzE9/+lNdcsklGjRokIYOHap//ud/1kUXXaQRI0ZkPDdOWVmZXnvtNYVCId14443avn27Zs2apRtuuEHz5s2TJE2cOFGnnXaa/s//+T+2Dub8/ve/Vzgc1htvvKHjjjsuq8/u2rVLCxcu1NixYyVJ48ePV58+ffTrX/86MZjz5JNP6sMPP9TLL7+s733ve5KkG264QV/72tdyLvPzzz+vzz77TPfff3/O28jE73//e02YMEG//OUvE6/dfvvttn4nAADwPh6zAgDAMN/+9rdVW1urK664Qn/+85/18MMPq6amRqeeeqpeeeWVjLYxfvx4hUKhxM/Dhg1TLBbT+PHjE68dd9xxGjJkiD788EPL96G1Hj16aP/+/VqxYkXWny0uLtYPf/jDxM+FhYUaOnRoUpmXL1+uU089VVdccUXitS5dumjChAk5lXfr1q2aNGmSqqqqNG7cuJy2kakePXpo/fr12rVrl63fAwAAzMJgDgAABjr33HP10ksv6R//+If++Mc/avr06dq3b59Gjx6tv/zlLx1+vrKyMunnkpISSVLv3r2Pef0f//iHdQVP48Ybb9Q//dM/6ZJLLlGvXr10/fXXa/ny5Rl9tlevXkmDUpJ0wgknJJX5448/1le+8pVj3vfVr34167LW19fr0ksvVUlJiV588cWsM4my9fDDD+vdd99V7969NXToUN177722D64BAADvYzAHAACDFRYW6txzz9XPf/5zzZs3T4cOHdKSJUs6/FxbgxDpXs91AuTUwZO4w4cPJ/3cs2dPbd68Wa+88oquuOIKrVq1SpdccklGWS9t7Ycdi3VGIhFdcsklamho0PLly1VRUWH5d6S66qqr9OGHH+rxxx9XRUWFZs2apTPPPFOvv/667d8NAAC8i8EcAAB8YsiQIZKkzz//3OWSHHHCCSeooaHhmNc//vjjY14rLCzU5Zdfrrlz5+qDDz7QDTfcoIULF2r79u15l6NPnz764IMPjhngyWbbBw8e1OWXX673339fr776qgYMGJB3uTJ1yimn6MYbb9TLL7+sHTt26MQTT9TPfvYzx74fAAB4D4M5AAAYZtWqVWkzT1577TVJUr9+/Wz9/g8++EAffPBBh+/7yle+oq1bt+pvf/tb4rU///nP+sMf/pD0vr///e9JPxcUFOicc86RJDU1NeVd3pqaGn322WdJ8wkdPHhQTz/9dEafP3z4sK6++mrV1tZqyZIlqqqqyrtMmX5vJBJJeq1nz56qqKiw5LgAAABzsZoVAACGmTJlig4cOKDvf//7OuOMM9Tc3Ky3335bL7zwgk477TRdd911tn7/RRddJEn66KOP2n3f9ddfr1/96leqqanR+PHjtWfPHs2fP19nnnmmotFo4n3/+q//qr179+pb3/qWevXqpY8//liPP/64Bg0apP79++dd3htuuEFPPPGEfvCDH+jmm2/WKaecoueff15dunSR1PbjYHG33nqrXnnlFV1++eXau3evnnvuuaTft56A2Ur79u1Tr169NHr0aA0cOFDFxcX6r//6L23YsCFpdSsAABA8DOYAAGCYX/ziF1qyZIlee+01PfXUU2publZlZaVuvPFG3XXXXerRo4fbRZQk9e/fXwsXLtQ999yjadOmacCAAXr22We1aNEirV69OvG+H/7wh3rqqac0d+5cNTQ0qLy8XFdffbXuvfdeFRTkn0RcXFysN998U1OmTNFjjz2m4uJiXXvttTr//PM1atSoxKBOWzZv3ixJWrZsmZYtW3bM7+0azOnWrZtuvPFG/ed//qdeeukltbS06Ktf/armzp2rn/zkJ7Z8JwAAMEMoZscMgQAAAB736KOP6pZbbtGnn36qU0891e3iAAAAZIzBHAAA4HtffPGFunbtmvj54MGD+trXvqbDhw/r/fffd7FkAAAA2eMxKwAA4HtXXnmlKisrNWjQIEUiET333HPaunWrnn/+ebeLBgAAkDUGcwAA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C3TPPfe4sUuA63r16qUHH3xQdXV12rhxo771rW/pe9/7nt577z1JtCkgHxs2bNCTTz6pc845J+l12hVguJhhhg4dGps0aVLi58OHD8cqKipiM2fOdLFUgPdJii1dujTxc0tLS6y8vDw2a9asxGsNDQ2xoqKi2P/9v/83FovFYn/5y19ikmIbNmxIvOf111+PhUKh2GeffeZY2QEv27NnT0xSbM2aNbFY7Eg76ty5c2zJkiWJ92zZsiUmKVZbWxuLxWKx1157LVZQUBCrr69PvGfevHmxcDgca2pqcnYHAI864YQTYv/+7/9OmwLysG/fvtjpp58eW7FiReyb3/xm7Oabb47FYlyrAD8wKjOnublZdXV1qq6uTrxWUFCg6upq1dbWulgywDw7duxQfX19UnsqKSnRsGHDEu2ptrZWPXr00JAhQxLvqa6uVkFBgdavX+94mQEvikQikqTS0lJJUl1dnQ4dOpTUts444wxVVlYmta2zzz5bZWVliffU1NQoGo0mMhGAoDp8+LAWL16s/fv3q6qqijYF5GHSpEm69NJLk9qPxLUK8INObhcgG//zP/+jw4cPJ3UoklRWVqatW7e6VCrATPX19ZKUtj3Ff1dfX6+ePXsm/b5Tp04qLS1NvAcIspaWFk2dOlUXXHCBzjrrLElH2k1hYaF69OiR9N7UtpWu7cV/BwTRO++8o6qqKh08eFDFxcVaunSpBgwYoM2bN9OmgBwsXrxYmzZt0oYNG475HdcqwHxGDeYAAOAlkyZN0rvvvqu33nrL7aIAxuvXr582b96sSCSiF198UePGjdOaNWvcLhZgpJ07d+rmm2/WihUr1KVLF7eLA8AGRj1mddJJJ+m44447Zpb13bt3q7y83KVSAWaKt5n22lN5efkxk4t/+eWX2rt3L20OgTd58mS9+uqrWrVqlXr16pV4vby8XM3NzWpoaEh6f2rbStf24r8DgqiwsFBf/epXNXjwYM2cOVMDBw7UY489RpsCclBXV6c9e/bo61//ujp16qROnTppzZo1mj17tjp16qSysjLaFWA4owZzCgsLNXjwYK1cuTLxWktLi1auXKmqqioXSwaYp2/fviovL09qT9FoVOvXr0+0p6qqKjU0NKiuri7xnjfffFMtLS0aNmyY42UGvCAWi2ny5MlaunSp3nzzTfXt2zfp94MHD1bnzp2T2ta2bdv0ySefJLWtd955J2mwdMWKFQqHwxowYIAzOwJ4XEtLi5qammhTQA4uuugivfPOO9q8eXPi35AhQzRmzJjE/9OuALMZ95jVtGnTNG7cOA0ZMkRDhw7Vo48+qv379+u6665zu2iA5zQ2Nmr79u2Jn3fs2KHNmzertLRUlZWVmjp1qh544AGdfvrp6tu3r+6++25VVFRo5MiRkqT+/fvr4osv1oQJEzR//nwdOnRIkydP1jXXXKOKigqX9gpw16RJk7Ro0SL97ne/U/fu3RPzBpSUlKhr164qKSnR+PHjNW3aNJWWliocDmvKlCmqqqrSeeedJ0n6zne+owEDBmjs2LF6+OGHVV9fr7vuukuTJk1SUVGRm7sHuGL69Om65JJLVFlZqX379mnRokVavXq13njjDdoUkIPu3bsn5nKLO/7443XiiScmXqddAYZzezmtXDz++OOxysrKWGFhYWzo0KGxdevWuV0kwJNWrVoVk3TMv3HjxsVisSPLk999992xsrKyWFFRUeyiiy6Kbdu2LWkbf//732M/+MEPYsXFxbFwOBy77rrrYvv27XNhbwBvSNemJMWeeeaZxHu++OKL2I033hg74YQTYt26dYt9//vfj33++edJ2/noo49il1xySaxr166xk046KXbrrbfGDh065PDeAN5w/fXXx/r06RMrLCyMnXzyybGLLroo9p//+Z+J39OmgPy1Xpo8FqNdAaYLxWKxmEvjSAAAAAAAAMiSUXPmAAAAAAAABB2DOQAAAAAAAAZhMAcAAAAAAMAgDOYAAAAAAAAYhMEcAAAAAAAAgzCYAwAAAAAAYBAGcwAAAAAAAAzCYA4AAAAAAIBBGMwBAAAAAAAwCIM5AAAAAAAABmEwBwAAAAAAwCAM5gAAAAAAABjk/wOJX0EuZ2oP0gAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Retrieve the results\n", "sim = deesse_output['sim']\n", "\n", "# Display\n", "plt.figure(figsize=(16,5))\n", "gn.imgplot.drawImage2D(sim[0], categ=True, categVal=categ_val, categCol=categ_col, title='Sim. using 2 TIs')\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "py313", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.7" } }, "nbformat": 4, "nbformat_minor": 4 }