Thomas Wölfers Baustatik-Blog

Thomas Wölfers Baustatik Blog

Hilfe - der Durchlaufträger kann keinen Kragarm


Wir scheinen ganz gut darin zu sein ein paar Dinge zu verstecken.... - aber wirklich ganz ohne Absicht. Folgendes passiert:

Man gibt einen Durchlaufträger ein. Das erste Feld, das zweite Feld, das dritte Feld - fertig. Dabei hat man schon alle Querschnitte und Materialien eingegeben. Und auch die Lagerungsbedingungen. Jetzt ist man fertig, und will noch rechts einen Kragarm dranhängen. Also - ganz einfach - noch ein Feld erzeugt..... und - verdammt !

Das Ding hat nämlich eine Lagerung am Ende. Etwas ungünstig für einen Kragarm. :-)

Der Grund dafür ist der: Wir versuchen es ihnen einfach zu machen, unsere Baustatik Programme zu verwenden. Wirklich. Letztlich gibt es nur zwei Arten in denen ein Durchlaufträger aufhören kann: Entweder er ist am Ende gelagert, oder er hat am Ende einen Kragarm. Für den Fall das er am Ende gelagert ist, ist es aber sehr wahrscheinlich das dort die gleiche Lagerungsbedingung vorliegt, wie am Anfang. Und genau den Fall verwendet das Durchlaufträger-Programm als Vorgabe. Ergebnis: In etwa 50 % aller Fälle hat man am Ende ein magisch erscheinendes, richtiges Lager - in den anderen 50% ist man am fluchen weil man das Auflager nicht will.

Ich hoffe Sie verstehen das Problem: Egal was wir tun - in der Hälfte der Fälle ist es das falsche. Sorry dafür. ;-)

Man wird das Auflager aber natürlich los. Wie das steht in der FAQ.... - was es wirklich tut; aber ich schreibe es hier natürlich auch nochmals hin: Sie müssen einfach nur über den Menüpunkt zum Einstellen der Optionen auf dem Reiter 'Allgemeines' den richtigen Schalter ausmachen - dann ist auch das Lager am Ende weg. (Natürlich fluchen Sie dann beim nächsten mal wenn Sie eben keinen Kragarm wollen - Sorry auch dafür :-) )


Windows, Timeserver und Work&Cash


Aus den Referrer-Logs meines Blogs kann ich ersehen das viele Personen dieses Blog besuchen weil sie offenbar ein Problem mit einem Timeserver unter Windows haben.

Der Timeserver um den es hier aber geht ist kein NTP Timeserver, sondern der Zeitserver den wir bei unseren Statikprogrammen im Work&Cash Verfahren zur Abrechnung verwenden.

Trotzdem ist das Thema NTP Zeitserver eigentlich ganz interessant: Hier darum ein kurzer Exkurs zum Thema NTP und synchronisierte Uhrzeiten bei Windows (XP und 2003).

Wenn man einen Rechner betreibt, dann ist es schön wenn dieser Rechner immer die richtige Uhrzeit kennt. Das wird dann besonders wichtig wenn man mehrere Rechner in einem LAN unterhält.

Genau dafür gibt es das Network Time Protocol (NTP). Dabei gibt es einen Zeitserver der (hoffentlich) die richtige Uhrzeit kennt und Clients die ihre Uhrzeit mit diesem Server synchronisieren.

Wenn die eigenen Rechner in einer Domäne untergebracht sind, dann synchronisieren diese Rechner ihre Zeit vermutlich mit dem Domänen-Server. Dazu hat der Windows 2003 Server beispielsweise eine Timeserver-Software. Der Domänen-Server seinerseits synchronisiert seine Zeit dann mit einem Rechner von dem bekannt ist, das er die richtige Uhrzeit kennt.

Hat man nur einen einzelnen Rechner oder keinen Domänen-Server kann man seine Uhrzeit aber natürlich auch synchronisieren. Damit die Sache bei einem Client aber überhaupt geht, muss man den Zeitgeber Dienst starten. Das kann man zum Beispiel über das Applet 'Dienste' aus der Systemsteuerung tun, oder man verwendet den folgenden Befehl auf der Kommandozeile: net start w32time

Dann kann man überprüfen mit welchem Rechner die eigene Uhrzeit synchronisiert wird. Das geht mit dem Kommando: net time /querysntp

Dabei wird dann bei Ihnen in den meisten Fällen rauskommen, das die eigenen Zeit mit einem Timeserver von Microsoft synchronisiert wird: time.microsoft.com

Man kann aber natürlich auch andere Zeitserver einstellen. Das mit dem Befehl net /setsntp:Server1,Server2

Stellt sich die Frage woher man nun die Zeitserver nimmt. Das ist aber eigentlich ganz einfach: Man verwendet die von der Physikalisch-Technischen Bundesanstalt zur Verfügung gestellt Atomzeit. Die sollte eigentlich genau genug sein. Die PTB stellt zwei Server zur Verfügung: ptbtime1.ptb.de und ptbtime2.ptb.de.

Die PTB hat dankbarerweise auch einige technischen Hinweise veröffentlicht. Die finden Sie hier.

Der Windows Zeitgeberdienst gibt übrigens auch ein paar Informationen aus - zum Beispiel wenn er die Uhrzeit synchronisiert hat. Diese Informationen finden Sie in Form von Einträgen im Bereich 'System' der Ereignisanzeige.


Lasten sind lästig


Ich beschäftige mich nun schon seit geraumer Zeit mit der Art und Weise wie Lasten 'funktionieren' sollen. Frustrierende Sache: Lasten sind wirklich deutlich schwieriger als man das meinen möchte.

