Istoria vine din istorie (II)

În vremurile de început ale aplicării metodelor de elemente finite in ramura aeronautică, datele de intrare în programe erau greu de verificat în lipsa unor metode vizuale.
Trecuseră 40 miliarde de ani de la big-bang și în Romania nu erau disponibile terminale grafice, in afara unor Tektronix aflate în sala de terminale de la Centrul de Calcul Increst Militari, tot timpul ocupate și în criză de hârtie termosensibilă pentru printare, importurile fiind limitate.
E drept ca încercam diferite metode numerice de depistare a elementelor distorsionate, dar depanarea ulterioară era greoaie.
Țin minte că pentru reprezentarea axonometrică a modelului fuzelajului principal a avionului IAR-93, am muncit o groază desenând pe un calc rezistent nodurile și elementele, prilej cu care am putut corecta destul de multe erori în perforarea cartelelor.

Terminal Tektronix și o cartelă perforată

Mai târziu, prin anii ’80, aflați pe platforma Băneasa dotată cu calculator CDC-Cyber, existând câteva porți libere, pe bază de prietenie, 2 reputați hardiști, Ionescu și Brehui, ne-au tras câteva cabluri de la Romaero, 2 terminale text și am mai făcut noi rost de un DAF românesc grafic.
Cine mai era ca noi cu terminal pe birou? Și să vezi acum dezvoltări de programe!
Între timp, D-na Virginica, directoarea centrului de calcul din Militari, a mirosit că ceva nu e in regulă, că nu ni se mai imputa ore de calculator, ce i-o fi șoptit Zoei sau ministrului adjunct Teodorescu-Țintea, este că, calculatorul Romaero trece subit sub administrarea ei spre stupoarea personalului din ce in ce mai terorizat. Dar să o lăsăm pe D-na Virginica să dea cu șmotrul în sala calculatorului nemulțumită de femeia de serviciu, plecată la vreun colonel să-i ajute nevasta în casă.

Primul program de vizualizare a modelelor de elemente finite pentru solverul Alfa, a fost realizat de regretatul Traian Bădoiu, doctor in matematică. Pe vremea aceea nu se mai ocupa de calcul de rezistență, dar avea deja puse la punct o serie de subrutine grafice necesare generării de suprafețe netede pentru comanda numerica a mașinilor de frezat modele, pentru turnarea palelor de turbină și compresor pentru turbomotoarele RR Viper.

Merită să amintesc aici geniul acestui om care mânca matematica pe pâine în aplicații unice la vremea aceia. Mulți credeau că aceste piese se puteau executa cu programele de firmă venite cu calculatorul, dar nici pe departe nu se putea așa ceva.
De la Rolls Royce au venit niște desene la scara 5:1, forma profilelor nu era tabelată și trebuiau făcute măsurători cu un digitizor, un fel de precursor al mouse-ului înzestrat cu un vizor optic. La bordul de fugă profilul avea raza de curbură de câteva zecimi de mm, coarda de 2-3 cm.  Măsurând în secțiunile date Traian, genera o suprafață nominală pe care o optimiza prin calcul variațional deviind in câmpul de toleranțe pentru o netezime maximă.

Povestea spune că la Ministerul construcțiilor de mașini au fost convocați specialiști de la diferite institute de proiectare/cercetare din țară. D-na Virginica l-a luat cu ea pe Traian.
Li s-a arătat o pală originală pe care au pasat-o din mână in mână să o examineze. Apoi au fost întrebați cât timp le-ar lua sa scoată matrița respectivă.  Unul a zis că o săptămână, altul 3 zile (foială în sală), altul în 2 (murmure), altul în o zi (ooooooo), in 8 ore (aaaaaa),….altul într-o jumătate de oră (vacarn).
Traian a cerut o lună (fâs). Virginica foarte dezamăgită pentru că avea mare încredere. Stai dragă, că “e caz de pușcărie”, era metafora lui preferată când era vorbă de ceva dificil, știa ce avea de făcut dar aceste matrițe minuscule puteau pune probleme de scule mai mari decât machetele de suflerie trisonică pe care le făcuse pentru IAR-95.

