Tommy Lee Tommy Lee
4822
BLOG

Błędy w programie you-know-who

Tommy Lee Tommy Lee Polityka Obserwuj notkę 35

 

motto:

this model of vertical accleration fits Miller data (Zal.2) as well as MAK report data, with noisy wave-like behavior omitted

                                     you-know-who

 

Jak niektórym zapewne wiadomo, postanowiłem nałożyć rys.8, zaprezentowany w opracowaniu you-know-who , na mapkę satelitarną przez zaczepienie rys.8 w pancernej brzozie. Efekt, w całej okazałości i w dużej rozdzielczości, można obejrzeć na mojej galerii na picasie (LINK). Opisałem tam również moje zastrzeżenia do trajektorii wyliczonej przez you-know-who, co zaraportowałem także na jego blogu. Niestety, you-know-who nie przejął się tym zbytnio i dalej pewnie twierdzi, że jego model jest zgodny z zarejestrowanymi ścięciami drzew. OK, można i tak, jednak to nie koniec problemów.

By było wiadomo o co chodzi w dalszej części - poglądowy rysunek:

 

 

Łatwo zauważyć, że koniec lewego statecznika (jego tor to przerywana linia niebieska), który miał wykonać ścięcie topoli przy ulicy Kutuzowa, przechodzi w tym obszarze w odległości około 8 metrów od toru środka masy (czarna linia) a kąt obrotu samolotu wynosi 120-130 stopni. Obliczmy to więc:

 

 

obrót [stopnie]

10

20

30

40

50

60

70

80

90

100

110

120

130

140

150

odl.statecznik (a) [m]

7,89

8,9

9,63

10,07

10,2

10,02

9,54

8,77

7,73

6,46

4,99

3,37

1,65

-0,12

-1,89

odl.skrzydło (b) [m]

12,95

12,22

11,13

9,7

7,97

6

3,84

1,57

-0,74

-3,04

-5,24

-7,28

-9,1

-10,65

-11,87

Z powyższej tabelki wynika, że przy obrocie o 120-130 stopni, odległość końca lewego statecznika od środka masy powinna wynosić 3,4 - 1,7m, skąd więc 8 metrów u you-know-who?

By znaleźć odpowiedź na to pytanie trzeba zagłębić się w program ykw101-26x.pro. Winny jest ten fragment (linie 291- 309):

291: ; 18 m is the distance between the wing and tail

292: delt=18./(vv+wind_x) ; time delay between wings and tail passing an object

293: ; the tail is banked more at a given ground object

294: pt = pp +ww/180*!pi*delt +dw/180*!pi*delt^2/2. ; tail bank angle

295: deltw= -16./(75+wind_x) ; time delay between front wheel and C.M. < 0

296: pw = pp +ww/180*!pi*deltw +dw/180*!pi*deltw^2/2. ; front wheel bank

297: y_L_tail = 6.7*cos(pt)+7.6*sin(pt)

298: z_L_tail = -6.7*sin(pt)+7.6*cos(pt) -18*sin(pitch)

299: z_fw = -5*cos(pw) +15*sin(shift(pitch,-1000*deltw))

300: ztrack_fw = track_z_cm + z_fw

301: ztrack_fw = ztrack_fw(-1000*deltw:*)

302:

303: track_cm = yy +(72.-13.5) ; 72m is the rwy-birch, and ~13 the c.m.-birch dist.

304: ;the MAK centerline seems to disagree with the direction to NDB by ~10m laterally

305:

306:

307: xtrack_L_tail = xx -18. ; 18m is the impact-point-on-wing to tail distance

308: ytrack_L_tail = track_cm + y_L_tail

309: ztrack_L_tail = track_z_cm + z_L_tail

 

Tylko kilkanaście linii kodu, a dwa błędy! Zaznaczyłem je na czerwono.

1. "293: the tail is banked more at a given ground object"- niewątpliwie prawda, z tym, że jednocześnie współrzędna x brana do określenia trajektorii końca lewego skrzydła xtrack_L_tail jest przesunięta o -18 m (linia 307), czyli jednak należy wziąć kąt pp. Prawidłowo:

297: y_L_tail = 6.7*cos(pp)+7.6*sin(pp)

2.Samo obliczenie odległości końca lewego skrzydła od środka masy, zrzutowanej na oś OY, jest poprawne (z uwzględnieniem uwagi z p.1) , wzór:

297: y_L_tail = 6.7*cos(pt)+7.6*sin(pt)

