Installation

Install PyRFDT and RFDT-Core to get started with RF digital twin simulation

Prerequisites

System Requirements

Software

  • • Python: 3.8 or higher (3.10 recommended)
  • • pip: Latest version
  • • Git: For source installation
  • • Conda: Anaconda or Miniconda

Hardware & Platform

  • • GPU: NVIDIA GPU (CUDA-capable)
  • • Windows: Windows 10/11 (64-bit)
  • • Linux: Ubuntu 20.04+ or equivalent

Step 0: Create Conda Environment

First, create a dedicated conda environment with the required dependencies:

Create and activate conda environment

conda create --name RFDT_demo -y python=3.8
conda activate RFDT_demo

Install requirements

conda install -c conda-forge gcc=12.1.0
python -m pip install --upgrade pip
pip install torch==2.1.2+cu118 torchvision==0.16.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
pip install numpy matplotlib opencv-python ipykernel
conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit

Step 1: Install PyRFDT

PyRFDT is the Python package that provides the API and server for RF digital twin simulation.

Install from GitHub

Install the latest version directly from the GitHub repository:

pip install git+https://github.com/RFDigitalTwin/PyRFDT

Step 2: Install RFDT-Core

RFDT-Core is the high-performance C++ ray tracing engine. Install the pre-built wheel for your platform:

Windows Installation

Python 3.8

Pre-built wheel for Windows (Python 3.8):

pip install https://github.com/RFDigitalTwin/PyRFDT/releases/download/v0.01a/rfdt_rt-0.0.1-cp38-cp38-win_amd64.whl

Platform-specific wheels

RFDT-Core is a compiled C++ library with CUDA support. Make sure to install the correct wheel for your platform and Python version.

Verify Installation

Verify that both packages are installed correctly:

Test Import

python -c "import rfdt; print('PyRFDT version:', rfdt.__version__)"
python -c "import invertwin; print('RFDT-Core imported successfully')"

# Or in Python:
import rfdt
import invertwin as wt

print("✓ All packages installed successfully!")
print(f"PyRFDT: {rfdt.__version__}")
print(f"InverTwin (RFDT-Core): Available")