Simu5G is the evolution of the popular SimuLTE 4G network simulator that incorporates 5G New Radio access.
Based on the OMNeT++ framework, it is written in C++ and is fully customizable with a simple pluggable interface. One can also develop new modules implementing new algorithms and protocols.