Hier mal ein kurzer Abriss der Fälle die so eintreten können, wenn man mit Lasten arbeitet - und zwar nur anhand eines ganz einfachen Beispiels.

Angenommen, man hat einen Knoten der mit einer Last belastet ist.

Jetzt wird der Knoten ausgewählt und verschoben (ohne Kopien). In diesem Fall soll die Last wohl mit verschoben werden - obwohl sie selbst gar nicht ausgewählt wurde!

Im zweiten Fall wird die Last ausgewählt, der Knoten aber nicht. Dann wird verschoben: In diesem Fall verbleibt der Knoten an seiner Stelle - die Last landet als beim verschieben auf einem anderen Knoten. Außerdem: An der Zielstelle ist unter Umständen gar kein Knoten - im Zuge des Verschiebens der Last muss also ein neuer Knoten angelegt werden!

Im dritten Fall wird Knoten und Belastung ausgewählt und verschoben: Dabei soll natürlich die Last hinterher immer noch auf dem Knoten sein - nur ist der eben an einer anderen Stelle. Das funktioniert also im Prinzip genauso wie der erste Fall, obwohl die Auswahl der Objekte völlig anders ist.

Jetzt kommt dann der spaßige Teil: Was passiert, wenn an der Stelle an die verschoben wird bereits ein Knoten ist? Das ist wiederum abhängig von der Auswahl: War nur die Last ausgewählt, verschwindet der ursprüngliche Knoten und der vorhandene wird genommen.

War der Knoten auch ausgewählt - dann gibt es an der Zielstelle nach dem verschiebene einen doppelten Knoten. (Es ist zu überlegen ob sowas dann vor der Berechnung per Warnung angemeckert wird oder nicht. Vielleicht sollte man Knoten auch manuelle verschmelzen können...)

Und die Sache wird noch viel komplizierter - und zwar dann, wenn beim verschieben auch Kopien angelegt werden. Denn dann sind alle Fälle für jede Kopie zu prüfen.

Wenn ich Sie wäre, dann wäre ich froh, das man bei den Statikprogrammen einfach nur eine Last anklicken muss und dann den Befehl zum verschieben auswählen kann. Das ist wirklich deutlich einfacher als die Sache zu programmieren... :-)

 

 


Microsoft verschenkt C/C++ Compiler


Ab sofort kann man das Visual C++ Toolkit kostenlos von Microsoft runterladen. Das Toolkit enthält:

  • Den C/C++ Optimizing Linker und Compiler aus Visual C++ 2003
  • Die C Runtime Library, die C++ Standard Library und die STL aus VC++ 2003
  • Die .NET Framework CLR. (Der Compiler kann nicht nur nativen Win32 Code sondern auch Code für die CLR erzeugen, MC++ - Managed C++)
  • Beispiel-Programme

Wer bereits Visual Studio 2003 oder Visiual C++ 2003 besitzt braucht das Toolkit nicht; wer einen tollen kostenlosen C++ Compiler mit Support für .NET sucht ist dabei gut aufgehoben. Eine IDE gibts allerdings nicht - aber zur Not tut es sicherlich auch SharpDevelop.

Das .NET SDK ist ja schon immer kostenlos gewesen. Darin befindet sich unter anderem der VB.NET und der C#.NET Compiler - sowie auch ein Debugger, den man auch für C/C++ Projekte verwenden kann.


Wer schon immer mal einen Schreibtisch bei D.I.E. sehen wollte...


Hier mal etwas nachdem ich andauernd gefragt werde bisher tasächlich schon einmal gefragt wurde: Wie sieht wohl der Schreibtisch eines Programmieres bei D.I.E. aus?

So:

Mein Hauptrechner ist der Laptop, ein Acer TravelMate 800. Da hängt noch ein bisschen Peripherie dran, so die optische Maus, eine zusätzliche externe Festplatte, der DVD-Brenner ein paar Boxen und ein zweiter Monitor.

Der Laptop läuft mit 1400x1050 Pixeln Auflösung, der externe Monitor mit 1280x1024. Ich versuche mich aber schon seit geraumer Zeit dazu zu überreden einen größeren externen anzuschaffen... :-)

Wer nun selbst keine Software entwickelt dem ist vermutlich nicht klar wofür der ganze Bildschirmplatz benötigt wird. Das ist so:

Auf dem Laptop-Monitor läuft normalerweise die Entwicklungsumgebung - das ist das Programm mit dem der Quellcode für die Statik-Programme geschrieben wird, und mit dessen Hilfe auch die Fehlersuche in den Statikprogrammen stattfindet. Diese Umgebung hat so viele Fenster, Menüs und Toolbars das nicht viel Platz für den Editor bleiben würde wenn alle auf dem einen Monitor wären. Der Editor ist aber das wichtigste Werkzeug: Damit wird der Quelltext angezeigt.

Darum sind einige Fenster auf dem zweiten Monitor. Dazu gehört zum Beispiel die Projektverwaltung, die schon allein ein recht großes Fenster braucht: Im aktuellen Projekt befinden sich etwas über 6000 Dateien in rund 900 Ordnern - da kann man schon ein bisschen Übersicht gebrauchen :-).

Während der Fehlersuche muss das eigentlichen Programm natürlich auch noch irgendwo laufen - das passiert auch auf dem 2. Monitor. Auf dem Foto erkennt man (was man so erkennen nennt...) den Debugger auf dem Laptop und Xfalt auf dem zweiten Monitor.

Im Glas ist übrigens Apfelsaft...