Untitled

 avatar
unknown
plain_text
a year ago
1.3 kB
3
Indexable
#include <iostream>
#include <cmath>

using namespace std;

int main() {
    // Тооллын мэдээлэл
    double h_BS = 10; // gNB өндөр
    double h_UT = 1.5; // UE өндөр
    double fc = (3300 + 3800) / 2.0 * 1e6; // Чухал частот
    double c = 3e8; // Гаралтын хурд
    double d_Bp = 2 * M_PI * h_BS * h_UT * (fc) / c; // Path loss distance
    double d_2D = 50; // UE-gNB 2D зай
    double d_3D = sqrt(pow(d_2D, 2) + pow(h_BS - h_UT, 2)); // UE-gNB 3D зай
    double PL1; // Path loss
    // Замын алдагдал нь
    if (10 <= d_2D && d_2D <= d_Bp) {
        PL1 = (20 * log10(40 * M_PI * d_3D * fc / 3)) +
              fmin((0.03 * pow(h_BS, 1.72)), 10) * log10(d_3D) -
              fmin((0.044 * pow(h_BS, 1.72)), 14.77) +
              (0.002 * log10(h_BS) * d_3D);
    } else {
        // Хэрэв замын алдагдал болон d_2D тохиолдолд PL1-г тооцоолох
        // байхгүй бол, PL1-г ямарч зарим утгаар хийх
        PL1 = 0; // Тодорхойлогдоогүй утга
    }
    // Результатыг хэвлэх
    cout << "Замын алдагдал нь " << PL1 << " дБ байна." << endl;
    return 0;
}
Editor is loading...
Leave a Comment