Choosing the best simulation tool for PhD research on 5G depends on your specific research focus, such as: Physical layer (PHY): modulation, beamforming, mmWave, channel modeling MAC/network layer: resource allocation, scheduling, handovers End-to-end systems: latency, throughput, network slicing, URLLC, mMTC Security, AI integration, edge computing, etc.Here’s a ranked list of top simulation tools with their strengths and use-cases:🥇 NS-3 (Network Simulator 3) – Best Overall for 5G Protocol Stack Open source and widely used in academia 5G NR modules (mmWave, massive MIMO, beamforming, RAN slicing) Supports end-to-end simulation (PHY to app layer) Community support + research extensions (e.g., LENA, 5G-LENA by CTTC) Requires C++ and Python skills🔗 https://www.nsnam.org https://5g-lena.cttc.es🥈 MATLAB 5G Toolbox / Simulink – Best for PHY Layer & Algorithms Ideal for waveform design, beamforming, channel modeling, link-level studies 5G NR library for UL/DL, OFDM, LDPC, HARQ, carrier aggregation, etc. Integrates AI/ML, control theory, antenna design (Phased Array Toolbox) Commercial license (expensive for large-scale or network-level sims)🔗 https://www.mathworks.com/products/5g.html🥉 OMNeT++ with Simu5G – Best for MEC, Core Network & IoT Modular, event-driven framework Simu5G supports 5G core (5GC), MEC, slicing, latency analysis Ideal for edge computing, V2X, mMTC simulations
Farid Leguebedj Thanks sir. But if you have to select only one tool then which one will you recommend to use? (Just one name please as i want start with that tool)
I would suggest NetSim. It provides a full 5G stack and includes modules for 5G NTN and AI/ML integration using Python. You can see:
5G library: https://tetcos.com/5g.html
5G NTN: https://tetcos.com/ntn.html
5G with AI/ML: https://tetcos.com/machine-learning-netsim.html
NS-3 LENA has no GUI and requires extensive coding and debugging, NetSim offers an intuitive GUI, plots, and logs. You also get responsive technical support and guidance for implementing custom models or ML-based scenarios.
NS3 LENA is extremely difficult to use; documentation is sparse, and many examples cover only basic cases. And there are multiple forks and inconsistent documentation make it hard to reproduce results.