Majburiy tebranishlar - Fizik jarayonlarni kompyuterda modellashtirish

|
Fizik jarayonlarni kompyuterda modellashtirish
|
bet | 114/135 | Sana | 22.05.2024 | Hajmi | 15,08 Mb. | | #250347 |
Bog'liq Fizik jarayonlarni kompyuterda modellashtirish 5.Majburiy tebranishlar. Erkin tebranishlardan amalda kamdan–kam foydalaniladi. Istalgancha uzoq vaqt davom eta oladigan so`nmas tebranishlar esa katta amaliy ahamiyatga ega. So`nmas tebranishlarni hosil qilish uchun tebranuvchi sistema energiyasining kamayishini chetdan to`ldirib turish lozim. Buning eng qulay usuli sistemaga davriy o`zgarib turuvchi kuch bilan tasir etib turishdir.
Davriy o`zgarib turuvchi tashqi kuch tasirida bo`ladigan tebranishlarni majburiy tebranishlar deb ataladi, bu kuchni majburiy etuvchi kuch, tebranuvchi sistemani esa majburiy sistema deyiladi.
Odatda, majbur etuvchi kuch sifatida vaqt buyicha sinus yoki kosinus qonuni bilan o`zgaradigan kuchdan foydalaniladi. Bunday kuchning ifodasi
ko`rinishda bo`ladi, bu erda –kuchning amplituda (maksimal) qiymati, –kuch tebranishlarining doyraviy chastotasi.
Pedagogik teznologiyalardan foydalanish.Sxema 33:
Rasm 54. Sinkveyn texnologiyasi.
Nazariy savollar:
1. Tebranishlar haqida umumiy qanday ma`lumotlarmi keltira olasiz?
2.Garmonik tebranishlar deganda nimani tushunasiz?
3.Matematik mayatnik nima va unga oid formulalarni keltiring?
4.Garmonik tebranishlar energiyasi qanday hisoblamadi, formulasi qanday?
5.Majburiy tebranishlar nima?
14-amaliy mashg’ulot: Gorizontal burchak ostida otilgan jism xarakatini modellashtirishni o’rganish.
Amaliy mashg’ulotning texnik ta’minoti: video proyektor, kompyuter Pentium 4, Visal Studio Express muhiti.
Amaliy mashg’ulotning maqsadi: Gorizontal burchak ostida otilgan jism xarakatini modellashtirishni o’rganish.
Amaliy mashg’ulotning nazariy bayoni: nazariy qismini konspekt qiling.
Amaliy mashg’ulotning nazariy bayonini konspekt qiling.
Amaliy mashg’ulotning topshiriqlari:
Bu yerda mehanikaning klassik masalalaridan biri yechiladi, y’ani qandaydir boshlang’ich tezlik bilan gorizontga nisbatan burchak ostida tashlangan jismning uchish tezligi va uchish vaqti bo’yicha harakatini modellashtirish va koordinatasini aniqlash kerak bo’lsin. .
Quyidagi masalani hal etuvchi dastur kodini tering va natijasini oling:
1 #include
2 #include using namespace std;
3 int main(){ //Doimiy – erkin tushish tezlanishi va pi soni:
4 const double g=9.8;
5 const double pi=3.1415;
6 //masalani boshlang’ich va hisobli berilganlari //(tezlik, burchak va uchish vaqti):
7 double v,alpha,T; //Vaqt momenti va koordinatalari:
8 double t,x,y; //Parametrlarni kiritish:
9 cout << "Enter speed v = ";
10 cin >> v;
11 cout << "Enter angel alpha = ";
12 cin >> alpha;
13 alpha=alpha*pi/180;
14 T=2*v*sin(alpha)/g; cout << "Enter time t < " << T << ": ";
15 cin >> t; x=v*t*cos(alpha); y=v*t*sin(alpha)-g*t*t/2;
16 cout << "x = " << x << "\n"; cout << "y = " << y << "\n";
17 return 0;
18 }
Ikkinchi dasturni ham bajarib, natijasini oling va har bir qatorda nima bajarilishini tushuntiring:
1 #include
2 #define _USE_MATH_DEFINES
3 #include
4 using namespace std;
5 int main()
6 {
7 setlocale(LC_ALL, "Uzbekistan");
8 const double G = 6.67430 * pow(10, -11);
9 const double R = 6371000;
10 const double M = 5.972 * pow(10, 24);
11 double V;
12 double alpha;
13 cout « "Jism tezligini kiriting: ";
14 cin » V;
15 cout « "Otish burchagini kiriting: ";
16 cin » alpha;
17 V = V * sin(alpha * M_PI / 180);
18 double* array = nullptr; // g qiymatga nisbatan massiv
19 double t = 1; // qadam
20 double g; //navbatdagi g
21 double h = 0; // navbatdagi balandlik
22 int i = 0; // номер шага
23 bool flag = true;
24 while (h >= 0) { // jism yerga tushmaguncha
25 i++;
26 g = G * M / pow((R + h), 2); // g ning yangi qiymati
27 h += V * t - g * pow(t, 2) / 2; // gning yangi qiymati bo’yicha balandlikni topamiz
28 V = V - g * t; // gning yangi qiymati bo’yicha tezlikni hisoblaymiz
29array = (double*)realloc(array, sizeof(double) * i);
30 array[i - 1] = g;
31 }
32 cout « "g ning Qiymatlari : " « endl;
33 cout « fixed;
34 cout.precision(9); // 9 ishoralar
35 for (int j = 0; j < i; j++) {
36 cout « array[j] « endl;
37 }
38 return 0;
39}
Balandligi h ga teng bo‘lgan stol ustida to‘g‘ri chiziq bo‘ylab harakatlanayotgan sharchaning harakatini kuzataylik. Dastlab sharcha o‘z inersiyasi bilan stolning ustki qismida to‘g‘ri chiziqli harakat qiladi.Qolgan harakatini esa fizik mohiyatini bu jarayonni amalga oshirib aniqlab olishimiz mumkin.Yuqoridagi dasturlarni nima bajarishini tushunib, bu fizik jarayonning mohiyatini ko’z oldingizga osonliqcha keltira olasiz.
|
| |