Created
August 9, 2024 20:36
-
-
Save lucadealfaro/a2fb4d8118182711279cf060b773c494 to your computer and use it in GitHub Desktop.
Connectivity-US-Conform.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/lucadealfaro/a2fb4d8118182711279cf060b773c494/connectivity-us-conform.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "jKD2GiS3sDEM" | |
}, | |
"source": [ | |
"# Connectivity computation" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"source": [ | |
"We recommend running this on Google Colab, but if you wish, you can also run it locally (provided you have a GPU)." | |
], | |
"metadata": { | |
"id": "aClasQVbdq9J" | |
} | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"IS_LOCAL = False" | |
], | |
"metadata": { | |
"id": "AhnR6Ya_dyUK" | |
}, | |
"execution_count": 1, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"source": [ | |
"Modify the `DATA_PATH` below to point to the Drive folder or disk folder where you have uploaded the US-Conform dataset. " | |
], | |
"metadata": { | |
"id": "nASO4nULdU9H" | |
} | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": { | |
"id": "f9bjsCKHSc-t" | |
}, | |
"outputs": [], | |
"source": [ | |
"DATA_PATH = \"/content/gdrive/Shareddrives/Birds and CS/Data/US-Conform\"" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"source": [ | |
"Let's log the GPU info." | |
], | |
"metadata": { | |
"id": "H9UQBWC8eUcZ" | |
} | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"if not IS_LOCAL:\n", | |
" !nvidia-smi" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "2o6IZG7teYiU", | |
"outputId": "8e230b0e-9950-4c35-9140-d26fb974769b" | |
}, | |
"execution_count": 3, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Fri Aug 9 19:21:32 2024 \n", | |
"+---------------------------------------------------------------------------------------+\n", | |
"| NVIDIA-SMI 535.104.05 Driver Version: 535.104.05 CUDA Version: 12.2 |\n", | |
"|-----------------------------------------+----------------------+----------------------+\n", | |
"| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |\n", | |
"| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |\n", | |
"| | | MIG M. |\n", | |
"|=========================================+======================+======================|\n", | |
"| 0 NVIDIA A100-SXM4-40GB Off | 00000000:00:04.0 Off | 0 |\n", | |
"| N/A 32C P0 44W / 400W | 2MiB / 40960MiB | 0% Default |\n", | |
"| | | Disabled |\n", | |
"+-----------------------------------------+----------------------+----------------------+\n", | |
" \n", | |
"+---------------------------------------------------------------------------------------+\n", | |
"| Processes: |\n", | |
"| GPU GI CI PID Type Process name GPU Memory |\n", | |
"| ID ID Usage |\n", | |
"|=======================================================================================|\n", | |
"| No running processes found |\n", | |
"+---------------------------------------------------------------------------------------+\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": { | |
"id": "J3Koec3ddKiB" | |
}, | |
"outputs": [], | |
"source": [ | |
"import os\n", | |
"import sys\n", | |
"import time" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "TZByjvfguoa0", | |
"outputId": "c70549c1-4339-4534-dcb2-ba3c5f82ce73" | |
}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Collecting git+https://github.com/ecoscape-earth/scgt.git@v3\n", | |
" Cloning https://github.com/ecoscape-earth/scgt.git (to revision v3) to /tmp/pip-req-build-3thimdb2\n", | |
" Running command git clone --filter=blob:none --quiet https://github.com/ecoscape-earth/scgt.git /tmp/pip-req-build-3thimdb2\n", | |
" Running command git checkout -b v3 --track origin/v3\n", | |
" Switched to a new branch 'v3'\n", | |
" Branch 'v3' set up to track remote branch 'v3' from 'origin'.\n", | |
" Resolved https://github.com/ecoscape-earth/scgt.git to commit be60be5568c91034bdaf981b205781a6b7c8e5ff\n", | |
" Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n", | |
" Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n", | |
" Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
"Requirement already satisfied: GDAL>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from scgt==0.0.20) (3.6.4)\n", | |
"Requirement already satisfied: matplotlib>=3.5.3 in /usr/local/lib/python3.10/dist-packages (from scgt==0.0.20) (3.7.1)\n", | |
"Requirement already satisfied: numpy>=1.20.3 in /usr/local/lib/python3.10/dist-packages (from scgt==0.0.20) (1.26.4)\n", | |
"Collecting rasterio>=1.2.10 (from scgt==0.0.20)\n", | |
" Downloading rasterio-1.3.10-cp310-cp310-manylinux2014_x86_64.whl.metadata (14 kB)\n", | |
"Requirement already satisfied: scipy>=1.7.3 in /usr/local/lib/python3.10/dist-packages (from scgt==0.0.20) (1.13.1)\n", | |
"Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (1.2.1)\n", | |
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (0.12.1)\n", | |
"Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (4.53.1)\n", | |
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (1.4.5)\n", | |
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (24.1)\n", | |
"Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (9.4.0)\n", | |
"Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (3.1.2)\n", | |
"Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt==0.0.20) (2.8.2)\n", | |
"Collecting affine (from rasterio>=1.2.10->scgt==0.0.20)\n", | |
" Downloading affine-2.4.0-py3-none-any.whl.metadata (4.0 kB)\n", | |
"Requirement already satisfied: attrs in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (24.2.0)\n", | |
"Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (2024.7.4)\n", | |
"Requirement already satisfied: click>=4.0 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (8.1.7)\n", | |
"Requirement already satisfied: cligj>=0.5 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (0.7.2)\n", | |
"Collecting snuggs>=1.4.1 (from rasterio>=1.2.10->scgt==0.0.20)\n", | |
" Downloading snuggs-1.4.7-py3-none-any.whl.metadata (3.4 kB)\n", | |
"Requirement already satisfied: click-plugins in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (1.1.1)\n", | |
"Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt==0.0.20) (71.0.4)\n", | |
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.7->matplotlib>=3.5.3->scgt==0.0.20) (1.16.0)\n", | |
"Downloading rasterio-1.3.10-cp310-cp310-manylinux2014_x86_64.whl (21.5 MB)\n", | |
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m21.5/21.5 MB\u001b[0m \u001b[31m93.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", | |
"\u001b[?25hDownloading snuggs-1.4.7-py3-none-any.whl (5.4 kB)\n", | |
"Downloading affine-2.4.0-py3-none-any.whl (15 kB)\n", | |
"Building wheels for collected packages: scgt\n", | |
" Building wheel for scgt (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
" Created wheel for scgt: filename=scgt-0.0.20-py3-none-any.whl size=12615 sha256=e39623708cbae7d0f63f98162031b00200ee97211daaa5278d2b336a198881a6\n", | |
" Stored in directory: /tmp/pip-ephem-wheel-cache-z2xbrbfq/wheels/1a/30/78/bf43130e67c955bafcbd380933c28d1ac1ba60358d5bdcfaba\n", | |
"Successfully built scgt\n", | |
"Installing collected packages: snuggs, affine, rasterio, scgt\n", | |
"Successfully installed affine-2.4.0 rasterio-1.3.10 scgt-0.0.20 snuggs-1.4.7\n", | |
"Collecting git+https://github.com/ecoscape-earth/ecoscape-connectivity.git@v3\n", | |
" Cloning https://github.com/ecoscape-earth/ecoscape-connectivity.git (to revision v3) to /tmp/pip-req-build-ahdcj5gw\n", | |
" Running command git clone --filter=blob:none --quiet https://github.com/ecoscape-earth/ecoscape-connectivity.git /tmp/pip-req-build-ahdcj5gw\n", | |
" Running command git checkout -b v3 --track origin/v3\n", | |
" Switched to a new branch 'v3'\n", | |
" Branch 'v3' set up to track remote branch 'v3' from 'origin'.\n", | |
" Resolved https://github.com/ecoscape-earth/ecoscape-connectivity.git to commit d2e3f2397b49cc086514192d6cfecfddf794ccb8\n", | |
" Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n", | |
" Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n", | |
" Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
"Requirement already satisfied: numpy>=1.20.3 in /usr/local/lib/python3.10/dist-packages (from ecoscape-connectivity==0.1.0) (1.26.4)\n", | |
"Requirement already satisfied: scgt>=0.0.12 in /usr/local/lib/python3.10/dist-packages (from ecoscape-connectivity==0.1.0) (0.0.20)\n", | |
"Requirement already satisfied: torch>=1.10.2 in /usr/local/lib/python3.10/dist-packages (from ecoscape-connectivity==0.1.0) (2.3.1+cu121)\n", | |
"Requirement already satisfied: GDAL>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.12->ecoscape-connectivity==0.1.0) (3.6.4)\n", | |
"Requirement already satisfied: matplotlib>=3.5.3 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.12->ecoscape-connectivity==0.1.0) (3.7.1)\n", | |
"Requirement already satisfied: rasterio>=1.2.10 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.3.10)\n", | |
"Requirement already satisfied: scipy>=1.7.3 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.13.1)\n", | |
"Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (3.15.4)\n", | |
"Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (4.12.2)\n", | |
"Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (1.13.1)\n", | |
"Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (3.3)\n", | |
"Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (3.1.4)\n", | |
"Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (2024.6.1)\n", | |
"Collecting nvidia-cuda-nvrtc-cu12==12.1.105 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n", | |
"Collecting nvidia-cuda-runtime-cu12==12.1.105 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n", | |
"Collecting nvidia-cuda-cupti-cu12==12.1.105 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n", | |
"Collecting nvidia-cudnn-cu12==8.9.2.26 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n", | |
"Collecting nvidia-cublas-cu12==12.1.3.1 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n", | |
"Collecting nvidia-cufft-cu12==11.0.2.54 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n", | |
"Collecting nvidia-curand-cu12==10.3.2.106 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n", | |
"Collecting nvidia-cusolver-cu12==11.4.5.107 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n", | |
"Collecting nvidia-cusparse-cu12==12.1.0.106 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n", | |
"Collecting nvidia-nccl-cu12==2.20.5 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_nccl_cu12-2.20.5-py3-none-manylinux2014_x86_64.whl.metadata (1.8 kB)\n", | |
"Collecting nvidia-nvtx-cu12==12.1.105 (from torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.7 kB)\n", | |
"Requirement already satisfied: triton==2.3.1 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.2->ecoscape-connectivity==0.1.0) (2.3.1)\n", | |
"Collecting nvidia-nvjitlink-cu12 (from nvidia-cusolver-cu12==11.4.5.107->torch>=1.10.2->ecoscape-connectivity==0.1.0)\n", | |
" Using cached nvidia_nvjitlink_cu12-12.6.20-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\n", | |
"Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.2.1)\n", | |
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (0.12.1)\n", | |
"Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (4.53.1)\n", | |
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.4.5)\n", | |
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (24.1)\n", | |
"Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (9.4.0)\n", | |
"Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (3.1.2)\n", | |
"Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (2.8.2)\n", | |
"Requirement already satisfied: affine in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (2.4.0)\n", | |
"Requirement already satisfied: attrs in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (24.2.0)\n", | |
"Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (2024.7.4)\n", | |
"Requirement already satisfied: click>=4.0 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (8.1.7)\n", | |
"Requirement already satisfied: cligj>=0.5 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (0.7.2)\n", | |
"Requirement already satisfied: snuggs>=1.4.1 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.4.7)\n", | |
"Requirement already satisfied: click-plugins in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.1.1)\n", | |
"Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (71.0.4)\n", | |
"Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.10.2->ecoscape-connectivity==0.1.0) (2.1.5)\n", | |
"Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.10.2->ecoscape-connectivity==0.1.0) (1.3.0)\n", | |
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.7->matplotlib>=3.5.3->scgt>=0.0.12->ecoscape-connectivity==0.1.0) (1.16.0)\n", | |
"Using cached nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl (410.6 MB)\n", | |
"Using cached nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (14.1 MB)\n", | |
"Using cached nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (23.7 MB)\n", | |
"Using cached nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (823 kB)\n", | |
"Using cached nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl (731.7 MB)\n", | |
"Using cached nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl (121.6 MB)\n", | |
"Using cached nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl (56.5 MB)\n", | |
"Using cached nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl (124.2 MB)\n", | |
"Using cached nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl (196.0 MB)\n", | |
"Using cached nvidia_nccl_cu12-2.20.5-py3-none-manylinux2014_x86_64.whl (176.2 MB)\n", | |
"Using cached nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (99 kB)\n", | |
"Using cached nvidia_nvjitlink_cu12-12.6.20-py3-none-manylinux2014_x86_64.whl (19.7 MB)\n", | |
"Building wheels for collected packages: ecoscape-connectivity\n", | |
" Building wheel for ecoscape-connectivity (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
" Created wheel for ecoscape-connectivity: filename=ecoscape_connectivity-0.1.0-py3-none-any.whl size=16653 sha256=24fd861083121f1f7cd99809e9430f4ea87deda66757ed1185fb821b0e336839\n", | |
" Stored in directory: /tmp/pip-ephem-wheel-cache-exo_n1_6/wheels/9b/fc/70/113a7541447bff452ec09c5225598c2d5e729e7ca97d920a8c\n", | |
"Successfully built ecoscape-connectivity\n", | |
"Installing collected packages: nvidia-nvtx-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, nvidia-cusparse-cu12, nvidia-cudnn-cu12, nvidia-cusolver-cu12, ecoscape-connectivity\n", | |
"Successfully installed ecoscape-connectivity-0.1.0 nvidia-cublas-cu12-12.1.3.1 nvidia-cuda-cupti-cu12-12.1.105 nvidia-cuda-nvrtc-cu12-12.1.105 nvidia-cuda-runtime-cu12-12.1.105 nvidia-cudnn-cu12-8.9.2.26 nvidia-cufft-cu12-11.0.2.54 nvidia-curand-cu12-10.3.2.106 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 nvidia-nccl-cu12-2.20.5 nvidia-nvjitlink-cu12-12.6.20 nvidia-nvtx-cu12-12.1.105\n", | |
"Collecting git+https://github.com/ecoscape-earth/ecoscape-utils.git@v3\n", | |
" Cloning https://github.com/ecoscape-earth/ecoscape-utils.git (to revision v3) to /tmp/pip-req-build-pa0r0ze7\n", | |
" Running command git clone --filter=blob:none --quiet https://github.com/ecoscape-earth/ecoscape-utils.git /tmp/pip-req-build-pa0r0ze7\n", | |
" Running command git checkout -b v3 --track origin/v3\n", | |
" Switched to a new branch 'v3'\n", | |
" Branch 'v3' set up to track remote branch 'v3' from 'origin'.\n", | |
" Resolved https://github.com/ecoscape-earth/ecoscape-utils.git to commit dd0d95a5014ef2551a00082ea1206e3c5b896066\n", | |
" Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n", | |
" Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n", | |
" Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
"Requirement already satisfied: pandas>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from ecoscape-utilities==0.0.31) (2.1.4)\n", | |
"Requirement already satisfied: scgt>=0.0.20 in /usr/local/lib/python3.10/dist-packages (from ecoscape-utilities==0.0.31) (0.0.20)\n", | |
"Requirement already satisfied: pyproj>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from ecoscape-utilities==0.0.31) (3.6.1)\n", | |
"Requirement already satisfied: numpy>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from ecoscape-utilities==0.0.31) (1.26.4)\n", | |
"Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.0.0->ecoscape-utilities==0.0.31) (2.8.2)\n", | |
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.0.0->ecoscape-utilities==0.0.31) (2024.1)\n", | |
"Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.0.0->ecoscape-utilities==0.0.31) (2024.1)\n", | |
"Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from pyproj>=3.0.0->ecoscape-utilities==0.0.31) (2024.7.4)\n", | |
"Requirement already satisfied: GDAL>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.20->ecoscape-utilities==0.0.31) (3.6.4)\n", | |
"Requirement already satisfied: matplotlib>=3.5.3 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.20->ecoscape-utilities==0.0.31) (3.7.1)\n", | |
"Requirement already satisfied: rasterio>=1.2.10 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.3.10)\n", | |
"Requirement already satisfied: scipy>=1.7.3 in /usr/local/lib/python3.10/dist-packages (from scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.13.1)\n", | |
"Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.2.1)\n", | |
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (0.12.1)\n", | |
"Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (4.53.1)\n", | |
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.4.5)\n", | |
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (24.1)\n", | |
"Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (9.4.0)\n", | |
"Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.5.3->scgt>=0.0.20->ecoscape-utilities==0.0.31) (3.1.2)\n", | |
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas>=1.0.0->ecoscape-utilities==0.0.31) (1.16.0)\n", | |
"Requirement already satisfied: affine in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (2.4.0)\n", | |
"Requirement already satisfied: attrs in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (24.2.0)\n", | |
"Requirement already satisfied: click>=4.0 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (8.1.7)\n", | |
"Requirement already satisfied: cligj>=0.5 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (0.7.2)\n", | |
"Requirement already satisfied: snuggs>=1.4.1 in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.4.7)\n", | |
"Requirement already satisfied: click-plugins in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (1.1.1)\n", | |
"Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from rasterio>=1.2.10->scgt>=0.0.20->ecoscape-utilities==0.0.31) (71.0.4)\n", | |
"Building wheels for collected packages: ecoscape-utilities\n", | |
" Building wheel for ecoscape-utilities (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n", | |
" Created wheel for ecoscape-utilities: filename=ecoscape_utilities-0.0.31-py3-none-any.whl size=10255 sha256=8d9cdba993588b68593f1f166378c327c9cecabda19a7a76c110e1f326789956\n", | |
" Stored in directory: /tmp/pip-ephem-wheel-cache-iavo8wk1/wheels/07/4d/70/d10366f0d658290b68d9eb7fbedc00578c6db6e335a6dd9c2a\n", | |
"Successfully built ecoscape-utilities\n", | |
"Installing collected packages: ecoscape-utilities\n", | |
"Successfully installed ecoscape-utilities-0.0.31\n" | |
] | |
} | |
], | |
"source": [ | |
"# Installs required packages\n", | |
"!pip install git+https://github.com/ecoscape-earth/scgt.git@v3\n", | |
"!pip install git+https://github.com/ecoscape-earth/ecoscape-connectivity.git@v3\n", | |
"!pip install git+https://github.com/ecoscape-earth/ecoscape-utils.git@v3\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "iTaFpgvkS1S-", | |
"outputId": "b1f60d05-18e7-49f0-bbf2-9b203a0de1fc" | |
}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Mounted at /content/gdrive\n" | |
] | |
} | |
], | |
"source": [ | |
"# Connecting to Drive.\n", | |
"if not IS_LOCAL:\n", | |
" from google.colab import drive\n", | |
" drive.mount(\"/content/gdrive\", force_remount=True)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": { | |
"id": "7ciHKINPTRxo" | |
}, | |
"outputs": [], | |
"source": [ | |
"from ecoscape_utilities import BirdRun\n", | |
"from ecoscape_connectivity import compute_connectivity, half_cauchy\n", | |
"from ecoscape_connectivity.util import read_transmission_csv" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "WOSTuXgfsIf6" | |
}, | |
"source": [ | |
"## Bird Run Definition" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": { | |
"id": "ep-09bp33k08" | |
}, | |
"outputs": [], | |
"source": [ | |
"def run_birds(run_name=None, use_cauchy=True, use_permeability=True, num_simulations=1000):\n", | |
"\n", | |
" if run_name is None:\n", | |
" run_name = f\"Run_cauchy:{use_cauchy}_permeability:{use_permeability}_num_simulations:{num_simulations}\"\n", | |
"\n", | |
" print(\"Running:\", run_name)\n", | |
"\n", | |
" bird_run = BirdRun(DATA_PATH)\n", | |
"\n", | |
" bird_states = {\n", | |
" \"acowoo\": [\"US-AZ\", \"US-CA\", \"US-NM\", \"US-NV\", \"US-OR\",],\n", | |
" \"stejay\": [\"US-AZ\", \"US-CA\", \"US-CO\", \"US-ID\", \"US-MT\", \"US-NM\", \"US-NV\", \"US-OR\", \"US-UT\", \"US-WA\", \"US-WY\",],\n", | |
" \"pilwoo\": [\"US-AL\", \"US-AR\", \"US-CA\", \"US-FL\", \"US-GA\", \"US-IA\", \"US-ID\", \"US-ID\", \"US-IL\", \"US-IN\", \"US-KS\",\n", | |
" \"US-LA\", \"US-MA\", \"US-ME\", \"US-MI\", \"US-MN\", \"US-MO\", \"US-MS\", \"US-MT\", \"US-NC\", \"US-ND\", \"US-NY\",\n", | |
" \"US-OH\", \"US-OK\", \"US-OR\", \"US-PA\", \"US-SC\", \"US-TN\", \"US-TX\", \"US-VA\", \"US-VT\", \"US-WA\", \"US-WI\",\n", | |
" \"US-WV\"],\n", | |
" }\n", | |
" bird_names = {\n", | |
" \"acowoo\": \"Acorn Woodpecker\",\n", | |
" \"stejay\": \"Steller's Jay\",\n", | |
" \"pilwoo\": \"Pileated Woodpecker\"\n", | |
" }\n", | |
" if use_cauchy:\n", | |
" bird_dispersal = {\n", | |
" \"acowoo\": half_cauchy(45, 45 * 4), # 13.8 Km\n", | |
" \"stejay\": half_cauchy(22, 22 * 4), # 6.7 Km\n", | |
" \"pilwoo\": half_cauchy(42, 42 * 4), # 12.6 Km\n", | |
" }\n", | |
" else:\n", | |
" bird_dispersal = {\n", | |
" \"acowoo\": 45, # 13.8 Km\n", | |
" \"stejay\": 22, # 6.7 Km\n", | |
" \"pilwoo\": 42, # 12.6 Km\n", | |
" }\n", | |
"\n", | |
" birds = []\n", | |
"\n", | |
" for bird, states in bird_states.items():\n", | |
" for state in states:\n", | |
" birds.append(bird_run.get_bird_run(\n", | |
" bird, bird_names.get(bird), state=state, run_name=run_name))\n", | |
"\n", | |
" start_t = time.time()\n", | |
" for bird in birds:\n", | |
" print(\"Computing:\", bird.name, \"in\", bird.state)\n", | |
"\n", | |
" # Creates output folder, if missing.\n", | |
" bird_run.createdir_for_file(bird.repopulation_fn)\n", | |
" bird_run.createdir_for_file(bird.gradient_fn)\n", | |
"\n", | |
" transmission_d = read_transmission_csv(bird.transmission_fn) if use_permeability else {}\n", | |
"\n", | |
" t0 = time.time()\n", | |
" compute_connectivity(\n", | |
" habitat_fn=bird.habitat_fn,\n", | |
" landcover_fn=bird.terrain_fn,\n", | |
" connectivity_fn=bird.repopulation_fn,\n", | |
" permeability_dict=transmission_d,\n", | |
" dispersal=bird_dispersal[bird.nickname],\n", | |
" num_simulations=num_simulations,\n", | |
" single_tile=True\n", | |
" )\n", | |
"\n", | |
" print(\"Processed\", bird.name, \"in\", bird.state, \"in\", time.time() - t0, \"seconds\")\n", | |
" print(\"Total time:\", time.time() - start_t)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"source": [ | |
"run_birds(use_cauchy=True, use_permeability=True, num_simulations=1000)\n", | |
"run_birds(use_cauchy=False, use_permeability=True, num_simulations=1000)\n", | |
"run_birds(use_cauchy=True, use_permeability=False, num_simulations=1000)\n" | |
], | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "9QjFQ6djxS9S", | |
"outputId": "9c72cdee-005d-4fee-b80f-a6d37288487c" | |
}, | |
"execution_count": 9, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Running: Run_cauchy:True_permeability:True_num_simulations:1000\n", | |
"Computing: Acorn Woodpecker in US-AZ\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-AZ in 31.714933156967163 seconds\n", | |
"Computing: Acorn Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-CA in 65.53690600395203 seconds\n", | |
"Computing: Acorn Woodpecker in US-NM\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NM in 32.12092208862305 seconds\n", | |
"Computing: Acorn Woodpecker in US-NV\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NV in 34.06862926483154 seconds\n", | |
"Computing: Acorn Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-OR in 29.968623161315918 seconds\n", | |
"Computing: Steller's Jay in US-AZ\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-AZ in 19.362025022506714 seconds\n", | |
"Computing: Steller's Jay in US-CA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CA in 37.58309626579285 seconds\n", | |
"Computing: Steller's Jay in US-CO\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CO in 17.669897317886353 seconds\n", | |
"Computing: Steller's Jay in US-ID\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-ID in 21.86714005470276 seconds\n", | |
"Computing: Steller's Jay in US-MT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-MT in 23.797516584396362 seconds\n", | |
"Computing: Steller's Jay in US-NM\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NM in 18.66158437728882 seconds\n", | |
"Computing: Steller's Jay in US-NV\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NV in 20.181312322616577 seconds\n", | |
"Computing: Steller's Jay in US-OR\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-OR in 18.850056171417236 seconds\n", | |
"Computing: Steller's Jay in US-UT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-UT in 15.45186972618103 seconds\n", | |
"Computing: Steller's Jay in US-WA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WA in 14.397034645080566 seconds\n", | |
"Computing: Steller's Jay in US-WY\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WY in 16.389258861541748 seconds\n", | |
"Computing: Pileated Woodpecker in US-AL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AL in 21.239349603652954 seconds\n", | |
"Computing: Pileated Woodpecker in US-AR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AR in 19.504095554351807 seconds\n", | |
"Computing: Pileated Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-CA in 62.52925157546997 seconds\n", | |
"Computing: Pileated Woodpecker in US-FL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-FL in 42.094162464141846 seconds\n", | |
"Computing: Pileated Woodpecker in US-GA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-GA in 23.299235582351685 seconds\n", | |
"Computing: Pileated Woodpecker in US-IA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IA in 19.46362018585205 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 30.188777923583984 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 25.05781602859497 seconds\n", | |
"Computing: Pileated Woodpecker in US-IL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IL in 24.502135038375854 seconds\n", | |
"Computing: Pileated Woodpecker in US-IN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IN in 15.889889001846313 seconds\n", | |
"Computing: Pileated Woodpecker in US-KS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-KS in 22.702221393585205 seconds\n", | |
"Computing: Pileated Woodpecker in US-LA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-LA in 24.639426708221436 seconds\n", | |
"Computing: Pileated Woodpecker in US-MA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MA in 12.193839311599731 seconds\n", | |
"Computing: Pileated Woodpecker in US-ME\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ME in 19.234439373016357 seconds\n", | |
"Computing: Pileated Woodpecker in US-MI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MI in 37.16335606575012 seconds\n", | |
"Computing: Pileated Woodpecker in US-MN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MN in 31.55312991142273 seconds\n", | |
"Computing: Pileated Woodpecker in US-MO\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MO in 27.28820252418518 seconds\n", | |
"Computing: Pileated Woodpecker in US-MS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MS in 20.76450228691101 seconds\n", | |
"Computing: Pileated Woodpecker in US-MT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MT in 35.172871351242065 seconds\n", | |
"Computing: Pileated Woodpecker in US-NC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NC in 25.667667627334595 seconds\n", | |
"Computing: Pileated Woodpecker in US-ND\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ND in 18.255792140960693 seconds\n", | |
"Computing: Pileated Woodpecker in US-NY\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NY in 29.616414785385132 seconds\n", | |
"Computing: Pileated Woodpecker in US-OH\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OH in 18.570247411727905 seconds\n", | |
"Computing: Pileated Woodpecker in US-OK\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OK in 27.328511476516724 seconds\n", | |
"Computing: Pileated Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OR in 26.769189596176147 seconds\n", | |
"Computing: Pileated Woodpecker in US-PA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-PA in 17.950238943099976 seconds\n", | |
"Computing: Pileated Woodpecker in US-SC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-SC in 19.358628273010254 seconds\n", | |
"Computing: Pileated Woodpecker in US-TN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TN in 19.213846921920776 seconds\n", | |
"Computing: Pileated Woodpecker in US-TX\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TX in 86.62699365615845 seconds\n", | |
"Computing: Pileated Woodpecker in US-VA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VA in 24.604155778884888 seconds\n", | |
"Computing: Pileated Woodpecker in US-VT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VT in 11.864339590072632 seconds\n", | |
"Computing: Pileated Woodpecker in US-WA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WA in 22.977347135543823 seconds\n", | |
"Computing: Pileated Woodpecker in US-WI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WI in 24.70802116394043 seconds\n", | |
"Computing: Pileated Woodpecker in US-WV\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WV in 18.499181032180786 seconds\n", | |
"Total time: 1358.342708826065\n", | |
"Running: Run_cauchy:False_permeability:True_num_simulations:1000\n", | |
"Computing: Acorn Woodpecker in US-AZ\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-AZ in 20.63040256500244 seconds\n", | |
"Computing: Acorn Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-CA in 47.124107122421265 seconds\n", | |
"Computing: Acorn Woodpecker in US-NM\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NM in 21.697290420532227 seconds\n", | |
"Computing: Acorn Woodpecker in US-NV\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NV in 23.43282389640808 seconds\n", | |
"Computing: Acorn Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-OR in 18.53649592399597 seconds\n", | |
"Computing: Steller's Jay in US-AZ\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-AZ in 10.9296236038208 seconds\n", | |
"Computing: Steller's Jay in US-CA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CA in 24.763747215270996 seconds\n", | |
"Computing: Steller's Jay in US-CO\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CO in 9.97453761100769 seconds\n", | |
"Computing: Steller's Jay in US-ID\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-ID in 12.295289278030396 seconds\n", | |
"Computing: Steller's Jay in US-MT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-MT in 13.881445169448853 seconds\n", | |
"Computing: Steller's Jay in US-NM\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NM in 11.764456272125244 seconds\n", | |
"Computing: Steller's Jay in US-NV\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NV in 12.694722890853882 seconds\n", | |
"Computing: Steller's Jay in US-OR\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-OR in 9.96366548538208 seconds\n", | |
"Computing: Steller's Jay in US-UT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-UT in 8.015905857086182 seconds\n", | |
"Computing: Steller's Jay in US-WA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WA in 7.706131935119629 seconds\n", | |
"Computing: Steller's Jay in US-WY\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WY in 8.238943338394165 seconds\n", | |
"Computing: Pileated Woodpecker in US-AL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AL in 12.070406198501587 seconds\n", | |
"Computing: Pileated Woodpecker in US-AR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AR in 11.290050983428955 seconds\n", | |
"Computing: Pileated Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-CA in 44.06441807746887 seconds\n", | |
"Computing: Pileated Woodpecker in US-FL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-FL in 29.43875217437744 seconds\n", | |
"Computing: Pileated Woodpecker in US-GA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-GA in 14.70343828201294 seconds\n", | |
"Computing: Pileated Woodpecker in US-IA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IA in 11.090520858764648 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 20.395140171051025 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 19.506210803985596 seconds\n", | |
"Computing: Pileated Woodpecker in US-IL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IL in 14.195634126663208 seconds\n", | |
"Computing: Pileated Woodpecker in US-IN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IN in 8.656102180480957 seconds\n", | |
"Computing: Pileated Woodpecker in US-KS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-KS in 13.463552713394165 seconds\n", | |
"Computing: Pileated Woodpecker in US-LA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-LA in 14.908012390136719 seconds\n", | |
"Computing: Pileated Woodpecker in US-MA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MA in 5.44195818901062 seconds\n", | |
"Computing: Pileated Woodpecker in US-ME\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ME in 10.149593353271484 seconds\n", | |
"Computing: Pileated Woodpecker in US-MI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MI in 24.95621109008789 seconds\n", | |
"Computing: Pileated Woodpecker in US-MN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MN in 20.41204833984375 seconds\n", | |
"Computing: Pileated Woodpecker in US-MO\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MO in 17.37983775138855 seconds\n", | |
"Computing: Pileated Woodpecker in US-MS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MS in 11.714066505432129 seconds\n", | |
"Computing: Pileated Woodpecker in US-MT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MT in 24.106431007385254 seconds\n", | |
"Computing: Pileated Woodpecker in US-NC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NC in 16.201562881469727 seconds\n", | |
"Computing: Pileated Woodpecker in US-ND\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ND in 10.824217081069946 seconds\n", | |
"Computing: Pileated Woodpecker in US-NY\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NY in 18.473589658737183 seconds\n", | |
"Computing: Pileated Woodpecker in US-OH\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OH in 9.965677738189697 seconds\n", | |
"Computing: Pileated Woodpecker in US-OK\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OK in 17.50431776046753 seconds\n", | |
"Computing: Pileated Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OR in 17.78381586074829 seconds\n", | |
"Computing: Pileated Woodpecker in US-PA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-PA in 9.839179992675781 seconds\n", | |
"Computing: Pileated Woodpecker in US-SC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-SC in 10.672645330429077 seconds\n", | |
"Computing: Pileated Woodpecker in US-TN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TN in 10.992538213729858 seconds\n", | |
"Computing: Pileated Woodpecker in US-TX\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TX in 64.23569393157959 seconds\n", | |
"Computing: Pileated Woodpecker in US-VA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VA in 15.06814169883728 seconds\n", | |
"Computing: Pileated Woodpecker in US-VT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VT in 5.239925384521484 seconds\n", | |
"Computing: Pileated Woodpecker in US-WA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WA in 12.754020690917969 seconds\n", | |
"Computing: Pileated Woodpecker in US-WI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WI in 15.845798254013062 seconds\n", | |
"Computing: Pileated Woodpecker in US-WV\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WV in 10.158215522766113 seconds\n", | |
"Total time: 835.4699492454529\n", | |
"Running: Run_cauchy:True_permeability:False_num_simulations:1000\n", | |
"Computing: Acorn Woodpecker in US-AZ\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-AZ in 25.786837816238403 seconds\n", | |
"Computing: Acorn Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-CA in 58.818359375 seconds\n", | |
"Computing: Acorn Woodpecker in US-NM\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NM in 26.955440759658813 seconds\n", | |
"Computing: Acorn Woodpecker in US-NV\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-NV in 28.8215172290802 seconds\n", | |
"Computing: Acorn Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Acorn Woodpecker in US-OR in 23.010843753814697 seconds\n", | |
"Computing: Steller's Jay in US-AZ\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-AZ in 13.451575517654419 seconds\n", | |
"Computing: Steller's Jay in US-CA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CA in 31.74395179748535 seconds\n", | |
"Computing: Steller's Jay in US-CO\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-CO in 11.914475679397583 seconds\n", | |
"Computing: Steller's Jay in US-ID\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-ID in 14.606860399246216 seconds\n", | |
"Computing: Steller's Jay in US-MT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-MT in 17.2008638381958 seconds\n", | |
"Computing: Steller's Jay in US-NM\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NM in 14.402210712432861 seconds\n", | |
"Computing: Steller's Jay in US-NV\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-NV in 15.665057897567749 seconds\n", | |
"Computing: Steller's Jay in US-OR\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-OR in 12.610599040985107 seconds\n", | |
"Computing: Steller's Jay in US-UT\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-UT in 10.487587451934814 seconds\n", | |
"Computing: Steller's Jay in US-WA\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WA in 9.407283782958984 seconds\n", | |
"Computing: Steller's Jay in US-WY\n", | |
"Single tile\n", | |
"Processed Steller's Jay in US-WY in 10.60508918762207 seconds\n", | |
"Computing: Pileated Woodpecker in US-AL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AL in 15.420902490615845 seconds\n", | |
"Computing: Pileated Woodpecker in US-AR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-AR in 14.579025030136108 seconds\n", | |
"Computing: Pileated Woodpecker in US-CA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-CA in 54.31570506095886 seconds\n", | |
"Computing: Pileated Woodpecker in US-FL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-FL in 35.52782464027405 seconds\n", | |
"Computing: Pileated Woodpecker in US-GA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-GA in 17.5629940032959 seconds\n", | |
"Computing: Pileated Woodpecker in US-IA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IA in 13.410342454910278 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 24.932932376861572 seconds\n", | |
"Computing: Pileated Woodpecker in US-ID\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ID in 24.029069662094116 seconds\n", | |
"Computing: Pileated Woodpecker in US-IL\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IL in 19.26942229270935 seconds\n", | |
"Computing: Pileated Woodpecker in US-IN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-IN in 11.079613208770752 seconds\n", | |
"Computing: Pileated Woodpecker in US-KS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-KS in 16.179645538330078 seconds\n", | |
"Computing: Pileated Woodpecker in US-LA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-LA in 18.064332962036133 seconds\n", | |
"Computing: Pileated Woodpecker in US-MA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MA in 6.740523815155029 seconds\n", | |
"Computing: Pileated Woodpecker in US-ME\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ME in 12.51366639137268 seconds\n", | |
"Computing: Pileated Woodpecker in US-MI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MI in 31.58663582801819 seconds\n", | |
"Computing: Pileated Woodpecker in US-MN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MN in 26.075746536254883 seconds\n", | |
"Computing: Pileated Woodpecker in US-MO\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MO in 21.094363689422607 seconds\n", | |
"Computing: Pileated Woodpecker in US-MS\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MS in 14.687667608261108 seconds\n", | |
"Computing: Pileated Woodpecker in US-MT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-MT in 30.738324880599976 seconds\n", | |
"Computing: Pileated Woodpecker in US-NC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NC in 19.534205436706543 seconds\n", | |
"Computing: Pileated Woodpecker in US-ND\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-ND in 13.604973077774048 seconds\n", | |
"Computing: Pileated Woodpecker in US-NY\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-NY in 22.213584184646606 seconds\n", | |
"Computing: Pileated Woodpecker in US-OH\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OH in 12.224807262420654 seconds\n", | |
"Computing: Pileated Woodpecker in US-OK\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OK in 22.151943922042847 seconds\n", | |
"Computing: Pileated Woodpecker in US-OR\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-OR in 21.663195848464966 seconds\n", | |
"Computing: Pileated Woodpecker in US-PA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-PA in 11.487581729888916 seconds\n", | |
"Computing: Pileated Woodpecker in US-SC\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-SC in 13.724217891693115 seconds\n", | |
"Computing: Pileated Woodpecker in US-TN\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TN in 13.2601478099823 seconds\n", | |
"Computing: Pileated Woodpecker in US-TX\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-TX in 80.11328029632568 seconds\n", | |
"Computing: Pileated Woodpecker in US-VA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VA in 18.570183277130127 seconds\n", | |
"Computing: Pileated Woodpecker in US-VT\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-VT in 6.538121223449707 seconds\n", | |
"Computing: Pileated Woodpecker in US-WA\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WA in 16.0592520236969 seconds\n", | |
"Computing: Pileated Woodpecker in US-WI\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WI in 19.322454929351807 seconds\n", | |
"Computing: Pileated Woodpecker in US-WV\n", | |
"Single tile\n", | |
"Processed Pileated Woodpecker in US-WV in 12.731599569320679 seconds\n", | |
"Total time: 1036.6903455257416\n" | |
] | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": { | |
"id": "1HvfYqTA9WOS" | |
}, | |
"outputs": [], | |
"source": [ | |
"def run_birds_flow(target=None, num_simulations=1000):\n", | |
"\n", | |
" bird_run = BirdRun(DATA_PATH)\n", | |
"\n", | |
" bird_states = {\n", | |
" \"acowoo\": [\"US-CA\", \"US-OR\", \"US-NV\", \"US-NM\"],\n", | |
" \"stejay\": [\"US-CA\", \"US-UT\", \"US-CO\"], # \"US-OR\", \"US-MT\", \"US-ID\", \"US-WY\", \"US-NV\", \"US-NM\", \"US-WA\"],\n", | |
" \"pilwoo\": [\"US-NC\", \"US-TN\", \"US-AR\", \"US-CA\"] # \"US-SC\", \"US-GA\", \"US-MS\", \"US-AL\"],\n", | |
" }\n", | |
" bird_names = {\n", | |
" \"acowoo\": \"Acorn Woodpecker\",\n", | |
" \"stejay\": \"Steller's Jay\",\n", | |
" \"pilwoo\": \"Pileated Woodpecker\"\n", | |
" }\n", | |
" bird_dispersal = {\n", | |
" \"acowoo\": 45, # 13.8 Km\n", | |
" \"stejay\": 22, # 6.7 Km\n", | |
" \"pilwoo\": 42, # 12.6 Km\n", | |
" }\n", | |
"\n", | |
" birds = []\n", | |
"\n", | |
" for bird, states in bird_states.items():\n", | |
" for state in states:\n", | |
" birds.append(bird_run.get_bird_run(\n", | |
" bird, bird_names.get(bird), state=state, run_name=target))\n", | |
"\n", | |
" start_t = time.time()\n", | |
" for bird in birds:\n", | |
" print(\"Computing:\", bird.name, \"in\", bird.state)\n", | |
"\n", | |
" # Creates output folder, if missing.\n", | |
" bird_run.createdir_for_file(bird.repopulation_fn)\n", | |
" bird_run.createdir_for_file(bird.gradient_fn)\n", | |
"\n", | |
" transmission_d = read_transmission_csv(bird.transmission_fn)\n", | |
"\n", | |
" t0 = time.time()\n", | |
" compute_connectivity(\n", | |
" habitat_fn=bird.habitat_fn,\n", | |
" landcover_fn=bird.terrain_fn,\n", | |
" connectivity_fn=bird.repopulation_fn,\n", | |
" flow_fn=bird.gradient_fn,\n", | |
" permeability_dict=transmission_d,\n", | |
" dispersal=bird_dispersal[bird.nickname],\n", | |
" num_simulations=num_simulations,\n", | |
" single_tile=False,\n", | |
" tile_size=1024,\n", | |
" border_size=64\n", | |
" )\n", | |
"\n", | |
" print(\"Processed\", bird.name, \"in\", bird.state, \"in\", time.time() - t0, \"seconds\")\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": { | |
"id": "VmaaxlIn6LpA", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "51725104-83f3-4b1b-c29d-80deed7db0db" | |
}, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"name": "stdout", | |
"text": [ | |
"Computing: Acorn Woodpecker in US-CA\n", | |
"Not single tile\n", | |
"Processed Acorn Woodpecker in US-CA in 145.0544981956482 seconds\n", | |
"Computing: Acorn Woodpecker in US-OR\n", | |
"Not single tile\n", | |
"Processed Acorn Woodpecker in US-OR in 28.815590620040894 seconds\n", | |
"Computing: Acorn Woodpecker in US-NV\n", | |
"Not single tile\n", | |
"Processed Acorn Woodpecker in US-NV in 72.07321310043335 seconds\n", | |
"Computing: Acorn Woodpecker in US-NM\n", | |
"Not single tile\n", | |
"Processed Acorn Woodpecker in US-NM in 86.25423526763916 seconds\n", | |
"Computing: Steller's Jay in US-CA\n", | |
"Not single tile\n", | |
"Processed Steller's Jay in US-CA in 102.9798789024353 seconds\n", | |
"Computing: Steller's Jay in US-UT\n", | |
"Not single tile\n", | |
"Processed Steller's Jay in US-UT in 43.781893491744995 seconds\n", | |
"Computing: Steller's Jay in US-CO\n", | |
"Not single tile\n", | |
"Processed Steller's Jay in US-CO in 29.52504277229309 seconds\n", | |
"Computing: Pileated Woodpecker in US-NC\n", | |
"Not single tile\n", | |
"Processed Pileated Woodpecker in US-NC in 80.69395899772644 seconds\n", | |
"Computing: Pileated Woodpecker in US-TN\n", | |
"Not single tile\n", | |
"Processed Pileated Woodpecker in US-TN in 80.6709713935852 seconds\n", | |
"Computing: Pileated Woodpecker in US-AR\n", | |
"Not single tile\n", | |
"Processed Pileated Woodpecker in US-AR in 53.986422300338745 seconds\n", | |
"Computing: Pileated Woodpecker in US-CA\n", | |
"Not single tile\n", | |
"Processed Pileated Woodpecker in US-CA in 80.9038507938385 seconds\n" | |
] | |
} | |
], | |
"source": [ | |
"run_birds_flow(target=\"Flow\")" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": { | |
"id": "g0LtsG6-B8D4" | |
}, | |
"outputs": [], | |
"source": [] | |
} | |
], | |
"metadata": { | |
"accelerator": "GPU", | |
"colab": { | |
"gpuType": "A100", | |
"provenance": [], | |
"machine_shape": "hm", | |
"include_colab_link": true | |
}, | |
"kernelspec": { | |
"display_name": "Python 3", | |
"name": "python3" | |
}, | |
"language_info": { | |
"name": "python" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 0 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment