|
import pandas as pd |
|
|
|
from queries.process_gsm import process_gsm_data |
|
from queries.process_lte import process_lte_data |
|
from queries.process_wcdma import process_wcdma_data |
|
from utils.convert_to_excel import convert_dfs, save_dataframe |
|
from utils.utils_vars import UtilsVars |
|
|
|
LTE_ATOLL_EMETTEUR_COLUMNS = [ |
|
"code", |
|
"name", |
|
"Hauteur", |
|
"Azimut", |
|
] |
|
|
|
LTE_ATOLL_CELLULE_COLUMNS = [ |
|
"name", |
|
"band", |
|
"earfcnDL", |
|
"rootSeqIndex", |
|
"phyCellId", |
|
"pMax", |
|
] |
|
|
|
|
|
WCDMA_ATOLL_EMETTEUR_COLUMNS = [ |
|
"code", |
|
"name", |
|
"Hauteur", |
|
"Azimut", |
|
"porteuse", |
|
] |
|
|
|
WCDMA_ATOLL_CELLULE_COLUMNS = [ |
|
"name", |
|
"UARFCN", |
|
"PriScrCode", |
|
"PtxPrimaryCPICH", |
|
] |
|
|
|
|
|
GSM_ATOLL_COLUMNS = [ |
|
"code", |
|
"name", |
|
"Hauteur", |
|
"Azimut", |
|
"band_frequence", |
|
"TRX_TCH", |
|
"number_trx_per_cell", |
|
"BCCH", |
|
"configuration_schema", |
|
"type_cellule", |
|
"BSIC", |
|
] |
|
|
|
SITE_COLUMNS = [ |
|
"code", |
|
"Longitude", |
|
"Latitude", |
|
"Hauteur", |
|
] |
|
|
|
|
|
|
|
|
|
def process_data_for_atoll(file_path: str): |
|
df: pd.DataFrame = process_lte_data(file_path) |
|
lte_fdd_df = df[0] |
|
lte_tdd_df = df[1] |
|
|
|
lte_tdd_df = lte_tdd_df.rename(columns={"earfcn": "earfcnDL"}) |
|
|
|
lte_atoll_df = pd.concat([lte_fdd_df, lte_tdd_df], ignore_index=True) |
|
lte_site_df = lte_atoll_df[SITE_COLUMNS] |
|
lte_atoll_emetteur_df = lte_atoll_df[LTE_ATOLL_EMETTEUR_COLUMNS] |
|
lte_atoll_cellule_df = lte_atoll_df[LTE_ATOLL_CELLULE_COLUMNS] |
|
|
|
|
|
|
|
lte_atoll_emetteur_df = lte_atoll_emetteur_df.rename( |
|
columns={ |
|
"code": "Site", |
|
"name": "Emetteur", |
|
"Hauteur": "Hauteur (m)", |
|
"Azimut": "Azimut (°)", |
|
} |
|
) |
|
|
|
lte_atoll_emetteur_df.loc[ |
|
lte_atoll_emetteur_df["Hauteur (m)"] < 1, "Hauteur (m)" |
|
] = 1 |
|
|
|
lte_atoll_emetteur_df.loc[lte_atoll_emetteur_df["Azimut (°)"] < 0, "Azimut (°)"] = 0 |
|
|
|
|
|
|
|
lte_atoll_emetteur_df["Activé"] = True |
|
lte_atoll_emetteur_df["DX (m)"] = 0 |
|
lte_atoll_emetteur_df["DY (m)"] = 0 |
|
lte_atoll_emetteur_df["Antenne"] = "OML 65deg 17dBi 6Tilt 1800MHz" |
|
lte_atoll_emetteur_df["Downtilt mécanique (°)"] = 0 |
|
lte_atoll_emetteur_df["Rayon de calcul principal (m)"] = 15000 |
|
lte_atoll_emetteur_df["Modèle de propagation principal"] = ( |
|
"Standard Propagation Model" |
|
) |
|
lte_atoll_emetteur_df["Pertes émission (dB)"] = 0 |
|
lte_atoll_emetteur_df["Pertes réception (dB)"] = 0 |
|
lte_atoll_emetteur_df["Facteur de bruit (dB)"] = 5 |
|
lte_atoll_emetteur_df["Groupe d'hexagones"] = None |
|
lte_atoll_emetteur_df["Rayon hexagone (m)"] = 5000 |
|
lte_atoll_emetteur_df["Commentaires"] = None |
|
lte_atoll_emetteur_df["Equipement TMA"] = None |
|
lte_atoll_emetteur_df["Equipement câbles"] = None |
|
lte_atoll_emetteur_df["Equipement émetteur"] = None |
|
lte_atoll_emetteur_df["Longueur de câbles en émission (m)"] = 100 |
|
lte_atoll_emetteur_df["Longueur de câbles en réception (m)"] = 100 |
|
lte_atoll_emetteur_df["Pertes diverses en émission (dB)"] = 0 |
|
lte_atoll_emetteur_df["Pertes diverses en réception (dB)"] = 0 |
|
lte_atoll_emetteur_df["Rayon de calcul étendu (m)"] = 20000 |
|
lte_atoll_emetteur_df["Modèle de propagation étendu"] = "(aucun)" |
|
lte_atoll_emetteur_df["Résolution principale (m)"] = 500 |
|
lte_atoll_emetteur_df["Résolution étendue (m)"] = 10 |
|
lte_atoll_emetteur_df["Downtilt électrique additionnel (°)"] = 2 |
|
lte_atoll_emetteur_df["Nombre de ports d'antennes en émission"] = 2 |
|
lte_atoll_emetteur_df["Nombre de ports d'antennes en réception"] = 2 |
|
lte_atoll_emetteur_df["Type d'émetteur"] = "Intra-réseau (serveur et brouilleur)" |
|
lte_atoll_emetteur_df["Antenne partagée"] = None |
|
lte_atoll_emetteur_df["Equipement antenne intelligente"] = None |
|
lte_atoll_emetteur_df["Tilt latéral mécanique (°)"] = 0 |
|
lte_atoll_emetteur_df["Diagramme partagé"] = None |
|
|
|
|
|
lte_atoll_cellule_df = lte_atoll_cellule_df.rename( |
|
columns={ |
|
"name": "Nom", |
|
"earfcnDL": "Numéro de canal", |
|
"rootSeqIndex": "Séquences ROOT PRACH", |
|
"phyCellId": "Physical Cell ID", |
|
"pMax": "Puissance max (dBm)", |
|
} |
|
) |
|
|
|
|
|
lte_atoll_cellule_df["Bande de fréquences"] = ( |
|
lte_atoll_cellule_df["band"] |
|
.map(UtilsVars.oml_lte_freq_band) |
|
.fillna("not found") |
|
) |
|
lte_atoll_cellule_df["Emetteur"] = lte_atoll_cellule_df["Nom"] |
|
|
|
lte_atoll_cellule_df["Charge de trafic (UL) (%)"] = 70 |
|
lte_atoll_cellule_df["Charge de trafic (DL) (%)"] = 70 |
|
lte_atoll_cellule_df["Equipement de réception"] = "Default Cell Equipment" |
|
lte_atoll_cellule_df["Commentaires"] = None |
|
lte_atoll_cellule_df["Nombre max d'utilisateurs"] = 600 |
|
lte_atoll_cellule_df["Noise rise UL (dB)"] = 2.5 |
|
lte_atoll_cellule_df["Nombre max de voisines intra-technologie"] = None |
|
lte_atoll_cellule_df["Nombre max de voisines inter-technologies"] = None |
|
lte_atoll_cellule_df["Active"] = True |
|
lte_atoll_cellule_df["Scheduler"] = "Proportional Fair" |
|
lte_atoll_cellule_df["RSRP min (dBm)"] = -128 |
|
lte_atoll_cellule_df["Support de diversité (DL)"] = "Diversité d'émission" |
|
lte_atoll_cellule_df["Configuration de sous-trames TDD"] = "0 - DSUUU-DSUUU" |
|
lte_atoll_cellule_df["Distance de réutilisation (m)"] = 20000 |
|
lte_atoll_cellule_df["Etat du SSS ID"] = "Alloué" |
|
lte_atoll_cellule_df["Etat d'allocation de canal"] = "Alloué" |
|
lte_atoll_cellule_df["Charge de trafic max (UL) (%)"] = 90 |
|
lte_atoll_cellule_df["Charge de trafic max (DL) (%)"] = 90 |
|
lte_atoll_cellule_df["Noise rise UL inter-technologies (dB)"] = 0 |
|
lte_atoll_cellule_df["Noise rise DL inter-technologies (dB)"] = 0 |
|
lte_atoll_cellule_df["Support de diversité (UL)"] = 1 |
|
lte_atoll_cellule_df["Nombre d'utilisateurs MU-MIMO co-schédulés (UL)"] = 2 |
|
lte_atoll_cellule_df["Offset EPRE SS / RS (dB)"] = 0 |
|
lte_atoll_cellule_df["Offset EPRE PDSCH / RS (dB)"] = 0 |
|
lte_atoll_cellule_df["Couche"] = "Macro Layer" |
|
lte_atoll_cellule_df["Support de coordination d'interférences"] = 0 |
|
lte_atoll_cellule_df["Ratio de trafic en bordure de cellule (DL) (%)"] = 0 |
|
lte_atoll_cellule_df["Seuil ICIC de delta path loss (dB)"] = 0 |
|
lte_atoll_cellule_df["Facteur de contrôle de puissance fractionnaire"] = 1 |
|
lte_atoll_cellule_df["Noise rise max (UL) (dB)"] = 6 |
|
lte_atoll_cellule_df["C/(I+N) PUSCH max (dB)"] = 30 |
|
lte_atoll_cellule_df["Noise rise ICIC (UL) (dB)"] = 0 |
|
lte_atoll_cellule_df["EPRE RS par port d'antenne (dBm)"] = 12.2 |
|
lte_atoll_cellule_df["Offset EPRE PBCH / RS (dB)"] = 0 |
|
lte_atoll_cellule_df["Offset EPRE PDCCH / RS (dB)"] = 0 |
|
lte_atoll_cellule_df["Nombre d'utilisateurs (DL)"] = 300 |
|
lte_atoll_cellule_df["Nombre d'utilisateurs (UL)"] = 300 |
|
lte_atoll_cellule_df["Configuration de trame"] = None |
|
lte_atoll_cellule_df["Taux d'utilisation AAS (DL) (%)"] = 0 |
|
lte_atoll_cellule_df["Distributions angulaires des interférences (AAS)"] = 10 |
|
lte_atoll_cellule_df["Domaine Physical Cell ID"] = None |
|
lte_atoll_cellule_df["Etat du PSS ID"] = "Alloué" |
|
lte_atoll_cellule_df["ID"] = None |
|
lte_atoll_cellule_df["Nombre d'utilisateurs MU-MIMO co-schédulés (DL)"] = 2 |
|
lte_atoll_cellule_df["Schéma des sous-trames vides (ABS)"] = None |
|
lte_atoll_cellule_df["Type de cellule"] = 1 |
|
lte_atoll_cellule_df["Nombre de RSI PRACH requis"] = 10 |
|
lte_atoll_cellule_df["Etat du RSI PRACH"] = "Alloué" |
|
lte_atoll_cellule_df["Ordre"] = 1 |
|
lte_atoll_cellule_df["Seuil de sélection de cellule (dB)"] = 0 |
|
lte_atoll_cellule_df["Offset individuel de cellule (dB)"] = 0 |
|
lte_atoll_cellule_df["Marge de handover (dB)"] = 3 |
|
lte_atoll_cellule_df["Domaine de PRACH RSI"] = None |
|
|
|
lte_atoll_cellule_df["Puissance max (dBm)"] = ( |
|
lte_atoll_cellule_df["Puissance max (dBm)"] / 10 |
|
) |
|
|
|
|
|
|
|
wcdma_atoll_df: pd.DataFrame = process_wcdma_data(file_path) |
|
wcdma_site_df = wcdma_atoll_df[SITE_COLUMNS] |
|
wcdma_atoll_emetteur_df = wcdma_atoll_df[WCDMA_ATOLL_EMETTEUR_COLUMNS] |
|
|
|
|
|
|
|
wcdma_atoll_emetteur_df = wcdma_atoll_emetteur_df.rename( |
|
columns={ |
|
"code": "Site", |
|
"name": "Emetteur", |
|
"Hauteur": "Hauteur (m)", |
|
"Azimut": "Azimut (°)", |
|
"porteuse": "Bande de fréquences", |
|
} |
|
) |
|
|
|
wcdma_atoll_emetteur_df["Activé"] = "True" |
|
wcdma_atoll_emetteur_df["DX (m)"] = 0 |
|
wcdma_atoll_emetteur_df["DY (m)"] = 0 |
|
wcdma_atoll_emetteur_df["Antenne"] = "OML 65deg 17dBi 6Tilt 1800MHz" |
|
wcdma_atoll_emetteur_df["Downtilt mécanique (°)"] = 0 |
|
wcdma_atoll_emetteur_df["Rayon de calcul principal (m)"] = 15000 |
|
wcdma_atoll_emetteur_df["Modèle de propagation principal"] = ( |
|
"Standard Propagation Model" |
|
) |
|
wcdma_atoll_emetteur_df["Pertes émission (dB)"] = 0 |
|
wcdma_atoll_emetteur_df["Pertes réception (dB)"] = 0 |
|
wcdma_atoll_emetteur_df["Facteur de bruit (dB)"] = 5 |
|
wcdma_atoll_emetteur_df["Groupe d'hexagones"] = None |
|
wcdma_atoll_emetteur_df["Rayon hexagone (m)"] = 5000 |
|
wcdma_atoll_emetteur_df["Commentaires"] = None |
|
wcdma_atoll_emetteur_df["Equipement TMA"] = None |
|
wcdma_atoll_emetteur_df["Equipement câbles"] = None |
|
wcdma_atoll_emetteur_df["Equipement émetteur"] = None |
|
wcdma_atoll_emetteur_df["Longueur de câbles en émission (m)"] = 0 |
|
wcdma_atoll_emetteur_df["Longueur de câbles en réception (m)"] = 0 |
|
wcdma_atoll_emetteur_df["Gain de diversité d'antenne de réception (dB)"] = 0 |
|
wcdma_atoll_emetteur_df["Pertes diverses en émission (dB)"] = 0 |
|
wcdma_atoll_emetteur_df["Pertes diverses en réception (dB)"] = 0 |
|
wcdma_atoll_emetteur_df["Rayon de calcul étendu (m)"] = 20000 |
|
wcdma_atoll_emetteur_df["Modèle de propagation étendu"] = "(aucun)" |
|
wcdma_atoll_emetteur_df["Résolution principale (m)"] = 10000 |
|
wcdma_atoll_emetteur_df["Résolution étendue (m)"] = None |
|
wcdma_atoll_emetteur_df["Downtilt électrique additionnel (°)"] = 2 |
|
wcdma_atoll_emetteur_df["Type de diversité d'émission"] = "Pas de diversité" |
|
wcdma_atoll_emetteur_df["Partage des puissances entre porteuses"] = False |
|
wcdma_atoll_emetteur_df["Puissance max partagée (dBm)"] = 43 |
|
wcdma_atoll_emetteur_df["Nombre de ports d'antennes en émission"] = 1 |
|
wcdma_atoll_emetteur_df["Nombre de ports d'antennes en réception"] = 1 |
|
wcdma_atoll_emetteur_df["Antenne partagée"] = False |
|
wcdma_atoll_emetteur_df["Mode multi-cellules"] = "Aucun" |
|
wcdma_atoll_emetteur_df["Portée max (m)"] = None |
|
wcdma_atoll_emetteur_df["Tilt latéral mécanique (°)"] = 0 |
|
wcdma_atoll_emetteur_df["Diagramme partagé"] = None |
|
|
|
|
|
wcdma_atoll_emetteur_df.loc[ |
|
wcdma_atoll_emetteur_df["Hauteur (m)"] < 1, "Hauteur (m)" |
|
] = 1 |
|
|
|
wcdma_atoll_cellule_df = wcdma_atoll_df[WCDMA_ATOLL_CELLULE_COLUMNS] |
|
|
|
|
|
wcdma_atoll_cellule_df = wcdma_atoll_cellule_df.rename( |
|
columns={ |
|
"name": "Nom", |
|
"UARFCN": "Porteuse", |
|
"PriScrCode": "Scrambling code primaire", |
|
"PtxPrimaryCPICH": "Puissance pilote (dBm)", |
|
} |
|
) |
|
|
|
wcdma_atoll_cellule_df["Emetteur"] = wcdma_atoll_cellule_df["Nom"] |
|
|
|
|
|
wcdma_atoll_cellule_df["Domaine scrambling code"] = None |
|
wcdma_atoll_cellule_df["Seuil AS (dB)"] = 5 |
|
wcdma_atoll_cellule_df["Puissance max (dBm)"] = 46 |
|
wcdma_atoll_cellule_df["Puissance SCH (dBm)"] = 21 |
|
wcdma_atoll_cellule_df["Puissance autres CCH (dBm)"] = 30 |
|
wcdma_atoll_cellule_df["Puissance totale (dBm)"] = None |
|
wcdma_atoll_cellule_df["Facteur de charge UL (%)"] = None |
|
wcdma_atoll_cellule_df["Commentaires"] = None |
|
wcdma_atoll_cellule_df["Distance de réutilisation du SC (m)"] = 20000 |
|
wcdma_atoll_cellule_df["Nombre max de voisines intra-porteuse"] = 32 |
|
wcdma_atoll_cellule_df["Nombre max de voisines inter-technologies"] = 32 |
|
wcdma_atoll_cellule_df["Facteur de charge UL max (%)"] = 80 |
|
wcdma_atoll_cellule_df["Charge DL max (% Pmax)"] = 80 |
|
wcdma_atoll_cellule_df["Puissance HSDPA disponible (dBm)"] = None |
|
wcdma_atoll_cellule_df["Dégagement de puissance (dB)"] = None |
|
wcdma_atoll_cellule_df["Nombre max de codes HS-PDSCH"] = None |
|
wcdma_atoll_cellule_df["Nombre max de voisines inter-porteuses"] = 32 |
|
wcdma_atoll_cellule_df["Nombre min de codes HS-PDSCH"] = None |
|
wcdma_atoll_cellule_df["Allocation dynamique de puissance HSDPA"] = True |
|
wcdma_atoll_cellule_df["Allocation dynamique de puissance HS-SCCH"] = True |
|
wcdma_atoll_cellule_df["Puissance HS-SCCH (dBm)"] = None |
|
wcdma_atoll_cellule_df["Nombre de canaux HS-SCCH"] = None |
|
wcdma_atoll_cellule_df["Nombre max d'utilisateurs HSDPA"] = None |
|
wcdma_atoll_cellule_df["Débit UL max par utilisateur (kbps)"] = 4000 |
|
wcdma_atoll_cellule_df["Débit DL max par utilisateur (kbps)"] = 45000 |
|
wcdma_atoll_cellule_df["Active"] = True |
|
wcdma_atoll_cellule_df["Puissance DL HSUPA (dBm)"] = None |
|
wcdma_atoll_cellule_df["Nombre max d'utilisateurs HSUPA"] = None |
|
wcdma_atoll_cellule_df["Facteur de charge UL dû au HSUPA (%)"] = None |
|
wcdma_atoll_cellule_df["Nombre d'utilisateurs HSUPA"] = None |
|
wcdma_atoll_cellule_df["Facteur de réutilisation (UL)"] = None |
|
wcdma_atoll_cellule_df["Nombre d'utilisateurs HSDPA"] = None |
|
wcdma_atoll_cellule_df["Support HSPA"] = "Aucun" |
|
wcdma_atoll_cellule_df["Noise rise UL inter-technologies (dB)"] = None |
|
wcdma_atoll_cellule_df["Noise rise DL inter-technologies (dB)"] = None |
|
wcdma_atoll_cellule_df["ID"] = None |
|
wcdma_atoll_cellule_df["Support MIMO"] = "Aucun" |
|
wcdma_atoll_cellule_df["SC verrouillé"] = True |
|
wcdma_atoll_cellule_df["Algorithme du scheduler HSDPA"] = None |
|
wcdma_atoll_cellule_df["RSCP min (dBm)"] = None |
|
wcdma_atoll_cellule_df["Ordre"] = 1 |
|
wcdma_atoll_cellule_df["Couche"] = "Macro Layer" |
|
wcdma_atoll_cellule_df["Offset individuel de cellule (dB)"] = 0 |
|
wcdma_atoll_cellule_df["Marge de handover (dB)"] = 0 |
|
|
|
wcdma_atoll_cellule_df["Puissance pilote (dBm)"] = ( |
|
wcdma_atoll_cellule_df["Puissance pilote (dBm)"] / 10 |
|
) |
|
|
|
|
|
|
|
gsm_atoll_df: pd.DataFrame = process_gsm_data(file_path) |
|
gsm_site_df = gsm_atoll_df[SITE_COLUMNS] |
|
gsm_atoll_df = gsm_atoll_df[GSM_ATOLL_COLUMNS] |
|
|
|
|
|
|
|
gsm_atoll_df = gsm_atoll_df.rename( |
|
columns={ |
|
"code": "Site", |
|
"name": "Emetteur", |
|
"Hauteur": "Hauteur (m)", |
|
"Azimut": "Azimut (°)", |
|
"band_frequence": "Bande de fréquences", |
|
"TRX_TCH": "Canaux", |
|
"number_trx_per_cell": "TRXs requis", |
|
"BCCH": "BCCH", |
|
"configuration_schema": "Configurations de schémas de codage GPRS/EDGE", |
|
"type_cellule": "Type de cellule", |
|
"BSIC": "BSIC", |
|
} |
|
) |
|
|
|
|
|
gsm_atoll_df["Activé"] = "True" |
|
gsm_atoll_df["DX (m)"] = 0 |
|
gsm_atoll_df["DY (m)"] = 0 |
|
gsm_atoll_df["Antenne"] = "OML 65deg 17dBi 6Tilt 1800MHz" |
|
gsm_atoll_df["Downtilt mécanique (°)"] = 0 |
|
gsm_atoll_df["PIRE (dBm)"] = None |
|
gsm_atoll_df["Puissance (dBm)"] = 43 |
|
gsm_atoll_df["Pertes émission (dB)"] = 3 |
|
gsm_atoll_df["Rayon de calcul principal (m)"] = 15000 |
|
gsm_atoll_df["Modèle de propagation principal"] = "Standard Propagation Model" |
|
gsm_atoll_df["Groupe d'hexagones"] = None |
|
gsm_atoll_df["Rayon hexagone (m)"] = 5000 |
|
gsm_atoll_df["Commentaires"] = None |
|
gsm_atoll_df["Equipement TMA"] = None |
|
gsm_atoll_df["Equipement câbles"] = None |
|
gsm_atoll_df["Equipement émetteur"] = None |
|
gsm_atoll_df["Longueur de câbles en émission (m)"] = 0 |
|
gsm_atoll_df["Longueur de câbles en réception (m)"] = 0 |
|
gsm_atoll_df["Pertes diverses en émission (dB)"] = 0 |
|
gsm_atoll_df["Pertes diverses en réception (dB)"] = 0 |
|
gsm_atoll_df["Rayon de calcul étendu (m)"] = 20000 |
|
gsm_atoll_df["Modèle de propagation étendu"] = "(aucun)" |
|
gsm_atoll_df["Résolution principale (m)"] = 10000 |
|
gsm_atoll_df["Résolution étendue (m)"] = None |
|
gsm_atoll_df["GPRS/EDGE"] = True |
|
gsm_atoll_df["Mode de saut"] = None |
|
gsm_atoll_df["Poids AFP"] = 1 |
|
gsm_atoll_df["Domaine de BSIC"] = "ALL BSICs" |
|
gsm_atoll_df["Verrouiller canaux et MAIO"] = False |
|
gsm_atoll_df["Verrouiller HSN"] = False |
|
gsm_atoll_df["Verrouiller BSIC"] = False |
|
gsm_atoll_df["Couche HCS"] = "Macro Layer" |
|
gsm_atoll_df["Nombre max de schémas de codage (non utilisé)"] = None |
|
gsm_atoll_df["Nombre max de voisines intra-technologie"] = None |
|
gsm_atoll_df["Nombre max de voisines inter-technologies"] = None |
|
gsm_atoll_df["Nombre max de TRXs"] = 16 |
|
gsm_atoll_df["Downtilt électrique additionnel (°)"] = None |
|
gsm_atoll_df["Portée min (m)"] = None |
|
gsm_atoll_df["Portée max (m)"] = None |
|
gsm_atoll_df["Configuration de codecs"] = "Adaptive Multi-Rate" |
|
gsm_atoll_df["FN Offset"] = None |
|
gsm_atoll_df["Offset de resélection (dB)"] = 0 |
|
gsm_atoll_df["Seuil de réception couche HCS"] = None |
|
gsm_atoll_df["PBCCH supporté"] = False |
|
gsm_atoll_df["Seuil de réception PBCCH"] = -102 |
|
gsm_atoll_df["Offset PBCCH de resélection de cellule (dB)"] = 0 |
|
gsm_atoll_df["ID"] = None |
|
gsm_atoll_df["Type d'émetteur"] = "Intra-réseau (serveur et brouilleur)" |
|
gsm_atoll_df["Antenne partagée"] = None |
|
gsm_atoll_df["Pertes réception (dB)"] = 0 |
|
gsm_atoll_df["Facteur de bruit (dB)"] = 5 |
|
gsm_atoll_df["Distance de réutilisation (m)"] = 20000 |
|
gsm_atoll_df["Tilt latéral mécanique (°)"] = 0 |
|
gsm_atoll_df["Diagramme partagé"] = None |
|
|
|
|
|
gsm_atoll_df["Nombre de TRX"] = gsm_atoll_df["TRXs requis"] |
|
|
|
gsm_atoll_df.loc[gsm_atoll_df["Hauteur (m)"] < 1, "Hauteur (m)"] = 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
site_df: pd.DataFrame = pd.concat( |
|
[gsm_site_df, wcdma_site_df, lte_site_df], ignore_index=True |
|
) |
|
site_df.drop_duplicates(subset=["code"], keep="first", inplace=True) |
|
|
|
site_df.sort_values(by=["code"], inplace=True) |
|
|
|
site_df.rename( |
|
columns={ |
|
"code": "Nom", |
|
"Longitude": "Longitude", |
|
"Latitude": "Latitude", |
|
"Hauteur": "Hauteur du support (m)", |
|
}, |
|
inplace=True, |
|
) |
|
|
|
site_df["Altitude (m)"] = None |
|
site_df["Commentaires"] = None |
|
site_df["Type de support"] = "Pylône haubané" |
|
site_df["Nb max CEs UL"] = 1200 |
|
site_df["Nb max CEs DL"] = 1200 |
|
site_df["Débit Iub Backhaul max UL (kbps)"] = 300000 |
|
site_df["Débit Iub Backhaul max DL (kbps)"] = 500000 |
|
site_df["Equipement"] = None |
|
site_df["Débit max interface S1 (DL) (kbps)"] = 500000 |
|
site_df["Débit max interface S1 (UL) (kbps)"] = 300000 |
|
|
|
UtilsVars.final_atoll_database = convert_dfs( |
|
[ |
|
gsm_atoll_df, |
|
wcdma_atoll_emetteur_df, |
|
wcdma_atoll_cellule_df, |
|
lte_atoll_emetteur_df, |
|
lte_atoll_cellule_df, |
|
site_df, |
|
], |
|
[ |
|
"GSM", |
|
"WCDMA_EMETTEUR", |
|
"WCDMA_CELLULE", |
|
"LTE_EMETTEUR", |
|
"LTE_CELLULE", |
|
"SITE", |
|
], |
|
) |
|
|