După o lună Traian a predat matrița la Fabrica de Forjate-Turnate, directorului Nica, unde au turnat modelul cu o ceară specială. La răcire ceara s-a contractat vizibil, culmea e că așa și trebuia. Desenele de la Rolls Royce la scara 5:1 prevedeau acest lucru.
Așadar, trecuse o lună și nimeni nu mai executase o matriță. Traian a luat pe următoarea, pe urmă pe rând, pe toate, rotoare, statoare, de compresor, de turbină

Paletă rotor compresor Rolls Royce Viper

Au trecut anii, am trecut pe PC-uri. Calculatorul mare nu mai funcționa, era întrecut în performanțe de micile cutiuțe. Foarte ușor am implementat ALFA pentru PC, ba am mai dezvoltat și alte variante pentru lucru cu superelemente și condensare de mase în noduri. Modelele se foloseau pentru generare de matrici de flexibilitate și mase necesare programelor de aeroelasticitate ale regretatului Mirel Sacagiu.
A revenit aceeași necesitate de vizualizare a modelelor pentru verificare. Încă nu se lucra în Windows. Fortranul avea o librărie grafică pentru MS-DOS. Programul realizat se numea FIGC și a fost folosit la vizualizarea modelelor la avionul IAR-705 și a altor avionașe fără continuitate în anul următor. Avea și facilitatea de a transmite caractere speciale unei imprimante matriciale pentru a transpune figura pe hârtie.

Model asamblare aripă fuzelaj avion IAR 705 – reprezentare FIGC

(IAR 705 – proiect pentru un avion de pasageri turboprop scurt curier)

Anecdotic este cum am reușit să rezolv problema liniilor nevăzute, algoritmele găsite literatura de specialitate mi-au părut prea stufoase ca să am răbdarea să le înțeleg.
Pe vremea aceea activam în SIAC, Societatea pentru Inginerie Asistată de Calculator, condusă de venerabilul profesor Maty Blumenfeld, recent plecat dintre noi. Odată la o sesiune de comunicări au venit 2 băieți de la Chișinău și au făcut o demonstrație cu un program de la ruși. Întâmplarea a făcut că nu aveam acolo decât un 386 fără coprocesor matematic și programul le mergea in slow motion, de te plictiseai privind. Pentru mine a fost însă instructiv. Adică, desena la început niște triunghiuri sau patrulatere după care desena peste ele, sfârșind prin a desena elementele din planul cel mai apropiat de privitor, cea ce era in spatele lor nu se mai vedea.
Pasămite elementele erau in prealabil ordonate într-o lista, primele fiind cele mai depărtate.
Primul lucru care l-am făcut acasă era sa găsesc o subrutină de sortare rapidă, aveam un geamantan de cărți groase din cele din ediții depășite, cumpărate cu un dolar, doi de la New York unde ca tot omu’, mi-am vizitat ruda din America.

Treburile mergeau prost în institutul de aviație. Eram plătiți prost din contracte oferite de la ministerul cercetării, sub salariu mediu pe economie. Mult spațiu era închiriat, din banii încasați puteau fi plătit doar personalul administrativ, cel puțin așa ni se spunea. Se mai făceau renovări pentru a  închiria și mai mult, inginerii puteau primi mai mult dacă participau la zugrăvit, spălat geamuri și șmotru. Cei care imediat după revoluție lucraseră așa ceva prin Italia împărtășeau din experiență.

Mă gândeam să trec in IT unde se oferea mai mult, dar se cerea multă experiență în programare, eu o aveam practic dar nu și pe hârtie. Cui să-i spui că un program de elemente finite e mult mai dificil de conceput și elaborat decât o bază de date în FoxPro, dar cine auzise de elemente finite?
Ca să-mi fac mâna în C++, Visual Basic am realizat ALGRA, un program în Windows de vizualizare grafică pentru modelele ALFA. Cărțile din America mi-au fost de mare folos.

Fuzelaj posterior IAR 701

(varianta militară a ROMBAC 1-11- cu trapă mare de parașutiști)

