0% found this document useful (0 votes)
23 views5 pages

5G Pathloss File Input For GNB v13.3

This document describes how to input custom pathloss files in NetSim to vary the 5G channel model. It provides instructions on downloading the project files, an example scenario where pathloss values override the default model, and the required format for the pathloss input text files. NetSim source code was modified to read pathloss values from the input files and use them to calculate signal strength instead of the standard pathloss models.

Uploaded by

kanagaraj2331993
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views5 pages

5G Pathloss File Input For GNB v13.3

This document describes how to input custom pathloss files in NetSim to vary the 5G channel model. It provides instructions on downloading the project files, an example scenario where pathloss values override the default model, and the required format for the pathloss input text files. NetSim source code was modified to read pathloss values from the input files and use them to calculate signal strength instead of the standard pathloss models.

Uploaded by

kanagaraj2331993
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

5G Channel Model: Pathloss File Input

Software: NetSim Standard v13.3, Visual Studio 2022

Project Download Link:


https://github.com/NetSim-TETCOS/5G-Pathloss-Input-File_v13.3/archive/refs/heads/main.zip

Follow the instructions specified in the following link to download and setup the Project in NetSim:

https://support.tetcos.com/en/support/solutions/articles/14000128666-downloading-and-setting-
up-netsim-file-exchange-projects

Features
Using this workspace users can
• Input a pathloss file for each gNB in the network. NetSim would read the pathloss text file
for the gNB in the network. This file is used for identifying best server and for calculating
signal strength.
• Vary the 5G channel model in NetSim, by modifying the pathloss values in the file.

Example
Consider the example 1gNB and 1UE with fixed mobility
• The scenario consists of 1 gNB and 1 UE. An external pathloss file is given as input to the
gNB. This will override whatever channel model is set via the GUI.
• Users should pay attention to the gNB’s co-ordinates. It is not part of the pathloss file, and
is set via the GUI (X, Y co-ordinates). Makesure that the gNB co-ordinates match (or is
suitably transformed) the co-ordinates used for generating the pathloss file.
• The network is simulated for 60 s with application generation rate as 38 Mbps.

Figure 1: Scenario showing UE downloading data from a server via the 5G Core and the gNB

• Upon clicking the RUN button, the log folder path is automatically opened. User should
place the files containing the pathloss for eNB/gNB in here.

Ver 13.3 Page 1 of 5


Figure 2: User should place the pathloss file in this log folder

• The pathloss file should start with the device name followed by “_Pathloss” and be saved
as a text file (*.txt).
• The pathloss file should be per the given format:
• The first two lines must have the below parameters.

max=<X-axis length(m)>, ymax=<Y-axis length(m)>, zmax=<Z-axis length(m)


xstep=<X-axis step length(m)>, ystep=<Y-axis step length(m)>, zstep=<Z-axis step
length(m)>

Here the axis length is the max distance till which points would be given. The number of
entries along X for example will be X-Axis-Length divided by X-Axis-Step-Length.

The pathloss does not change between each point; it only changes at the “next” point
whose co-ordinates are determined by the step-length.

• Subsequently x, y, z coordinates with pathloss value must be given.


x_ co-ordinate (m), y_ co-ordinate (m), z_ co-ordinate (m), pathloss (dB)

• An example screen shot is provided below.

Ver 13.3 Page 2 of 5


Figure 3: Pathloss File format
• Note that if UE is placed at or moves to a location beyond xmax, ymax then the pathloss
will be taken as 500 dB.
• If input file is provided for an eNB/gNB then pathloss calculations will happen as per that,
else NetSim will use the standard pathloss models to calculate the pathloss.
• Once the simulation starts, the command window it will show a Message as “Close the
folder and press any key to continue”.
• Place your Pathloss input file in the folder opened. Next, close the folder and press any
key.
• Simulation starts running.
• Upon completion of simulation the pathloss input provided will have an impact on
performance metrics parameters such as the application throughput, that is displayed in
the results dashboard.

Figure 4: NetSim results dashboard

Ver 13.3 Page 3 of 5


Appendix: NetSim source code modifications

Open the source codes in Visual Studio by going to Your Work -> Workspace Options and clicking
on the Open Code button.

Changes in LTE_NR.c file function for reading and opening the input pathloss file
has been called.

static bool isLTENRConfigured = false;


static bool isLTENRTraceConfigured = false;
static bool isCalledOnce = false;
static bool isMetricsCalled = false;
//Function prototype
int fn_NetSim_LTE_NR_Init_F();
int fn_NetSim_LTE_NR_Configure_F(void** var);
int fn_NetSim_LTE_NR_Finish_F();
#pragma endregion

#pragma region LTENR_INIT


_declspec(dllexport) int fn_NetSim_LTE_NR_Init()
{
if (!isCalledOnce)
{
FileBasedPathlossWritingFile();
FileBasedPathlossReadingFile();
LTENR_fn_InterferenceInit();
fn_NetSim_LTENR_HARQ_Init();
LTENR_RadioMeasurements_Init();
fn_NetSim_LTE_MAC_PRBLOG();
fn_NetSim_LTE_TTTLOG();
isCalledOnce = true;
}
return fn_NetSim_LTE_NR_Init_F();
}

Changes in LTENR_Propagation_Model.c

static double calculate_pathloss_only(ptrLTENR_PROPAGATIONINFO info)


{
if (pathlossInfo[info->gnbId - 1])
{
return fn_netsim_get_pathloss_from_file(info->gnbId, info->ueId);
}
double fc = info->frequency_gHz;
double PL1, PL2, PL3, distance2D, distance3D, distanceBP;
double pathloss_RMa_LOS = 0, pathloss_RMa_NLOS = 0;
double pathloss_UMa_LOS = 0, pathloss_UMa_NLOS = 0;
double pathloss_UMi_LOS = 0, pathloss_UMi_NLOS = 0;
double pathloss_InH_LOS = 0, pathloss_InH_NLOS = 0;

double hBS, hUT, W, h;

Ver 13.3 Page 2 of 5


double h_effectiveEnv, hBS_effective, hUT_effective;

distance2D = info->dist2D;
distance3D = info->dist3D;

LTENR_LOS_NLOS_STATE state = info->propagationConfig->state;

The ReadPathlossInput.c file contains the following functions:

FileBasedpathlossReadingFile()

Reads the pathloss file given by user and stores the coordinates and pathloss values for each
gNB in a separate list.

fn_netsim_get_pathloss_from_file()

Returns the pathloss at a requested receiver coordinate with respect to the transmitter gNB.

FileBasedPathlossWritingFile()

This function is to open the path where user can place the pathloss file for a GNB.

Ver 13.3 Page 5 of 5

You might also like