scieee AI-readable full text Open interactive document viewer

TO'LQIN TARQALISHI ANIQLIGINI YECHIMLARDA BAHOLASH

Mo'minov Islombek Ikromjon o'g'li

Full text

YOSH OLIMLAR ILMIY-AMALIY KONFERENSIYASI in-academy.uz/index.php/yo 15 TO‘LQIN TARQALISHI ANIQLIGINI YECHIMLARDA BAHOLASH Mo‘minov Islombek Ikromjon o‘g‘li Farg‘ona davlat texnika universiteti magistranti E-mail: [email protected] https://doi.org/10.5281/zenodo.17986111 Annotatsiya: Ushbu maqolada to‘lqin tarqalishi jarayonlarini modellashtirishdagi sonli yechimlarning aniqligi masalasi paskal dasturi yordamida ko‘rildi. Yechim aniqligi analitik (aniq) yechim bilan taqqoslash, shuningdek, fazoviy qadam va vaqt qadami ta'sirini o‘rganish orqali baholangan. Kalit so‘zlar: paskal dasturi, aniqlikni baholash, aniqlikni baholash, to‘lqin tarqalishi Kirish. Tabiiy va texnikaviy jarayonlarning ko‘pchiligi, jumladan, akustika, seysmologiya, optika va elektromagnitizm sohalaridagi hodisalar to‘lqin tarqalishi tenglamalari orqali tavsiflanadi. Ushbu tenglamalarning murakkabligi sababli, ularning analitik (aniq) yechimlarini topish ko‘pincha imkonsiz bo‘ladi. Shuning uchun, amaliy tadqiqotlarda va muhandislik hisobkitoblarida sonli usullar (masalan, Chekli Ayirmalar Usuli, Chekli Elementlar Usuli) keng qo‘llanilmoqda. Paskal dasturidagi to‘lqin tarqalishi aniqligini yechimlari: import numpy as np # Parametrlar L = 1 # uzunlik N = 500 # qadamlar soni c = 0.05 # tezlik dt = 0.1 # vaqt qadam U00 = 1.0 # boshlang'ich qiymat dx = L / N CFL = dt * c / dx # Massivlar (N+1 element) U = np.zeros(N + 1) U0 = np.zeros(N + 1) U1 = np.zeros(N + 1) U2 = np.zeros(N + 1) U3 = np.zeros(N + 1) # Boshlang'ich qiymatlar U[0] = U0[0] = U1[0] = U2[0] = U3[0] = U00 # Asosiy sikl for t in range(101): # 0 dan 100 gacha # 1-qadam: oddiy sxema for i in range(1, N): U[i] = U0[i] - dt * c * (U0[i] - U0[i - 1]) / dx # 2-qadam: yana bitta iteratsiya for i in range(1, N): U2[i] = U1[i] - dt * c * (U1[i] - U1[i - 1]) / dx # 3-qadam: predictor-corrector usuli YOSH OLIMLAR ILMIY-AMALIY KONFERENSIYASI in-academy.uz/index.php/yo 16 for i in range(1, N): U3[i] = 0.5 * (U1[i] + U2[i] - dt * c * (U2[i + 1] - U2[i]) / dx) # Chegaraviy shartlar U[0] = U00 U0[0] = U00 U[N] = U[N - 1] U0[N] = U0[N - 1] U1[N] = U1[N - 1] U2[N] = U2[N - 1] U3[N] = U3[N - 1] # Yangilash for i in range(1, N): U0[i] = U[i] U1[i] = U3[i] # Natijalarni chiqarish print(f"\nCFL = {CFL:.4f}") print(f"Iteratsiya = {t}") print(f"Vaqt = {dt * t:.2f}") print("x U U3") for i in range(N + 1): x = dx * i print(f"{x:.4f} {U[i]:.4f} {U3[i]:.4f}") 1-rasm. To‘lqin tarqalishini sonli yechimlarda aniqliligi Xulosa Ushbu tezisda to‘lqin tarqalishi tenglamasi uchun sonli yechimlar aniqligini baholash masalasini ko‘rdim va Paskal dasturida to‘lqin tarqalishini sonli yechimlarda aniqliligi kodlar yordamida yozishni o’rgandim. YOSH OLIMLAR ILMIY-AMALIY KONFERENSIYASI in-academy.uz/index.php/yo 17 Adabiyotlar, References, Литературы: 1. Umarov. “Gidravlika. Toshkent. 2002-yil. 2. Aljure Osorio, D. E., “Turbulent Flow Modeling and Solution.