Rezoluția imaginilor era mult îmbunătățită, se putea folosi imprimantele laser, se puteau salva in format compatibil Windows ca să fie inserate în documente Word. Am folosit acest program până in 2002 când am pleca la Airbus UK. Ultima dată a fost folosit in programul Skylander, derulat în București la GECI, actualmente Alten

Avion Skylander 

Un detaliu de idealizare panouri de înveliș obținut cu Zoom din selecție cu mouse, in programul ALGRA, salvat in format .wmf (windows metafile).

În momentul aderării la proiectul de reconstrucție al IAR-80, mi-am pus problema revitalizării programelor, astfel ca ele să fie compatibile cu Windows pe 64 biți. ALGRA nu mai putea fi regenerat deoarece apela la librării din Visual Basic 3.0.

Soluția aleasă a fost scrierea unui nou program in C#, actualmente Windows lucrează cu funcțiile .NET Framework, pentru cei mai puțin familiarizați aceste denumiri apar frecvent in actualizările periodice din Windows Update.
A rezultat programul AlfaGraphics.

Programarea interfețelor grafice interactive in C# (meniuri, taburi, ferestre, butoane, liste derulante, cursoare etc.) este avantajata de folosirea limbajului xaml (un subset .xml). Pentru desenarea graficii am folosit o librărie open source dezvoltată pe mapamond de voluntari ca și noi.
Un mare avantaj in gestionarea memoriei l-au avut clasele din .NET care au permis formarea de liste de obiecte (noduri, elemente). Ce sa mai apelezi la metoda Bublle Sort din geamantanul cu cărți groase care a lăsat vameșii mască la Otopeni, daca obiectul lista are de-a gata o metodă de sortare după o proprietate a obiectelor conținute, de exemplu de a fi la o distanță de privitor.

O alta proprietate a elementului de panou este culoarea. Ba mai mult, l-am putut vopsi diferit pe față și dos, astfel încât să apară diferit în funcție de unde e privit. Nu am văzut așa ceva în Patran sau Abaqus, e drept ca nu am mai umblat cu ele de ceva timp. Dar oare de ce e așa important?
Este, pentru că elementul poate fi orientat cu fața în sus sau în jos, dată de orientarea in sistemul global a axei z a sistemului local, orientare dată de ordinea nodurilor în definirea elementului. Dacă un grup de elemente apare cu aceeași culoare înseamnă că normalele la suprafață sunt consistente cu o anumită orientare, dacă aplici o presiune, o aplici ori pe față ori pe dos la toate și eviți ca forțele rezultate în noduri să se mănânce între ele, cazul când ai aplica presiunea la un element pe față iar la elementul adiacent pe dos. De asemenea orientarea normalelor la suprafață influențează semnul fluxurilor de forfecare, consistența semnului fiind necesara atunci când e nevoie de calculat diferența intre 2 panouri adiacente, pentru calculul nituirii cu alt element de structură. In Patran sau Abaqus trebuie să faci o vizualizare a vectorilor normalelor la suprafața și poți scăpa din vedere erorile din cauza încâlcirii de linii. Așa, o culoare diferită la un element, sare imediat în ochi.

Ba mai mult, culorii i se poate da transparența dorită pentru a vedea întrucâtva și ce este pe dedesubt.

Vedere globala a părții cocă din structura fuzelajului IAR-80FA

Pentru calculul de rezistență sunt utile reprezentările separate pe grupe de elemente, de exemplu cadre, nervuri, învelișuri, longeroane, etc., pentru a putea identifica starea de stress din outputul ALFA și a efectua calculele specifice necesare. Aceste reprezentări fac obiectul unor rapoarte de tip Gridbook. Întrucât FEM-ul (Finite Elements Model) global al avionului este format din mai multe superelemente, vom avea rapoarte Gridbook pentru Aripa stângă (se folosește și pentru aripa dreaptă, numerotarea nodurilor fiind identică), fuselaj grindă + batiu motor, fuselaj cocă, ampenaj orizontal stânga, deriva, direcție, flaps, eleron.

Și cum istoria se face în continuare , va urma ..!

Ing. Ion Adam