[QGHG-it-dev-list] Zadatak 3 - seed fja za D-simpleks

Nenad Korolija nenadko at gmail.com
Wed Oct 12 10:14:40 CEST 2022


Zdravo Dušane i hvala na detaljnoj analizi. :)

Naravno, posao deluje zanimljivo i korisno, a svakako i reference.
Ako možeš da ih povežeš bolje sa našima, lepo bi bilo da pomogneš svojim
kolegama preporukama, a indirektno i dobrim studentima koje ni ne znaš.

Ono što bih dodao kao mišljenje iz svog skromnog iskustva je:
1) Što se tiče okruženja, i očekivao bih da bude tako dobro u CERN-u. Meni
je uglavnom bilo, barem naizgled. Što više vremena provedeš, shvatićeš da
su i tamo ljudi - zeza se, ali i podmeće, nadmeće, koči, itd. Meni je u
Google bilo super, ali nekima je to posao i ne sviđa im se sve. U UK mi je
bilo super, ali su međuljudski odnosi gori nego što bi se u Srbiji
očekivalo. U Nemačkoj su bili striktni, ali je meni bilo super - nije me
kačila njihova politika zapošljavanja, gde očiglednu prednost imaju Nemci.
U Italiji je divljina, pa oni na vrhu imaju odrešenije ruke na račun onih
na dnu.
2) Ako pretpostavimo da su ti glavni motiv za odlazak posao i novac, za
očekivati je da i ovde ne budeš gladan, a da ti posao u svakom slučaju
postane posao - nešto što radiš za pare, pri čemu deo posla voliš.
3.1) Ako neko vreme radiš kod njih, pa se vratiš, referenca će ti biti
super i za očekivati je da ćeš imati bolju polaznu tačku za traženje dobrog
posla, pogotovo ako te bude interesovalo zaposlenje u inostranstvu.
3.2) Sa druge strane, ako ostaneš u Srbiji, nakon istog tog vremena ćeš već
imati dobar posao. :)
4.1) Ako odeš sa devojkom, može vam biti super što ćete uživati u
prednostima, bez preterano osvrtanje na mane. Naime, kako tvoje kolege
počnu da završavaju fakultet, sve manje će imati vremena za druženja. Mi
smo tako sa fudbala prešli na odbojku, pošto su i devojke mogle da igraju.
Ubrzo nakon toga, ljudi postaju toliko okupirani poslovima i novim
privatnim životima, da se ne viđaju toliko sa društvom sa fakulteta. Nakon
što dobiju porodice, ne viđaju nikoga, osim rodbine i eventualno one kojima
su deca otprilike istog godišta i žive blizu (nezavisno da li su društvo sa
fakluteta ili ne). Drugim rečima, drugarstvo je precenjeno! :D Šalim se,
naravno! Ali vreme koje se provodi sa društvom se bitno (eksponencijalno)
smanjuje od trenutka diplomiranja.
4.2) Ako odeš bez devojke i kreneš da radiš po ceo dan da bi se dokazao, a
devojke-nacionalistkinje traže Švajcarce koji već imaju pare i po mogućstvu
što manje diploma i posla,... Vidiš i sam gde priča ide. :D Posle nekog
vremena se čovek navikne/ustali, šta god radio i ono što ti sad deluje kao
vreme u koje bi nešto promenio u slučaju da ne valja (npr. godinu) se lako
rastegne na 5 ili 10 puta duži period.
5) Ako gubiš vreme bavljenjem problematikom ići/ne, ostale stvari za to
vreme prolaze pored tebe. Drugim rečima, ako ti se ide, što pre, pa makar
se za godinu vratio sa iskustvom, parama, i odloženim životom u Srbiji za
godinu, umesto da 10 godina vagaš da li da odeš. :)
6) Raditi online postaje sve popularnije. Iz iskustva kolega, posle
deceniju-dve u inostranstvu većina i dalje čeka priliku da se otvori
predstavništvo u Srbiji (nekad po 10 godina, od čega 70-80% na 10k km od
žene i ćerke) - veliki sistemi su intertni i ne treba odlagati život
čekajući promene.

Srećno!
Nenad

On Sat, Oct 8, 2022 at 7:44 PM Dusan Cvijetic <dusancvijetic2000 at gmail.com>
wrote:

> Pozdrav,
>
> Izvinjavam se zbog kasnog odgovaranja. Želeo sam tokom prethodne nedelje
> da namestim dual boot konfiguraciju, da bih mogao da koristim i Linux, pa
> sam odlagao da započnem sa radom i odgovaram na mejlove dok to ne uradim.
> Međutim, čini se da ću morati da ostanem samo na Windows-u još neko vreme.
>
> CERN je bio sjajno iskustvo. Radio sam na razvoju VecGeom biblioteke
> <https://gitlab.cern.ch/VecGeom/VecGeom> za simulaciju geometrije
> detektora čestica. Na kraju borvka sam napisao i izveštaj
> <https://cds.cern.ch/record/2825399?ln=en>, u kome možete naći i više
> detalja o mom delu posla.
>
> U suštini, simuliraju sudare čestica sa raznim strukturama. Taj posao
> zahteva vrlo mnogo resursa i vremena, pa pokušavaju da paralelizuju sva
> izračunavanja koliko god mogu. Trenutno se trude da to postignu tako što će
> prilagoditi svoj kod radu na GPU. Da bi simulirali razne oblike, ranije su
> koristili zapreminske modele (simulirali bi ceo cilindar, kocku, nepravilno
> telo kao jedinstvenu strukturu), međutim oni izazivaju dosta divergencije u
> paralelnom radu. Zato sad prevode ove zapreminske modele u površinske, gde
> će svako telo razložiti na više manjih površina. To bi trebalo da
> pojednostavi jednačine koje se rešavaju i smanji divergenciju pri
> pokretanju koda na GPU.
>
> Što se samog CERN-a tiče, mesto je prelepo. Kompleks je ogroman, i
> potrebno je više od pola sata da se prešeta "naselje" u kome sam ja bio.
> Postoji više takvih "naselja" koja su raspoređena širom akceleratorskog
> prstena, i za njihov obilazak bili bi potrebni sati. Priroda oko
> laboratorija je predivna, negovana i čista. U daljini se, preko planina,
> može videti i Mont Blanc kada je vreme lepo. Zanimljivo mi je bilo što
> plaćaju pastirima da dovedu ovce do laboratorija i pasu travu po CERN-u, da
> ne bi morali mašinski da kose travu.
>
> Ljudi tamo su me oduševili. Moj mentor
> <https://www.linkedin.com/in/agheata/> je bio izuzetno posvećen i ažuran,
> i mnogo sam naučio od njega. Iznenadilo me je koliku mi je autonomiju u
> radu dao, nije mi postavio bilo kakva ograničenja - samo generalni cilj ka
> kome treba da idem. U početku mi je ovo bilo čudno, ali sam se vremenom
> navikao i dosta oslobodio u programiranju.
>
> Imao sam odlično društvo, kako iz komšijskih zemalja, tako i iz dalekog
> inostranstva. Zaista je bilo uživanje provoditi vreme sa tim ljudima, svim
> visoko motivisanim, vrednim i sposobnim, a opet uvek spremnim za dobar
> provod. I stariji su, takođe, bili jako interesantni. Desilo se da mi,
> tokom prezentacije mog projekta, jedan čovek postavi pitanje za typesafe
> alternativu za switch strukturu u C++. Uvek sam mislio da dobro i detaljno
> poznajem C++, no njegovo pitanje uopšte nisam ni razumeo, pa je moj mentor
> odgovorio umesto mene. Ispostavilo se da je čovek koji je postavio pitanje
> u timu za postavljanje standarda C++ i da me je pitao za nešto što su u
> jezik ubacili u poslednjoj verziji. Desilo mi se prvo u Petnici, pa na
> fakultetu, a najskorije u CERN-u, da me oduševi količina znanja koju ljudi
> oko mene imaju.
>
> Sve su šanse da ću ponovo otići u CERN sledećeg leta, pošto mi je menor
> ponudio da se opet vratim. Trenutno mi se ne sviđa ideja da tamo živim i
> radim za stalno. Švajcarska je, iako prelepa, prilično sterilna, i mnogo su
> mi draži ljudi koje znam u Srbiji. Ipak, biće mi drago ako nastavim tamo da
> radim po par meseci godišnje.
>
> Hteo sam da se ponovo zahvalim što ste me primili na ovaj projekat. Jako
> mi je zabavno da radim naučno programiranje. Mentor mi je rekao da me je
> pozvao jer je video da sam radio na QGHG, tako da bez rada na Institutu ne
> bih imao priliku da vidim ni CERN.
>
> Pozdravi,
> Dušan
>
>
> On 27-Sep-22 8:26 PM, Marko Vojinovic wrote:
>
>
> Pozdrav Dusane i Nenade (i ostali),
>
> Evo tekuceg statusa koji zadaci su uradjeni a koji nisu:
>
> 1-5:   done
> 6:     in progress
> 7:     done
> 8:     to do
> 9:     in progress
> 10:    done (for the moment)
> 11-13: done
> 14:    to do
> 15-23: to do
> 24:    to do
> 25-32: to do
>
> Formulacije svih zadataka imate na arhivi mailing liste [1,2,3].
>
> Neki zadaci su reseni, Jaroslav privodi kraju kostur za gui (zadaci 6 i
> 9), a neresene zadatke mozemo da grupisemo u dva "paketa" zadataka, i tri
> samostalna zadatka:
>
>  * Paket 15-23 je posvecen Pachner-ovim potezima (u D=2,3,4). Zadatke za
> Pachner-a za proizvoljno D nisam jos precizno formulisao --- imamo samo one
> fotke sa table kada sam Nenadu objasnjavao konceptualno kako radi Pachner u
> proizvoljnoj dimenziji (treba da ih posaljem na listu), ali to sve je
> skica, treba bolje i preciznije da se formulisu ti zadaci.
>
>  * Paket 25-32 je posvecen crtanju kompleksa na ekran, i implementaciju
> svega toga uskoro treba da uradimo jer je Jaroslav maltene pri kraju sa
> konstrukcijom kostura za gui i uskoro ce doci vreme da se taj kostur
> "popuni mesom", tj. rutinama iz biblioteke i da pocne zaista da "radi"
> (Jaroslav je namestio maltene svu funkcionalnost elemenata gui-ja, ali se
> jos uvek ne radi nista sa bibliotekom tj. realnim podacima).
>
>   * Tri "samostalna" zadatka su --- 8 (ucitavanje kompleksa iz fajla), 14
> (kacenje novog simpleksa na granicu postojeceg kompleksa), i 24 (dodavanje
> topology parametra u SimpComp klasu). Ova tri zadatka vec duze vreme cekaju
> na resavanje, a nisu deo neke vece grupacije zadataka.
>
> Moj predlog za Dusana je da proba da uradi prvo ova tri samostalna
> zadatka, 8, 14 i 24, za zagrevanje. Posto je vec svojevremeno lepo uradio
> zadatak 7 (snimanje kompleksa u fajl), zadatak 8 je prirodno vezan za istu
> tu temu, a 14 i 24 su nezavisni od onih paketa, i mogu da posluze kao dobro
> zagrevanje za pakete.
>
> Zatim je ideja da se i Dusan i Nenad koncentrisu na resavanje dva paketa,
> jer to u principu treba da imamo gotovo kad budemo krenuli da povezemo
> biblioteku sa gui-jem. Neki okvirni plan je da gui "progleda" do kraja
> godine, a gornja dva paketa zadataka nisu mali posao, pa imajte to na umu.
>
> To je otprilike presek dokle smo stigli i sta nas jos ceka za ovu godinu.
>
> Naravno, ne zelim da vam ja pravim raspored ko ce sta da radi, svako neka
> uzme sta mu je zanimljivo, ali ovo gore je neka prirodna podela zadataka po
> smislu, pa imajte to u vidu.
>
> Btw, Dusane, sta se desilo sa tvojim kolegom Nikolom, jel' on jos tu, i
> jel' zainteresovan da ucestvuje u ovome, ili ne? I drugo, kako je bilo u
> CERN-u, kakvi su ti utisci? Mozes da sastavis jedan e-mail za nas ostale,
> da nam prepricas sta si tamo radio, kako sta i na kom nivou rade programeri
> tamo, i generalno sta si pokupio od znanja i iskustva odande... Mislim da
> bi nas sve zanimalo da cujemo o tome, pa 'ajde sastavi neki neformalni
> report o svom boravku u CERN-u, i posalji ga na listu... ;-)
>
> :-)
> Marko
>
> [1]
> http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/2022-February/date.html
> [2] http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/2022-March/date.html
> [3] http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/2022-April/date.html
>
>
> Dr. Marko Vojinovic
> Group for Gravitation, Particles and Fields
> Institute of Physics
> University of Belgrade
> ======================
> home page: www.markovojinovic.com
> e-mail:    vmarko at ipb.ac.rs
>
>
>
> On Mon, 26 Sep 2022, Nenad Korolija wrote:
>
> Zdravo Dušane,
>
> Odlično!
> Ovaj zadatak je urađen.
> Možeš da baciš pogled na 4 funkcije:
> collect_vertices sakuplja vertices u set<KVertex*>.
> // Finds a k-simplex with given vertices, if exists:
> KSimplex* SimpComp::find_vertices(set<KSimplex*> &s){
> build_simplex_one_level_up
> seed_single_simplex_or_sphere (generalna).
>
> Za još dosta zadataka imam ideju kako ih rešiti (prodiskutovane sa
> Markom), pa ako se odlučiš za neki, možemo da budemo na vezi
> (najverovatnije će nam se ideje preklapati) kako bi svi
> ispratili šta kako radimo, jer nam to može značiti za dalje.
>
> Marko, možda bi bilo previše, mada najkorisnije, da radi generalni
> Pachner-ov potez? Ali ako pređe par zadataka, verovatno će biti uhodan u
> strukture i funkcije koje već postoje na
> raspolaganju.
>
> Pozdrav,
> Nenad
>
> On Mon, Sep 26, 2022 at 6:12 PM Dusan Cvijetic
> <dusancvijetic2000 at gmail.com> <dusancvijetic2000 at gmail.com> wrote:
>       Pozdrav svima,
>
>       Završene su mi obaveze, pa bih preuzeo sad ovaj zadatak da radim.
>       Potvrdite mi samo da ovo nije već odrađeno.
>
>       Pozdravi,
>       Dušan
>
>       On 11-Feb-22 10:44 PM, Marko Vojinovic wrote:
>       >
>       > Implementirati seed f-ju za jedan D-simpleks (za proizvoljnu
> dimenziju
>       > D):
>       >
>       >   SimpComp* seed_single_simplex( int D );
>       >
>       >   Input: dimenzija D (pozitivan ceo broj).
>       >   Output: pointer na instancirani simplicijalni kompleks koji se
>       > sastoji od jednog D-simpleksa.
>       >
>       > Ova f-ja predstavlja opsti slucaj f-ja seed_single_edge(),
>       > seed_single_triangle() i seed_single_tetrahedron(), koje rade isti
>       > posao za D=1,2,3. Postupak i ovde ide u tri glavna koraka:
>       >
>       > (1) Instancirati nov simplicijalni kompleks zadate dimenzije D i
>       > metodom create_ksimplex() kreirati simplekse svih nivoa od k=0 do
> k=D.
>       > Broj simpleksa datog nivoa k je jednak "D+1 nad k+1" (broj
> kombinacija
>       > k+1-vog reda od D+1 elemenata), tj. (D+1)! / ( (k+1)! (D-k)! ).
>       > Specijalno, ukupan broj verteksa (k=0) je D+1.
>       >
>       > (2) Popuniti podklasu neighbors svakog simpleksa pointerima na
> njegove
>       > susede, koristeci add_neighbor(). Za slucaj proizvoljnog
> D-simpleksa
>       > ne mozemo da se oslonimo na sliku, vec se mora implementirati
>       > algoritam za prepoznavanje suseda (vidi nize).
>       >
>       > (3) Simpleksima nivoa k = D-1 dodeliti boju boundary, i za svaki
>       > simpleks zadati vrednost boje na true.
>       >
>       > Algoritam za odredjivanje da li je dati n-simpleks podsused datog
>       > k-simpleksa se realizuje na sledeci nacin:
>       >
>       > (2.1) Prvo se za svaki k-simpleks (k>0) zadaju njegovi susedi
> nivoa
>       > k=0 (verteksi). Posto u celom kompleksu imamo tacno D+1 verteksa,
>       > svaki k-simpleks ima tacno "D+1 nad k+1" razlicitih verteksa, po
>       > definiciji D-simpleksa. Drugim recima, treba birati redom svaku
>       > kombinaciju k+1-ve klase od D+1 verteksa, i dodeljivati ih kao
> susede
>       > nivoa k=0 redom svakom k-simpleksu (jedna kombinacija u jedan
>       > k-simpleks, tako da ne postoje dva k-simpleksa sa istim skupom
> 0-suseda).
>       >
>       > (2.2) Kada je korak (2.1) zavrsen, mozemo da odgovorimo na pitanje
> da
>       > li je dati n-simpleks podsused datog k-simpleksa (n<k), tako sto
>       > proverimo da li su svi 0-susedi n-simpleksa istovremeno i 0-susedi
>       > k-simpleksa. Ako jesu, onda je n-simpleks podsused k-simpleksa, a
> ako
>       > postoji makar jedan verteks koji pripada n-simpleksu a ne pripada
>       > k-simpleksu, onda nije podsused.
>       >
>       > Koristeci kriterijum (2.2), za dati k-simpleks prodjemo kroz sve
>       > n-simplekse 0<n<k, i one koji ispune kriterijum stavimo u
> pod-susede
>       > k-simpleksa nivoa n, i takodje u n-simpleks stavimo k-simpleks kao
>       > nad-sused nivoa k. Ovo ponoviti za sve k-simplekse 1<k<=D.
>       >
>       >
>       > :-)
>       > Marko
>       >
>       >
>       > Dr. Marko Vojinovic
>       > Group for Gravitation, Particles and Fields
>       > Institute of Physics
>       > University of Belgrade
>       > ======================
>       > home page: www.markovojinovic.com
>       > e-mail:    vmarko at ipb.ac.rs
>       >
>       >
>       --
>       QGHG-it-dev-list mailing list
>       QGHG-it-dev-list at ipb.ac.rs
>       http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
>
>
>
>
> --
> QGHG-it-dev-list mailing list
> QGHG-it-dev-list at ipb.ac.rs
> http://mail.ipb.ac.rs/mailman/listinfo/qghg-it-dev-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ipb.ac.rs/pipermail/qghg-it-dev-list/attachments/20221012/072c87db/attachment-0001.htm>


More information about the QGHG-it-dev-list mailing list