{"id":127,"date":"2010-09-24T02:13:00","date_gmt":"2010-09-24T02:13:00","guid":{"rendered":"http:\/\/frontal-digital.de\/?p=127"},"modified":"2015-07-09T12:14:01","modified_gmt":"2015-07-09T12:14:01","slug":"misc","status":"publish","type":"post","link":"https:\/\/frontal-digital.de\/?p=127","title":{"rendered":"Misc"},"content":{"rendered":"<p>Hi,<\/p>\n<p>also in den letzten Tagen ist nicht sonderlich viel passiert. Ich komme mit meiner Aufgabe gut voran. Die ben\u00f6tigte Software l\u00e4uft nun so weit und ich bin seit ca. 3 Tagen am programmieren.<br \/>\nDa es nicht viel zu erz\u00e4hlen gibt, erz\u00e4hl ich einfach etwas \u00fcber die Programmieraufgabe:<br \/>\nDas Ziel ist es, m\u00f6glichst effizient mit Polytopen umzugehen. Polytope sind im allgemeinen geometrische Objekte, deren Eckpunkte mit Linien verbunden sind. Ein Quadrat ist z. B. ein Polytop im zweidimensionalen. Das folgende Bild zeigt ein Polytop in der dritten Dimension.<\/p>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><a href=\"http:\/\/www.mathworks.com\/matlabcentral\/fx_files\/11678\/1\/fig1.jpg\" imageanchor=\"1\" style=\"margin-left: 1em; margin-right: 1em;\"><img loading=\"lazy\" decoding=\"async\" border=\"0\" height=\"298\" src=\"http:\/\/www.mathworks.com\/matlabcentral\/fx_files\/11678\/1\/fig1.jpg\" width=\"400\" \/><\/a><\/div>\n<p>Jedoch sind Polytope nicht auf 3 Dimensionen begrenzt. Mein Betreuer verwendet Polytope um zu beschreiben, welche Zust\u00e4nde ein System erreichen kann. Die Dimension des Systems wird bestimmt durch die Anzahl der Zust\u00e4nde (z. B. Druck, Temperatur, Geschwindigkeit, etc&#8230;). Aus diesem Grund ben\u00f6tigt mein Betreuer ein Tool, welches es ihm erlaubt mit Polytopen der n-ten Dimension zu arbeiten; also beliebig viele Dimensionen.<br \/>\nIn Matlab existiert eine Toolbox, welche mit Polytopen arbeiten kann. Diese hat aber zwei Nachteile:<br \/>\n1. Es ist begrenzt auf 3 Dimensionen<br \/>\n2. Es arbeitet nicht mit unendlicher Genauigkeit<\/p>\n<p>Hier setzt nun meine Aufgabe an. F\u00fcr die Programmiersprache C++ gibt es eine Bibliothek, mit welcher man sehr einfach mit Polytopen umgehen kann. Diese hei\u00dft &#8222;Parma Polyhedra Library&#8220;, kurz ppl. Weiterhin gibt es eine Bibliothek, deren Datentypgr\u00f6\u00dfen theoretisch unbegrenzt sind (GNU Multiple Precision Arithmetic Library, kurz gmp). Lediglich die Speicherkapazit\u00e4t begrenzt die gr\u00f6\u00dfe der Datentypen. Dies erlaubt es dem Benutzer mit einer sehr hohen Genauigkeit Berechnungen durchzuf\u00fchren.<br \/>\nDie erste Woche hab ich nun damit verbracht die beiden Bibliotheken \u00fcberhaupt in Eclipse (Programmierumgebung) verwenden zu k\u00f6nnen. Klingt einfacher als es in Wirklichkeit ist.<br \/>\nDa mein Betreuer aber weiterhin mit Matlab arbeiten m\u00f6chte, kommt nun die zweite gr\u00f6\u00dfere Aufgabe.<br \/>\nDas geschrieben C++ Programm, welches die n\u00f6tigen Aktionen durchf\u00fchren kann, muss so angepasst und kompiliert werden, dass eine .mexglx Datei entsteht. Diese Dateien k\u00f6nnen von Matlab ausgef\u00fchrt werden. Matlab hat viele Vorteile, aber auch einige Nachteile. Ein Nachteil ist zum Beispiel, dass Schleifen durchl\u00e4ufe eine viel l\u00e4ngere Rechenzeit ben\u00f6tigen als in C++. Aus diesem Grund k\u00f6nnen solche Prozesse als C++-Code programmiert werden, und als .mexfile unter Matlab ausgef\u00fchrt werden.<br \/>\nWenn das alles funktioniert, kann mein Betreuer am Ende des Praktikums einfach die mex-Files in Matlab aufrufen und somit alle Vorteile der ppl und gmp Bibliotheken nutzen.<\/p>\n<p>So, nun war das aber eine Menge verwirrendes Zeug. Ich hoffe, ich hab es alles richtig wiedergegeben. Nun noch bisschen was zu dem was au\u00dferhalb der Uni passiert. Heute morgen hab ich mal ein St\u00fcck meines Weges zur Uni mit dem Handy dokumentiert. Man sieht, dass die Stra\u00dfen in einem sehr schlechten Zustand sind. Manchmal denk ich, dass die Stra\u00dfen in Albanien oder so in einem besseren Zustand sind als hier.<\/p>\n<div class=\"separator\" style=\"clear: both; text-align: center;\"><img xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" \/>&nbsp;<\/div>\n<p>In dem Video sieht man den Beginn meines Weges. Also in dieser Gegen wohn und man sieht einfach, dass die H\u00e4user sehr runtergekommen sind und teilweise einfach leer stehen. Also dieses Viertel ist wirklich sehr h\u00e4sslich und nach 21.00 w\u00fcrd ich hier auch nicht mehr allein durch die Stra\u00dfen laufen. Also entweder vorher zu Haus sein oder Taxi nehmen. <\/p>\n<p>\nDiese Woche hab ich auch noch meinen Washington Trip und NewYork Trip organisiert. Nach Washington werde ich nun vom 1.10 &#8211; 3.10 mitm Bus fahren und nach New York fliege ich am 23.10 hin und komme am 30.10 wieder in Pittsburgh an. Am 31.10 geht dann mein Flieger weider zur\u00fcck in die Heimat.<\/p>\n<p>\nZum Schluss hab ich hier heute noch ein kleines Video bei Youtube f\u00fcr meine russischen Besucher gefunden. Ihr m\u00fcsste genau hinh\u00f6ren \ud83d\ude00<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi, also in den letzten Tagen ist nicht sonderlich viel passiert. Ich komme mit meiner Aufgabe gut voran. Die ben\u00f6tigte Software l\u00e4uft nun so weit und ich bin seit ca. 3 Tagen am programmieren. Da es nicht viel zu erz\u00e4hlen gibt, erz\u00e4hl ich einfach etwas \u00fcber die Programmieraufgabe: Das Ziel ist es, m\u00f6glichst effizient mit [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":162,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"_links":{"self":[{"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/posts\/127"}],"collection":[{"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=127"}],"version-history":[{"count":1,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/posts\/127\/revisions"}],"predecessor-version":[{"id":161,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/posts\/127\/revisions\/161"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=\/wp\/v2\/media\/162"}],"wp:attachment":[{"href":"https:\/\/frontal-digital.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/frontal-digital.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}