jest równoważny stosowanemu powyżej przeze mnie. Jednak obliczenie przesunięcia jest błędne. Linie:

307: xtrack_L_tail = xx -18. ; 18m is the impact-point-on-wing to tail distance

308: ytrack_L_tail = track_cm + y_L_tail

oznaczają, że oś samolotu jest cały czas równoległa do osi OX. Tymczasem, w pierwszym przybliżeniu, można przyjąć, iż jest ona styczna do trajektorii środka masy. Co ciekawe, you-know-who stosuję tą zasadę dla obliczenia toru końca kikuta lewego skrzydła (na przykład linia 284), tu jednak zapomniał. Wobec powyższego:

307: xtrack_L_tail = xx -18.*cos(kk/180.*!pi)-y_L_tail*sin(kk/180.*!pi) ; 18m is the impact-point-on-wing to tail distance
308: ytrack_L_tail = track_cm - 18.*sin(kk/180.*!pi) +y_L_tail*cos(kk/180.*!pi)

Zachęcony tak łatwym "sukcesem" postanowiłem sprawdzić cały program you-know-who, chociaż IDL nie jest dla mnie językiem pierwszego wyboru ;) I nie zawiodłem się, bo szybko znalazłem kolejny błąd w sposobie w jaki został uwzględniony ciąg silników:

155: az = (cos(pitch(i))*cos(p)*n-1.)*9.81 +az_thr(i) ; [m/s^2]

gdzie az to przyspieszenie pionowe, a az_thr- składowa pionowa przyspieszenia od siły ciągu silników:

114: az_thr = sin(pitch)* thr/78. ; [m/s^2] vert. acc., assuming 78 ton mass

Czy wzór z linii 155 jest poprawny? Otóż nie, bo gdy samolot leci poziomo, to przyspieszenie pochodzące od siły ciągu silników jest już uwzględnione we wskazaniu akcelerometru (symbol n). We wzorze trzeba ująć tylko tą część tego przyspieszenia, której akcelerometr nie zmierzy, a dzieje się to wtedy, gdy występuje przechylenie p. Poprawny zapis to:

155:az = (cos(pitch(i))*cos(p)*n-1.)*9.81 +az_thr(i)*(1-cos(p)) ; [m/s^2]

Po wprowadzeniu do programu opisanych powyżej poprawek, wyniki zmieniają się na tyle znacznie, że teza o ich zgodności ze smoleńską rzeczywistością jest nie do utrzymania. Skupię się na dwóch uzyskanych wykresach.

Rys.2. Teren i profile lotu PLF 101

Wykres oryginalny

Wykres po poprawieniu błędów

 

Widać, że lewy statecznik i lewe skrzydło uderzają w ziemię ponad 20 metrów wcześniej. Model jest bardzo wrażliwy na zmiany przebiegu przyspieszenia, co trzeba wziąć pod uwagę w kontekście komentarza z programu you-know-who, które uczyniłem mottem mojej notki.

Rys.8. Mapa lotu PLF101, odłamków i obiektów napotkanych w terenie

 

Wykres oryginalny

 

Wykres po poprawieniu błędów

 

O ile zgodność ze ścięciami drzew przy autokomisie jest lepsza, to całkiem ginie związek ze śladami na ziemi - bruzdy, które miały być ryte przez lewy statecznik i lewe skrzydło.

 

Wnioski ogólne

Peemka w swojej notce (http://pmk.salon24.pl/431071,analiza-symulacji-dynamicznej-prof-pawla-artymowicza ) wykazał, że model przyjęty przez you-know-who jest wątpliwy. Okazuje się również, że i w samym zapisie tego modelu są błędy, które zmieniają zasadniczo końcowe wyniki. Z drugiej strony, jestem przekonany, że gdyby you-know-who zauważył te błędy na etapie tworzenia swojego programu, to z łatwością mógłby skorygować inne parametry by osiągnąć lepszą zgodność ze smoleńską rzeczywistością. Nie jest bowiem prawdą, że program zawiera mało wprowadzanych ręcznie danych. Jego podstawą jest kilka funkcji aproksymujących przebieg parametrów lotu w zależności od czasu, nie wynikających bezpośrednio z przyjętego modelu. Jak wykazano to dla przyspieszania, model jest bardzo wrażliwy na postać tych funkcji.

Tommy Lee
O mnie Tommy Lee

Jestem Polakiem

Nowości od blogera

Komentarze

Inne tematy w dziale Polityka