37 1 2MB
Einführung in Sofistik
Übungsskript Flächentragwerke II 2. Auflage Juli 2007 Technische Universität Berlin Fachgebiet Massivbau Sekretariat TIB 1 - B 2 Gustav-Meyer-Allee 25 13355 Berlin Prof. Dr. sc. techn. Mike Schlaich Dr.-Ing. Annette Bögle Dipl.-Ing. Christian Hartz Tel +49 (0)30 314-721 30 Fax +49 (0)30 314-721 32 [email protected] www.ek-massivbau.tu-berlin.de
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Inhaltsverzeichnis 1
Hinweise 1.1 Fehlermeldung 1.2 Syntax
4 4 4
2
Allgemeine Übersicht 2.1 Modularer Aufbau
5 5
3 4
3
Eingabedatei Beispiele 4.1 Rahmen 4.1.1 Material und Querschnittsdefinition - AQUA 4.1.2 Geometriedefinition - GENF 4.1.3 Lastfalldefinition - SOFILOAD 4.1.4 Stabwerksberechnung - STAR 4.1.5 LF-Kombinationen - MAXIMA 4.1.6 Spannungsnachweis - AQB 4.1.7 Darstellung der Verläufe - AQUB 4.1.8 Quellcode 4.2 Deckenplatte 4.2.1 Material und Querschnittsdefinition - AQUA 4.2.2 Geometriedefinition - GENF 4.2.3 Lastfalldefinition - SOFILOAD 4.2.4 Schnittkraftermittlung - SEPP 4.2.5 LF-Kombinationen - MAXIMA 4.2.6 Bemessung von Flächentragwerken - BEMESS 4.2.7 Quellcode 4.3 Hypar – Festrand – 45° 4.3.1 Globale Variablen 4.3.2 Material und Querschnittsdefinition - AQUA 4.3.3 Geometriedefinition - GENF 4.3.4 Allgemeine Statik - ASE 4.3.5 Quellcode 4.4 Hypar – Seilrand – 45° 4.4.1 Globale Variablen 4.4.2 Material und Querschnittsdefinition - AQUA 4.4.3 Geometriedefinition - GENF 4.4.4 Quellcode 4.5 Tennishalle 4.5.1 Quellcode 4.6 Hochpunktmembran 4.6.1 Quellcode 4.7 Traglufthalle 4.7.1 Quellcode 4.8 Hängebrücke 4.8.1 Quellcode
6 7 7 8 9 10 12 13 14 15 16 18 19 19 21 21 21 21 23 26 26 26 26 27 28 30 30 30 30 31 35 36 40 40 47 49 55 56
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
1 Hinweise 1.1 Fehlermeldung Bei der Benutzung von Sofistik im Computerpool im Raum TIB 13b – 571 kann es trotz fehlerfreier Eingabedatei auf Grund von Netzwerkproblemen z.B. zu folgender Fehlermeldung kommen:
Das Problem kann vermieden werden, in dem man auf der lokalen Festplatte (C:) rechnet. Eventuell ist es auch hilfreich Ergebnisdateien, die ohnehin bei jeder Rechnung überschrieben werden, zu löschen.
1.2 Syntax Zur besseren Erkennbarkeit von Schlüsselwörtern werden diese kursiv dargestellt, wohingegen Literale, also Werte oder Ausdrücke die nach einem Schlüsselwort folgen, normal dargestellt werden.
4
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
2 Allgemeine Übersicht Auf den vorliegenden Seiten soll eine Einführung in das Stabwerksprogramm Sofistik gegeben werden. Nach einer allgemeinen Übersicht folgen als Beispiele die Berechnung eines Stahlrahmens und einer Betonplatte. Im Anschluss wird die mögliche Formfindung mit Sofistik vorgestellt. Der Anspruch ein Programm für den konstruktiven Ingenieurbau zu entwickeln, das schnell und unkompliziert zu brauchbaren Ergebnissen führt, aber dem numerisch geübten Anwendern keine Schranken auferlegt, führte zu einem modularen Aufbau mit offenen Schnittstellen.
Bild 2-1: Modularer Aufbau der Sofistik Software
2.1 Modularer Aufbau In einer Eingabedatei werden hintereinander Batch-Programme geschrieben, die einzeln berechnet werden können und in die CDBASE-Datenbank gespeichert werden. Die Eingabedateien werden wahlweise mit einem Texteditor (TEDdy) oder einer graphischen Eingabe (MONET) erzeugt. Komplizierte Querschnitte können auch mit dem Modul WinAQUA entworfen werden. Die Darstellung der Ergebnisse erfolgt mit einem Animator, welcher Verformungsbilder anschaulich darstellt, DBVIEW, welches die Ergebnisse rein in Textform auflistet, oder WinGraf, welches die Ergebnisse graphisch und textlich ausgibt.
5
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
3 Eingabedatei Die Eingabedatei besteht aus hintereinander geschriebenen Batch-Programmen (Stapelprogrammen), die Materialeigenschaften, die geometrische Anordnung, Lastfälle, etc. generieren.
Bild 2 : Sequentieller Aufbau einer Eingabedatei
Die einzelnen Batch-Programme werden nacheinander gerechnet und verbleiben in der Datenbank. Das hat z.B. den Vorteil, dass wenn ein Lastfall geändert wurde nur das entsprechende Batch-Programm gerechnet werden muss und nicht das gesamte System. Bei der Verwendung des Editors T E D d y ( es kann auch jeder beliebige andere ASCIIEditor verwendet werden) erreicht man die Hilfe zu den einzelnen Schlüsselwörtern an der aktuellen Cursorposition mit der Taste F1. In der unteren Fußzeile wird zudem die Art und Reihenfolge der erwarteten Werte angegeben. Wird diese Reihenfolge eingehalten, können die Schlüsselwörter weggelassen werden.
6
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4 Beispiele 4.1 Rahmen Im folgenden Beispiel wird die Berechnung eines Rahmens in Stahlbauweise mit Sofistik schrittweise vorgeführt. Die Eingabe soll über den Texteditor T E D d y erfolgen. Die einzelnen Batch-Programme werden hintereinander in eine Datei r a h m e n . d a t geschrieben. Vor jedem Programmanfang steht das Schlüsselwort prog, am Programmende das Schlüsselwort ende. Jede Zeile eines Programms startet mit einem Schlüsselwort, das in der weiteren Zeile spezifiziert wird. Eine Auflistung aller Schlüsselworte und die Eingaben, die ein Schlüsselwort erwartet, können in der Dokumentation (F1) angeschaut werden. Kommentare können überall eingeführt werden, sie beginnen mit einem $-Zeichen. Zunächst sollte jedes Programmmodul eine Kopfzeile (kopf) erhalten, die in den Ausgabedateien anzeigt, aus welchem Batch-Programm welche Berechnung folgt.
Bild 4-1: Statisches System Rahmen
7
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.1.1 Material und Querschnittsdefinition - AQUA Der Rahmen besteht aus einem biegesteif verbundenen Stiel und Riegel aus HEB 500 Profilen und einer gelenkig daran angeschlossen eingespannten Stütze aus einem IPE 600. Das HEB Profil hat die Stahlgüte S235, das IPE Profil wird mit der Stahlgüte S355 definiert. norm
legt die Berechnungsgrundlage (z.B. DIN 18800) fest.
stah
generiert einen metallischen Werkstoff. In der ersten Spalte wird ihm eine Nummer zugeordnet, in der Zweiten die Art des Materials, in der dritten die Güte.
prof
generiert ein Stahlprofil. In der ersten Spalte wird ihm eine Nummer zugeordnet, in der Zweiten ein Profiltyp, in der dritten Spalte ein Bezeichner des Typs. Mit mnr springt man in Spalte sechs, um diesem Profil ein oben erzeugtes Material zuzuordnen.
dtyp
steuert die Geometrie der Querschnitte in ihren geom. Abmessungen (inkl. Ausrundungsradien bei Walzprofilen).
Bild 4-2: AQUA im TEDdy Editor
8
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.1.2 Geometriedefinition - GENF Um den Rahmen zu generieren, müssen zuerst Knoten festgelegt werden, die später durch Stäbe verbunden werden. syst
legt das System fest (mit rahm ein ebenes System in der X-Y-Ebene).
knot
generiert Knoten und Knoteneigenschaften. In der ersten Spalte steht die Knotennummer, in den darauffolgenden drei Spalten die Lage im kartesischen Achsenkreuz. Mit fix werden die Lagerbedingungen festgelegt (z.B. pp – festhalten gegen alle Verschiebungen, f – fest eingespannt, kp – Referenz auf einen Knoten).
stab
generiert einen Stab. In der ersten Spalte steht seine Nummer in den weiteren Anfangs- und Endknoten. Mit qnr wird der entsprechende Querschnitt (hier: Stahlbauprofile) festgelegt.
9
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.1.3 Lastfalldefinition - SOFILOAD In SOFILOAD werden die verschiedenen Lastfälle und Einwirkungsgruppen generiert. Lastfälle werden einzeln erzeugt und Nummern zugeordnet. Diese werden in Einwirkungsgruppen eingeteilt. Einwirkungsgruppen werden mit Literalen bezeichnet, die Bezeichnungen können frei gewählt werden, bestimmte Literale sind aber schon mit fester Bedeutung belegt.
Bild 4-3: Gliederung der Einwirkungen
Die endgültige Kombination der Lasteinwirkungen erfolgt aber erst in den Programmmodulen M A X I M A oder A Q B , wo den Einwirkungen Sicherheitsbeiwerte oder Kombinationsfaktoren zugeordnet werden. act
definiert die Einwirkung. Die Einwirkung kann frei bezeichnet werden (höchsten 4 Literale) oder voreingestellte Bezeichnungen (z.B. g, q) können verwendet werden.
lf
definiert den Lastfall. Jedem Lastfall muss eine Zahl zugeordnet werden. Wenn die in GENF erzeugten Stäbe an sich ein Eigengewicht erhalten sollen, muss in die Richtung des Eigengewichts ein Faktor 1.0 gewählt werden (z.B. egy 1.0).
stab
erzeugt eine über einen Stab verteilte Last. Die Stäbe, die Lasten erhalten, müssen zuerst angegeben werden. typ regelt die Einwirkungsrichtung, pa be10
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
zeichnet den Anfangswert der Last, der Endwert pe ist gleich dem Anfangswert, wenn nicht anders beschrieben. a bezeichnet den Abstand der Last vom Stabanfang, l die Länge der Last. knot
11
erzeugt eine Knotenlast. Man wählt Belastungsart und Richtung.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.1.4 Stabwerksberechnung - STAR Sind die Materialkenngrößen, die Geometrie sowie die Lasten definiert, können die Schnittkraftermittlungen in verschiedenen Programmmodulen erfolgen. Ebene und räumliche Stabwerke können mit STAR, Flächentragwerke mit ASE ermittelt werden. Die Berechnung kann linear oder nichtlinear nach Theorie II. oder III. Ordnung erfolgen.
Bild 4-4: Verformungsbild mit Sofistik Animator nach Berechnung mit STAR
echo
steuert den Umfang der Ausgabe. voll gibt an, dass alle Ausgabeoptionen angezeigt werden sollen. Das nachfolgende ja bedeutet, dass eine normale Ausgabe gewünscht ist.
steu
regelt das Rechenverfahren, z.B. I für eine weggesteuerte lineare Theorie.
lf
wählt den Lastfall aus, der berechnet werden soll.
12
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.1.5 LF-Kombinationen - MAXIMA Überlagert die Einwirkungen gemäß vorgegebenem technischem Regelwerk an den Knoten des Stabwerkmodells. Die Einwirkungen werden vorher ermittelt und sind in der Datenbasis gespeichert. MAXIMA sucht selbstständig die ungünstigste Einwirkung und wendet die Kombinationsbeiwerte und Teilsicherheitsfaktoren selbstständig an. Nichtlinear ermittelte Lastfälle müssen allerdings schon bei der Definition der Lasten mit ihren entsprechenden Sicherheitsbeiwerten belegt werden. Die vorgestellte Berechnung mit dem Satz act sollte nur bei linearer Berechnung angewandt werden. echo
steuert den Umfang der Ausgabe. last, fakt bezeichnet, dass die verwendeten Lastfälle mit entsprechenden Faktoren ausgegeben werden. Das nachfolgende ja bedeutet, dass eine normale Ausgabe gewünscht ist.
komb
definiert die verwendete Lastkombination, sie muss als erstes mit einer Nummer bezeichnet werden. Die zweite Spalte regelt die Art der Überlagerung, hier bedeutet desi-v: Bemessungszustand Bruchzustand vereinfacht. type den Typ des Ergebnislastfalles.
act
definiert die Einwirkung. Als typ der Einwirkung können voreingestellte Literale mit bestimmten Bedeutungen gewählt werden, wie hier g für Eigenlast und q für Verkehrslast.
lf
wählt den Lastfall für die Einwirkung aus.
supp
definiert die Überlagerung. In der ersten Spalte muss die Kombination gewählt werden, in der zweiten Spalte die gewünschte Art der Extremalbedingung (hier: mami für eine Überlagerung, die den Maximal- und Minimalwert sucht). Die dritte Spalte bezeichnet den ausgewählten Elementtyp (hier: stab), die vierte Spalte die gewünschte Zustandsgröße (z.B. My, Vz, N). lf bezeichnet den Ausgabelastfall, mit bez kann eine Bezeichnung der Überlagerung gewählt werden.
13
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.1.6 Spannungsnachweis - AQB Der Spannungsnachweis und die Bemessung der in AQUA erzeugten Querschnitte erfolgt mit dem Programm AQB. Die vorhandene Spannung wird aus den Schnittgrößen des ausgewählten Lastfalls ermittelt und mit der Grenzspannung verglichen. echo
steuert den Umfang der Ausgabe. voll gibt an, dass alle Ausgabeoptionen angezeigt werden sollen. Das nachfolgende ja bedeutet, dass eine normale Ausgabe gewünscht ist.
lf
wählt den betrachteten Lastfall aus. Hier sind Ergebnislastfälle aus MAXIMA ausgewählt.
span
ermittelt Spannungen an Stabwerksknoten. Die Eingabe K211 in der ersten Spalte erstellt ein Ergebnislastfall mit der Nummer 211, der tabellarisch ausgegeben wird. Die zweite Spalte definiert die zulässige Grenzspannung, hier: f für eine mit Sicherheit (z.B.: γ = 1,1) behaftete Fließspannung.
14
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.1.7 Darstellung der Verläufe - AQUB Das Programm AQUB stellt die vorhandenen Querschnitte und deren Spannungen grafisch dar. s
wählt die darzustellende Schnittgröße aus, hier nur das Moment um die YAchse My eines diskreten Lastfalles.
quer
wählt in der ersten Spalte den zu zeichnenden Querschnitt aus, in der zweiten Spalte den zu zeichnenden Spannungszustand.
15
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.1.8 Quellcode $-------------------------------------------------------------------------------$ $ $ Technische Universität Berlin $ $ Einführung Sofistik $ Beispiel 1: Rahmen in Stahlbauweise $ $ ------------------------------------------------------------------------------$ $ Eingabe der Querschnitte -----------------------------------------------------$ +prog aqua kopf Material- und Profildefinitionen $ Kopfzeile für Ausgabedateien norm DIN 18800
Erzeugt ein metallisches Material mit der Festigkeit S 235 und der Materialnummer 1.
stah 1 s 235 stah 2 s 355
prof 1 heb 500 mnr 2 dtyp v prof 2 ipe 600 mnr 1 dtyp v
$ Normfestlegung $ Material 1 $ Material 2 $ Stahlprofil 1 $ Stahlprofil 2
Erzeugt ein IPE 600 Profil mit der Nummer 1 und benutzt das zuvor definierte Material 1. dtyp – definiert die Darstellung bzw. das Rechenverfahren mit v (Vollquerschnitt).
ende
$ Eingabe der Geometrie --------------------------------------------------------$ +prog genf kopf Geometrie des Rahmens $ Kopfzeile für Ausgabedateien syst rahm
knot knot knot knot
1 2 31 32
Erzeugt einen Knoten 1 mit den Koordinaten 0,0 als Festlager mit Momentengelenk.
0 0 4 0
0 fix pp -5 -5 0 fix kp 31
knot 4
4
0
stab 11 stab 21 stab 31
1 2 qnr 1 teil 2 2 31 qnr 1 teil 5 32 4 qnr 2 teil 2
$ zweidimensionales System
$ Festlager Erzeugt einen Knoten 32, der mit kp an den Knoten 31 als Gelenk und mit den relativen Koordinaten 0,0 zum Knoten 31 angelegt wird.
fix f
$ Drehgelenk mit Referenz auf $ Knoten 31 $ Einspannung
Definiert einen Stab mit der Nummer 21 vom Knoten 2 zum Knoten 31 mit dem Querschnitt 1 und einer Stabunterteilung in 5 Segmente.
ende
$ Eingabe der Lasten -----------------------------------------------------------$ +prog sofiload Definiert eine Einwirkung mit g (vordefiniertes Literal für ständige Lasten). kopf Lastfälle für Rahmen Legt einen Lastfall 1 mit der Berücksichtung des Eigengewichts in y-Richtung an.
act g bez 'Eigengewicht' Erzeugt eine zusätzliche lf 1 egy 1.0 stab 21 21 typ pyy pa 75 act q bez 'Verkehrslast' lf 2 stab 21 21 typ pyy pa 80 pe 130 a 1 L 3 lf 3 knot 2 pxx 165 ende
Streckenlast auf dem Stab 21 in y-Richtung und dem Stützwert 75
$ Gleichlast
$ Trapezlast $ Knotenlast
Erzeugt eine trapezförmige Streckenlast auf dem Stab 21 in y-Richtung mit dem Anfangsstützwert 80 [kN/m] und dem Endstützwert 130 [kN/m], wobei die Last erst 1 Meter vom Startknoten 2 beginnt und eine Länge von 3 Metern hat.
$ Berechnung Lastfall 1 nach Theorie I -----------------------------------------$ +prog star kopf Berechnung Lastfall 1: Eigengewicht $ Kopfzeile fuer Ausgabedateien echo voll ja $ Ausgabesteuerung steu I $ Lineare Theorie lf 1 $ Lastfall 1 nach Sofiload ende
$ Berechnung Lastfall 2 nach Theorie I -----------------------------------------$ +prog star kopf Berechnung Lastfall 2: Verkehrslast $ Kopfzeile fuer Ausgabedateien
16
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
echo voll ja steu I lf 2
$ Ausgabesteuerung $ Lineare Theorie $ Lastfall 2 nach Sofiload
ende
$ Berechnung Lastfall 3 nach Theorie I -----------------------------------------$ +prog star kopf Berechnung Lastfall 3: Einzellast $ Kopfzeile fuer Ausgabedateien echo voll ja $ Ausgabesteuerung steu I $ Lineare Theorie lf 3 $ Lastfall 3 nach Sofiload ende Dieses Modul erscheint nicht im Animator. Die Ausgabe erfolgt in URSULA.
$ Überlagerung der Lastfälle nach DIN 18800 ------------------------------------$ +prog maxima kopf Lastfallüberlagerung $ Kopfzeile echo voll ja $ Ausgabesteuerung komb act lf act lf act lf
11 desi-v type desi $ Kombinationsvorschrift g $ Definition der Einwirkung 1 $ Auswahl des Lastfalles q Legt eine Lastfallkombination 11 an, die den Nachweis für den vereinfachten 2 Bruchzustand führen soll, wobei die Lastfälle 1, 2 und 3 beliebig kombiniert werden q sollen. 3
supp 11 mami stab My lf 111 bez 'My' ende
Legt die Definition der Überlagerung an, wobei die Kombination mit der Nummer 11 benutzt wird und nach maximalen und minimalen Schnittgrößen gesucht werden soll. Die Schnittgrößen sind speziell auf My begrenzt und werden dann mit der Lastfallnummer 111 und der Bezeichnung ‚My’ in der Datenbank abgelegt.
$ ------------------------------------------------------------------------------$ Dieses Modul erscheint nicht im Animator. Die Ausgabe erfolgt in URSULA. +prog aqb kopf Bemessung Mami My echo voll ja lf 111 Es wird der Lastfall 111 aus dem vorhergehenden Modul angezogen. span K211 f ende
Ermittelt alle Spannungen im zuvor definierten LF und speichert die Ergebnisse unter der Nummer 211, wobei die Spannungsnachweise gegen die vom Material gegebene Fließspannung geführt werden. Mit f werden diese Fließspannung mit dem jeweiligen Sicherheitsfaktor behaftet (z.B. 1,1).
$ ------------------------------------------------------------------------------$ Dieses Modul erscheint nicht im Animator. Die Ausgabe erfolgt in URSULA. +prog aqup kopf Grafische Darstellung des Querschnitts s vz 211 my 211 quer 1 Zieht die Schnittgrößen Vz und My aus der Datenbank. quer 1 tau quer 1 sigv Stellt den Querschnitt 1 ohne Spannungsverläufe dar. ende
17
Stellt den Querschnitt 1 mit Vergleichsspannungsverlauf dar.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.2 Deckenplatte Die zu berechnende Deckenplatte orientiert sich an einem Beispiel aus dem FEM Skript des Fachgebietes Massivbau. Neben ihrem Eigengewicht, Ausbaulast und veränderlichen Verkehrslast ist die Platte mit zwei Einzellasten belegt. Ziel dieses Beispieles soll aber die Demonstration einer Geometrie-Eingabe mit Hilfe von Schleifen sein.
Bild 4-5: Verformung durch Eigengewicht im Sofistik Animator
18
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.2.1 Material und Querschnittsdefinition - AQUA Um später eine Platte mit quad-Elementen (sind ebene Elemente, die durch 3 bzw. 4 Eckknoten definiert werden) zu konstruieren, müssen lediglich die Materialien Beton (beto) und Baustahl (stah) definiert werden. Der Unterzug wird als Rechteckquerschnitt (qb) erzeugt.
4.2.2 Geometriedefinition - GENF Zuerst wird über Schleifen ein Knotenfeld erzeugt, das später mit quad-Elementen belegt wird. Ein Unterzug wird an einer Seite erzeugt. Die Stützen können als festes Knotenlager erzeugt werden, die Dimension der Stütze wird erst im Durchstanznachweis im Programm BEMESS berücksichtigt. $ Generierung der Knoten let#nr 1001 let#x 0 loop 13 knot (#nr #nr+12 1) #x (0 1.875) let#nr #nr+100 let#x #x-1.3 endloop
Das Knotenraster wird mit Hilfe von Schleifen erzeugt. Zuerst werden die Variablen #nr und #x mit dem Schlüsselwort let erzeugt (Variablenname und let bildet ein Wort). Mit loop 13 wird eine Schleife geöffnet, die dreizehnmal läuft. knot ist nun ein GENF-Befehl, der in drei nacheinander folgenden Spalten einen Knoten mit Nummer und X- und Y-Koordinate erzeugt. Die erste Spalte für die Knotennummer ist folgendermaßen geschrieben: (#nr #nr+12 1)
Die erste Eingabe in der Klammer bezeichnet die erste Nummer des zu erzeugenden Knotens, die zweite Eingabe bezeichnet die letzte Nummer des zu erzeugenden Knotens, der dritte Eintrag bezeichnet das zwischen den Knotennummern liegende Intervall. Die zweite Spalte bezeichnet die x-Koordinate. #x
Der Knoten liegt auf dem Wert, mit dem die Variable #x definiert ist. Die dritte Spalte bezeichnet die y-Koordinate. (0 1.875)
Der erste Wert in der Klammer bezeichnet den ersten Wert, die zweite Eingabe die Distanz zum nächsten Wert. endloop
Mit endloop wird die Schleife geschlossen.
19
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
$ Generierung der Randbedingungen knot (1001 2201 100) fix pp let#nr 1005 loop 4 knot (#nr #nr+8 4) fix pp let#nr #nr+400 endloop
Zur Generierung der Randbedingungen werden vorher erzeugte Knoten angesprochen. Die erste Zeile spricht alle Knoten von 1001 bis 22 01 mit einem Inkrement von 100 an (d.h. die Knoten 1001, 1101, 1201, 1301, 1401, 1501, 1601, 1701, 1801, 1901, 2001, 2101 und 2201 werden mit einem Festlager versehen). Mit der darauffolgenden Schleife werden die weiteren Festlager definiert. Der Startknoten wird mit 1005 festgelegt und danach die Schleife 4-mal durchlaufen. Bei der Fixierung der Knoten kommt wieder die gleiche Syntax wie bei der Erzeugung der Knoten zum Einsatz. Ausgehend von der Startnummer 1005 werden also beim ersten Durchlaufen der Schleife die Knoten 1005, 1009 und 1013 mit einem Lager versehen. grup 1 d .25 lage mitt $ Generierung der Flächenelemente let#nr 1001 loop 12 loop 12 quad #nr #nr #nr+100 #nr+101 #nr+1 1 d .25 let#nr #nr+1 endloop let#nr #nr+88 endloop quad -1105,-1106,-1107 quad -1205,-1206,-1207
Das Schlüsselwort grup bezeichnet die nun folgende Gruppe von Flächenelementen, wobei alle Elemente die dieser Gruppe angehören mit einer Dicke von 0,25m angelegt werden und ihre Ausrichtung zum Knoten mit mitt mittig definiert wird. Die quad-Elemente werden innerhalb einer Doppelschleife erzeugt. Nachdem eine vollflächige Platte erzeugt wurde, werden gewisse Elemente als Aussparung wieder hinausgenommen, in dem sie mit - angesprochen werden. grup 2 $ Unterzug stab (11 22 1) (2201 1) (2202 1) qnr 1
Die Eingabe des Unterzuges erfolgt analog zu der Erzeugung der Knoten. Dabei werden so lange Stäbe, hier mit den Nummer 11-22, angelegt, solange die erste Bedingung 11 22 1 (Startwert Endwert Inkrement) gültig ist. Die Stabnummern werden allerdings über die Gruppennummer und den Gruppendivisor (Voreinstellung 1000) definiert und werden auf die aktuelle Nummer aufaddiert. Somit ergibt sich für den ersten Stab die Nummer 2011 und für den Letzten 2022.
20
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.2.3 Lastfalldefinition - SOFILOAD Der schematische Aufbau gleicht Beispiel 1. Einige Lasten werden aber elementunabhängig in Koordinateneingabe aufgebracht, auf die wird hier besonders eingegangen. poin typ pg 100 x -2.6 y 3.75
Die Eingabe erzeugt eine Einzellast, die auf die Elemente, die die entsprechenden globalen Koordinaten umfassen, wirkt. area typ pzz 5.0 x1 0
x2
-5.2
x4 0
y1
0
y3
7.5
Die Eingabe erzeugt eine Flächenlast, die auf ein Rechteck in den entsprechenden Koordinaten wirkt. Ist ein X- bzw. Y-Wert definiert, gilt er als Standardeinstellung für alle folgenden. Daher müssen nicht alle Punkte definiert werden. Erzeugt man eine Lastfläche, z.B. über einer Aussparung, erhält man bei der Berechnung eine Warnung. Auch die offiziellen Beispielaufgaben der Sofistik AG erzeugen diese Warnung.
4.2.4 Schnittkraftermittlung - SEPP Das Programm SEPP berechnet die Schnittgrößen eines Plattentragwerkes. Die Eingaben Erfolgen analog zu dem im Beispiel 1 vorgestellten Programm STAR. Zu beachten ist, dass nur eine Belastungsrichtung, entweder Platten- oder Scheibenbeanspruchung, zulässig ist. Eine gleichzeitige Platten− und Scheibenbeanspruchung ist dem Programmmodul ASE vorbehalten.
4.2.5 LF-Kombinationen - MAXIMA Das Programm MAXIMA überlagert die Schnittgrößen. Analog zu Beispiel 1.
4.2.6 Bemessung von Flächentragwerken - BEMESS Das Programmmodul BEMESS leistet die Bemessung der Stahlbetonplatte. Benötigt man mehrere Bemessungen derselben Platte, ist es zweckmäßig die Parameter in einem eigenständigen Batch zu definieren. geo
Eingabe des Querschnitts, – (keine Eingabe also) bezeichnet, dass die in GENF definierte Plattendicke gewählt wird. ho definiert den Abstand des Schwerpunktes der oberen Bewehrung zum oberen Plattenrand. hu legt den Abstand des Schwerpunktes der unteren Bewehrung zum unteren Plattenrand fest.
para
legt die Bemessungsparameter fest, wobei do den Bewehrungsdurchmesser der ersten Lage definiert. wko legt die Rissbreite der ersten Lage fest.
lf
mit desi wird die in MAXIMA definierte Bemessungsüberlagerung - Bruchzustand gewählt.
steu
steuert die Bemessung, wobei ro_v den maximalen Längsbewehrungsgrad definiert.
21
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
dust
Sofistik
steuert die Durchstanzbemessung, wobei d und b die Abmessungen der Stütze angeben und ro_v den maximalen Längsbewehrungsgrad infolge Schub im Durchstanzbereich beschreibt.
22
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.2.7 Quellcode $ $ $ $ $ $ $ $
------------------------------------------------------------------------------$ Technische Universität Berlin Einführung Sofistik Beispiel 2: Flächentragwerk / Schleifengenerierung ------------------------------------------------------------------------------$
$ Materialien für Deckenplatte -------------------------------------------------$ +prog aqua kopf Querschnitte für Deckenplatte norm din 1045-1
Erzeugt zweimal ein Material Beton C 40 mit der Bezeichnung ‚Beton C 40/50’.
beto (1 2 1) c 40 bez 'Beton C 40/50' stah 5 bst 500sa bez 'Betonstahl' qb 1 0.7 0.2 mnr 2 ref pr Legt ein Recheckquerschnitt mit der Querschnittsnummer 1 an. Das Rechteck ist 70 cm hoch und 20 cm breit, wobei hier das Material 2 verwendet wird. Mit ref wird die Lage des Nullpunktes angegeben und mit pr als Platte rechts definiert.
ende
$ Eingabe der Geometrie über Schleifen -----------------------------------------$ +prog genf kopf Geometrie der Platte Legt das Geometriesystem fest als Trägerrost bzw. Platte. Das System liegt in der xy-Ebene.
syst rost $ Generierung der Knoten let#nr 1001 Erläuterungen hierzu siehe S. 19. let#x 0 loop 13 knot (#nr #nr+12 1) #x (0 1.875) let#nr #nr+100 let#x #x-1.3 endloop $ Generierung der Randbedingungen knot (1001 2201 100) fix pp let#nr 1005 loop 4 knot (#nr #nr+8 4) fix pp let#nr #nr+400 endloop Gruppiert grup 1 d .25 lage mitt
Erläuterungen hierzu siehe S. 20.
die nachfolgenden Elemente in die Gruppe 1 und legt eine Dicke der Elemente von 0,25 m fest. Die Bezugsfaser der Elemente wird mit mitt mittig definiert.
$ Generierung der Flächenelemente Erläuterungen hierzu siehe S. 20. let#nr 1001 loop 12 loop 12 quad #nr #nr #nr+100 #nr+101 #nr+1 1 d .25 let#nr #nr+1 endloop let#nr #nr+88 endloop quad -1105,-1106,-1107 quad -1205,-1206,-1207 Definiert eine neue Gruppe 2.
$ Unterzug grup 2 stab (11 22 1) (2201 1) (2202 1) qnr 1
Legt 11 Stäbe an. Weitere Erläuterungen s.S. 20.
ende
$ Definition der Lasten --------------------------------------------------------$ +prog sofiload urs:3 kopf Lasten für Decke act g lf 1 egz 1.0 bez 'eigengewicht'
23
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
Spricht für den Lastfall Eigengewicht alle quad-Elemente von 1 bis 9999 an, dabei werden aber nur die vorhandenen berücksichtigt, und versieht sie mit einer Flächenlast in z-Richtung von 1,5 kN/m2.
quad 1 9999 1 typ pz 1.5 act a lf 2 bez 'sonderlast' poin typ pg 100 x -2.6 y 3.75 poin typ pg 100 x -13 y 3.75 act q lf 11 area typ pzz 5.0 x1 0 x2 -5.2 lf 12 area typ pzz 5.0 x1 -5.2 x2 -10.4 lf 13 area typ pzz 5.0 x1 -10.4 x2 -15.6
Erzeugt eine freie Einzellast in Richtung des Eigengewichts an den angegebenen x- und yKoordinaten.
x4 0
y1
0
y3
7.5
-5.2
y1
0
y3
7.5
x4 -10.4
y1
0
y3
7.5
x4
Erzeugt eine freie Flächenlast in globaler zRichtung von 5,0 kN/m2. Dabei können bis zu 63 Lastpunkte definiert werden. Hier werden 4 Lastpunkte angelegt, wobei zuerst die x1-, x2-, x3- und x4-Werte und dann y1-, y2-, y3- und y4Werte eingegeben werden. Ändert sich ein Wert nicht, so kann er weggelassen werden. D.h. die Eingabe: x1 0 x2 -5.2 x4 0 y1 0 y3 7.5
lf 21 area typ pzz 5.0 x1 0 x2 -5.2 lf 22 area typ pzz 5.0 x1 -5.2 x2 -10.4 lf 23 area typ pzz 5.0 x1 -10.4 x2 -15.6 lf 31 area typ pzz 5.0 x1 0 x2 -5.2 lf 32 area typ pzz 5.0 x1 -5.2 x2 -10.4 lf 33 area typ pzz 5.0 x1 -10.4 x2 -15.6
x4 0
y1
7.5 y3 15.0
-5.2
y1
7.5 y3 15.0
x4 -10.4
y1
7.5 y3 15.0
x4 0
y1 15.0 y3 22.5
drückt eigentlich diese Eingabe aus: x1 0 x2 -5.2 x3 -5.2 x4 0 y1 0 y2 0 y3 7.5 y4 7.5
x4
x4
-5.2
y1 15.0 y3 22.5
x4 -10.4
y1 15.0 y3 22.5
ende
$ Schnittgrößenermittlung ------------------------------------------------------$ +prog sepp kopf Berechnung der Lasten lf 1, 2
Die Lastfälle 1 und 2 werden berechnet.
ende
$ Schnittgrößenermittlung ------------------------------------------------------$ +prog sepp kopf Berechnung der Lasten lf 11,12,13,21,22,23,31,32,33
Die restlichen Lastfälle werden berechnet.
ende
$ Überlagerung -----------------------------------------------------------------$ +prog maxima kopf Überlagerung Bruchzustand echo last,fakt ja
$ Ausgabesteuerung
komb act lf act lf act lf lf lf
$ Kombinationsvorschrift (hier: Bruchzustand) $ Definition der Einwirkung $ Auswahl des Lastfalles
11 desi type desi g 1 a 2 q (11 13 1) q_a (21 23 1) q_a (31 33 1) q_a
supp 11 mami qua* m bez 'Momente' $ qua* : Flächenelemente und deren Knoten supp 11 mami knot pz bez 'Auflager' $ Auflagerkräfte für Durchstanzen ende Siehe Erläuterungen im Kap. 4.2.6.
$ Bemessung --------------------------------------------------------------------$ +prog bemess kopf Definition der Bewehrungsparameter geo - ho 2.0 hu 2.0 para 1 do 12 wko 0.25 ende
24
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II Siehe Erläuterungen im Kap. 4.2.6.
$ Bemessung --------------------------------------------------------------------$ +prog bemess kopf Bemessung Tragfähigkeit echo voll ja steu beme lf desi steu ro_v 2 dust d 0.4 b 0.4 ro_v 1.5 ende
25
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.3 Hypar – Festrand – 45° Wir untersuchen nun die aus der Vorlesung Flächentragwerke II bekannte Hyparfläche, wobei die Richtung der Kett- und Schussrichtung parallel zu den Rändern ausgerichtet sind. Die Geometrie wurde übernommen und stellt sich wie in Bild 4-6 dar. f = 1,40 m
10 m
Bild 4-6: Hyparfläche mit Festlagerung und 0° Membranausrichtung
Die Membran wird am Rand komplett gehalten und durch eine Schneelast von 0,75 kN/m2 belastet. Um den Lastabtrag zu verdeutlichen wird die Membran soweit belastet, bis die Vorspannung abgebaut ist. Als weiteren Schritt wird in der Mitte eine Einzellast aufgebracht, die ein eindeutiges Spannungsbild liefert.
4.3.1 Globale Variablen Man kann Variable global definieren, d.h. sie sind in allen Modulen abrufbar. Dies geschieht durch folgende Syntax: #define N=11
Eingeleitet über das Schlüsselwort #define folgt der Variablenname und dann die Wertzuweisung. Der Zugriff gestaltet sich dann mit der Schreibweise $(N) und kann an jeder Stelle in der *.dat Datei erfolgen. Wird die Geometrie über Formeln erzeugt, lässt sich so durch einige wenige Eingabeparameter die Geometrie verändern.
4.3.2 Material und Querschnittsdefinition - AQUA Die Materialeingabe gestaltet sich wie schon bekannt, nur müssen für anisotrope Materialien zwei E-Moduln definiert werden. mat 1 E 1200E3/1 EY 600E3/1 OAL 90
Ausgehend von einem PVC-beschichteten Polyestergewebe werden Kett- und Schussrichtung jeweils getrennt mit E und EY angegeben. OAL beschreibt den Streichwinkel der Anisotropie, dieser beträgt normalerweise 90°.
4.3.3 Geometriedefinition - GENF
26
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Hier soll nur kurz auf die Definition der Knoten eingegangen werden. Dies geschieht durch die folgende Schreibweise. knot nr 101 #2 #3 #4 #12 #34
x y z 0 0 #6 0 #1 0 #1 0 0 #1 #1 #6 0 #1/2 #6/2 #1 #1/2 #6/2
$ $ $ $
101 0 0 1,5 Knoten 102 bis 111 Knoten 301, 501, 701 ... Knoten der n. Reihe
Dabei werden 6 Knoten angelegt, die die Begrenzung der beiden initialen Recheckflächen (System vor der Formfindung) darstellen. Das erste Rechteck wird dann über die Befehlskette: rast 101 #3 #34 #12 m #1 n #1/2 MNR 1
in ein gleichmäßiges Raster eingeteilt, wobei hier auf die Nummerierung der begrenzenden Randknoten und Rasterschritte geachtet werden muss (ganzzahlige Teilung muss möglich sein).
4.3.4 Allgemeine Statik - ASE Mit ASE kann man sowohl statische als auch dynamische Berechnungen beliebig geformter Tragwerke durchführen. Uns soll es der Formfindung und somit Berechnung einer Membran dienen. Dabei wird die Membran mit einer initialen Vorspannung versehen, wobei die Steifigkeit der Membran auf annähernd null gesetzt wird. +prog ase urs:4 Kopf Formfindung bei räumlichem Ausgangssystem ECHO vers,reak,schn,nost NEIN $ globale Steuerwerte, Art der Berechnung, geometrisch nichtlineare Iteration (30 Schritte) syst prob th3 iter 30 $ Aufbringen der Vorspannung auf alle Elemente der Gruppe 0 grup 0 faks 1E-10 vorx 3.2 vory 3.2 $ Abspeichern der Ergebnisse unter LF 1 lf 1 bez 'Vorspannung' ende
Die Berechnung erfolgt nach Theorie III. Ordnung und wird durch eine Iteration (hier 30 Schritte) gesteuert. Alle Elemente, die der Gruppe 0 angehören, werden nun mit einer neuen Steifigkeit (Steifigkeit des Materials wird mit 10-10 multipliziert, was somit null bedeutet) versehen und einer lokal ausgerichteten Vorspannung in x- und y-Richtung unterzogen (man kann sich das ganze als Seifenhaut vorstellen). Dabei findet die Membran ihre den Randbedingungen zugehörige Form. Diesen Prozess bezeichnen wir als Formfindung. Das ASE-Modul wird dann noch für die Berechnung der Schneebelastung und der Einzellast verwendet.
27
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.3.5 Quellcode +prog aqua KOPF Membran Winkel Formfindung kopf Materialien und Querschnitte
Definiert ein Material 1 mit zwei E-Moduln, die durch den Streichwinkel OAL senkrecht zu einander gestellt werden.
mat 1 E 1200E3/1 EY 600E3/1 OAL 90 ende Erläuterungen. An einem Winkel werden zwei ebene Flächen aufgespannt. #define N=11 $ N=KNOTEN-ANZAHL PRO KANTE Längskante = lange Kante $ Winkel besteht aus 11 x 11 Knotenpunkten Legt einen dreidimensionalen Raum an mit zvon
+prog genf Eigengewichtsrichtung in negativer Richtung und einem Gruppendivisor kopf Membran Winkel Formfindung 100000. syst RAUM gdir negz gdiv 30000 $ syst = Festlegung des Systems = RAUM = räumliche Struktur $ gdir = Richtung des Eigengewichts $ gdiv = Gruppendivisor (Elementnummer/Gruppendivisor = Gruppennummer) ECHO VOLL NEIN $ ECHO = Steuerung der Ausgabe $ VOLL = Alle Optionen setzen $ NEINE = keine Ausgabe ECHO KNOT JA $ Ausgabe der Knotenwerte ja ECHO QUER JA $ Ausgabe der Querschnitte ja ECHO MAT JA $ Ausgabe der Materialwerte ja let#1=$(N)-1 let#2=$(N)+100 let#3=101+200*#1 let#4=#2+200*#1 let#5=0.56*#1 let#6=#5/2 let#12=(101+#2)/2 let#34=(#3+#4)/2 knot nr 101 #2 #3 #4 #12 #34
$ $ $ $ $ $ $ $
x y z 0 0 #6 0 #1 0 #1 0 0 #1 #1 #6 0 #1/2 #6/2 #1 #1/2 #6/2
Anzahl der Intervalschritte: 10 für 11 Knoten Knoten in 1. y-Reihe: Endknotennummer (11 + 100 = 111) Knoten in 1. x-Reihe: Endknotennummer (101 + 200 * 10 = 2101) Knoten in n. x-Reihe: Endknotennummer (111 + 200 * 10 = 2111) Schritte der z-Koordinate maximal Höhe am Rand Mittelknoten zwischen 1+2: (101 + 111)/2 = 106 Mittelknoten zwischen 3+4: (2101 + 2111)/2 = 2106
$ $ $ $
101 0 0 1,5 Knoten 102 bis 111 Knoten 301, 501, 701 ... Knoten der n. Reihe
GRUP NRG 0 d 0.0002 NRA 2 Definition einer Gruppe mit Gruppennummer 0 und $ GRUP = Gruppensteuerung einer Standarddicke von 0,2 mm unter Verwendung $ NGR = Gruppennummer des Elementtyps 2 (Membranwirkung). $ d = Dicke der Quadelemente $ NRA 2 = Nur Membrananteil, definiert lineares Membranelement rast 101 #3 #34 #12 m #1 n #1/2 MNR 1 rast #12 #34 #4 #2 m #1 n #1/2 MNR 1 knot nr fix ; (101 #2 1) f ; (#3 #4 1) f (101 #3 200) f ; (#2 #4 200) f ende +prog ase Stößt eine iterative Berechnung Kopf Formfindung bei räumlichem Ausgangssystem nach Theorie III. Ordnung an. ECHO vers,reak,schn,nost NEIN $ nmat 1 memb syst prob thii iter 30 $ globale Steuerwerte, Art der Berechnung, geometrisch nichtlineare Iteration (30 Schritte) grup 0 faks 1E-10 vorx 3.2 vory 3.2 lf 1 bez 'Formfindung ohne Last' Alle Elemente der Gruppe 0 werden mit einer Steifigkeit von annähernd 0 versehen und dann ende wird eine gleichmäßige Vorspannung von 3.2 kN/m aufgebracht Æ Formfindung.
28
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
+prog ase kopf Ausgleich der Restkräfte mit Faktor 1.0 ECHO vers,reak,schn,nost NEIN Die Ergebnisse aus Lastfall 1 syst prob thii iter 30 PLF 1 werden übernommen. $ PLF = 1 = Aufsetzen auf dem LF 1 grup 0 faks 1 Die Elemente erhalten ihre vorgegebene Steifigkeit zurück. Die Form, die in LF 1 lf 2 bez 'Ende Formfindung FAKS=1.0' gefunden wurde, wird so überprüft. ende +prog ase kopf Schneelast 0,75kN/m² echo vers,reak,schn,nost nein syst prob th3 iter 100 PLF 2 FAKV 1 LF 3 bez 'Schneelast mit (0,75 kN/m²)' flas alle 1 typ pz 0.75 ende +prog ase kopf Einzellast 1kN/m² echo vers,reak,schn,nost nein syst prob th3 iter 100 PLF 2 FAKV 1 LF 4 bez 'Einzellast mit (1 kN/m²)' flas 905 906 1 typ pz 1 flas 1105 1106 1 typ pz 1 ende
29
Flächenbelastung auf alle Flächenelemente mit Inkrement 1 vom Typ in globaler z-Richtung und einem Lastwert von 0,75 kN/m2.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.4 Hypar – Seilrand – 45° Wir untersuchen nun die aus der Vorlesung Flächentragwerke II bekannte Hyparfläche, wobei die Richtung der Kett- und Schussrichtung zu den Rändern um 45° gedreht ist. Die Geometrie wurde übernommen und stellt sich wie in Bild 4-7 dar. f = 1,40 m
10 m
Bild 4-7: Hyparfläche mit Seilberandung und 45° Membranausrichtung
Die Membran wird durch Seile berandet und von einer Schneelast von 0,75 kN/m2 und einer auf die mittleren vier quad-Elemente beschränkten Flächenlast von 100 kN/m2 belastet.
4.4.1 Globale Variablen Auch hier werden wieder globale Variable definiert, d.h. sie sind in allen Modulen abrufbar. Dies geschieht durch folgende Syntax: #define breite
= 10
$ Breite der Membran [m] x-Richtung
Eingeleitet über das Schlüsselwort #define folgt der Variablenname und dann die Wertzuweisung. Der Zugriff gestaltet sich dann mit der Schreibweise $(breite) und kann an jeder Stelle in der *.dat Datei erfolgen. Wird die Geometrie über Formeln erzeugt, lässt sich so durch einige wenige Eingabeparameter die Geometrie verändern.
4.4.2 Material und Querschnittsdefinition - AQUA Siehe obiges Beispiel.
4.4.3 Geometriedefinition - GENF Mit genf werden wiederum die Knoten und quad-Elemente definiert. Dies geschieht wieder über loop-Schleifen. Neu ist die Definition von Seilen. seil #s_nr KA #kn_1 KE #kn_2 QNR 1 VOR $(s_vor)
30
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Die Syntax ist der der Stabgenerierung angepasst und unterscheidet sich nicht. Die Zeile startet mit seil und erwartet danach eine Seilnummer. Darauf folgen Anfangs- und Endknoten sowie der Querschnitt und hier eine initiale Vorspannung. Die Werte sind in dem Beispiel als lokale und globale Variable gespeichert. Alternativ kann man die ergänzenden Schlüsselwörter weglassen (bei Einhaltung der Reihenfolge), jedoch wird die Leserlichkeit dadurch stark eingeschränkt. seil #s_nr #kn_1 #kn_2 1 $(s_vor)
4.4.4 Quellcode $ Definition der globalen Variablen
Legt eine globale Variable mit dem Namen breite und dem Wert 10 an.
#define breite #define länge
= 10 = 10
$ Breite der Membran [m] x-Richtung $ Länge der Membran [m] y-Richtung
#define n_breite #define n_länge
= 2 = 2
$ Anzahl der Elemente pro Meter $ Anzahl der Elemente pro Meter
#define delta_h
= 2.8
$ Höhenunterschied zwischen den Auflagerpunkten [m]
#define s_vor
= 200
$ Vorspannkraft in den Seilen [kN]
+prog aqua kopf Definition der Materialien und Querschnitte norm dc din coun 49 mat 1 E 1200E3/1 EY 600E3/1 OAL 90 stah 2 ST 52 ES 160000 quer 1 2 A 3.14E-4
Definiert ein Material 1 mit zwei E-Moduln, die durch den Streichwinkel OAL senkrecht zu einander gestellt werden.
$ Rundquerschnitt mit 2cm Durchmesser [m²]
ende
Legt einen Querschnitt 1 an, der das Material 2 benutzt und eine Querschnittsfläche von 3,14 cm2 hat.
+prog genf kopf Definition der Geometrie $ syst = Festlegung des Systems = RAUM = räumliche Struktur $ gdir = Richtung des Eigengewichts $ gdiv = Gruppendivisor (Elementnummer/Gruppendivisor = Gruppennummer) syst RAUM gdir negz gdiv 100000 $ ECHO = Steuerung der Ausgabe $ VOLL = Alle Optionen setzen $ NEIN = keine Ausgabe ECHO VOLL NEIN
Legt einen dreidimensionalen Raum an mit Eigengewichtsrichtung in negativer zRichtung und einem Gruppendivisor von 100000. 1/m2
n2
$ Ausgabe der Knotenwerte ja ECHO KNOT JA $ Ausgabe der Querschnitte ja ECHO QUER JA
1/m1 n1
$ Ausgabe der Materialwerte ja ECHO MAT JA let#n1 let#m1 let#n2 let#m2
$(delta_h) -$(delta_h)/$(breite) 0 $(delta_h)/$(breite)
Definiert aufgrund der globalen Variablen die beiden linearen Begrenzungsfunktionen zur Knotengenerierung.
$ Erzeugung der Knoten loop#c1 $(breite)*$(n_breite)+1 loop#c2 $(länge)*$(n_länge)+1 let#k_nr (#c1+1)*1000+#c2
Generiert die aktuelle Knotennummer.
let#x 1/$(n_breite)*#c1 let#y 1/$(n_länge)*#c2 Berechnet die aktuellen x- und y-Koordinaten des
31
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
let#h1 #m1*#x+#n1 let#h2 #m2*#x+#n2 let#n #h1 let#m (#h2-#h1)/($(länge))
Berechnet aufgrund der äußeren linearen Randfunktionen die aktuelle z-Koordinate.
let#z #m*#y+#n if (#x==0) if (#y==0) knot #k_nr #x #y #z KOOR KA FIX F elseif (#y==$(länge)) knot #k_nr #x #y #z KOOR KA FIX F
Hier folgen einige Bedingungsblöcke (ifelse-elseif-endif), die die Lagersituation der Knoten regeln. Treffen die Bedingungen nicht zu, wird kein Auflager gesetzt.
else knot #k_nr #x #y #z KOOR KA endif elseif (#x==$(breite)) if (#y==0) knot #k_nr #x #y #z KOOR KA FIX F elseif (#y==$(länge)) knot #k_nr #x #y #z KOOR KA FIX F else knot #k_nr #x #y #z KOOR KA endif else knot #k_nr #x #y #z KOOR KA endif endloop endloop $ GRUP = Gruppensteuerung $ NGR = Gruppennummer $ d = Dicke der Quadelemente $ NRA 2 = Nur Membrananteil, definiert lineares Membranelement GRUP NRG 0 d 0.0002 NRA 2 $ Erzeugung der Flächenelemente loop#c1 $(breite)*$(n_breite)
Definition einer Gruppe mit Gruppennummer 0 und einer Standarddicke von 0,2 mm unter Verwendung des Elementtyps 2 (Membranwirkung).
loop#c2 $(länge)*$(n_länge) let#k_1 let#k_2 let#k_3 let#k_4
(#c1+1)*1000+#c2 (#c1+1)*1000+#c2+1 (#c1+2)*1000+#c2+1 (#c1+2)*1000+#c2
let#q_nr (#c1+1)*1000+#c2 quad #q_nr #k_1 #k_2 #k_3 #k_4 MNR 1 NRA 2 KR XX endloop endloop $ Definition der Randseile loop#c $(breite)*$(n_breite)
Legt ein quad-Element an unter Verwendung der generierten Elementnummer und den zuvor definierten Knotennummern. Es kommt das Material 1 zur Anwendung, wobei nochmals ein Element mit Membranwirkung angelegt wird. KR legt die Richtung des lokalen Koordinatensystems, wobei XX dieses in x-Richtung des globalen Koordinatensystems dreht.
32
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
let#kn_1 1000+#c let#kn_2 1000+#c+1 let#s_nr 1000+#c seil #s_nr KA #kn_1 KE #kn_2 QNR 1 VOR $(s_vor) let#kn_1 ($(breite)*$(n_breite)+1)*1000+#c let#kn_2 ($(breite)*$(n_breite)+1)*1000+#c+1
Legt ein Seil mit der Querschnittsnummer 1 und einer initialen Vorspannung an.
let#s_nr 2000+#c seil #s_nr KA #kn_1 KE #kn_2 QNR 1 VOR $(s_vor) let#kn_1 (#c+1)*1000 let#kn_2 (#c+2)*1000 let#s_nr 3000+#c seil #s_nr KA #kn_1 KE #kn_2 QNR 1 VOR $(s_vor) let#kn_1 (#c+1)*1000+$(länge)*$(n_länge) let#kn_2 (#c+2)*1000+$(länge)*$(n_länge) let#s_nr 4000+#c seil #s_nr KA #kn_1 KE #kn_2 QNR 1 VOR $(s_vor) endloop ende +prog ase Kopf Aufbringen der Vorspannung
Stößt eine iterative Berechnung nach Theorie III. Ordnung an.
ECHO vers,reak,schn,nost NEIN $ globale Steuerwerte, Art der Berechnung, geometrisch nichtlineare Iteration (30 Schritte) syst prob th3 iter 30 $ Aufbringen der Vorspannung auf alle Elemente der Gruppe 0 grup 0 faks 1E-10 vorx 20 vory 20 $ Abspeichern der Ergebnisse unter LF 1 Alle Elemente der Gruppe 0 werden mit einer Steifigkeit von annähernd 0 versehen und dann lf 1 bez 'Vorspannung' ende
wird eine gleichmäßige Vorspannung von 20 kN/m aufgebracht Æ Formfindung.
+prog ase kopf Ausgleich der Restkräfte mit Faktor 1.0 ECHO vers,reak,schn,nost NEIN Die Ergebnisse aus Lastfall 1 syst prob th3 iter 30 PLF 1 werden übernommen. $ PLF = 1 = Aufsetzen auf dem LF 1 grup 0 faks 1 Die Elemente erhalten ihre vorgegebene lf 2 bez 'Ende Formfindung FAKS=1.0' Steifigkeit zurück. Die Form, die in LF 1 gefunden wurde, wird so überprüft. ende +prog ase Kopf Schneebelastung ECHO vers,reak,schn,nost NEIN $ globale Steuerwerte, Art der Berechnung, geometrisch nichtlineare Iteration (30 Schritte) $ Ergebnisse aus Lastfall 1 werden mit PLF übernommen syst prob th3 iter 30 PLF 2 lf 3 bez 'Schneelasten' flas alle 1 TYP pz P -0.75
Flächenbelastung auf alle Flächenelemente mit Inkrement 1 vom Typ in globaler z-Richtung und einem Lastwert von 0,75 kN/m2.
ende +prog ase Kopf Einzellast ECHO vers,reak,schn,nost NEIN $ globale Steuerwerte, Art der Berechnung, geometrisch nichtlineare Iteration (30 Schritte) $ Ergebnisse aus Lastfall 1 werden mit PLF übernommen syst prob th3 iter 30 PLF 2 lf 4 bez 'Einzellast'
33
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
let#f_1 let#f_2 let#f_3 let#f_4
Sofistik
$(breite)*$(n_breite)/2*1000+$(länge)*$(n_länge)/2-1 $(breite)*$(n_breite)/2*1000+$(länge)*$(n_länge)/2 ($(breite)*$(n_breite)/2+1)*1000+$(länge)*$(n_länge)/2-1 ($(breite)*$(n_breite)/2+1)*1000+$(länge)*$(n_länge)/2
flas #f_1 #f_2 1 TYP pz P -40 flas #f_3 #f_4 1 TYP pz P -40
Flächenbelastung auf die mittleren 4 quadElemente wiederum vom gleichen Typ wie oben mit einem Lastwert von 40 kN/m2.
ende
34
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.5 Tennishalle Pneumatische Tragwerke werden in Sofistik über die Eingabe einer lokal auf die Flächenelemente (quad-Elemente) ausgerichteten Flächenlast implementiert. Der Lastvektor wird nach jedem Iterationsschritt neu ausgerichtet. Möchte man also genaue Ergebnisse erreichen, kann man mit tol die Laststufe pro Iterationsschritt festlegen.
Bild 4-8: Pneumatisch gestützte Tennishalle
Beim Zuschnitt solch einer Fläche kommt es durch die doppelte Krümmung bei den Teilflächen zu randgekrümmten Polygonflächen. Für die Definition der Zuschnittslinien steht einem das Programmmodul TEXTILE zur Verfügung. Hier werden die Linien, die später dem Zuschnitt dienen, im Grundriß der Konstruktion (x-y-Ebene) definiert und später auf die verformte Struktur „projiziert“. D.h. die letztendliche Zuschnittslinie wird als Normale zur Fläche angelegt. Liegt die Linie genau unter dem Zenit der Konstruktion, ergibt sich eine gerade Zuschnittslinie, ist dies nicht der Fall, entsteht eine gekrümmte Zuschnittslinie.
Zuschnittslinien in der Grundrißebene
Bild 4-9: Projektion der Zuschnittslinien auf die Konstruktion
Wie im Bild 4-10 zu sehen ist, liegen die Zuschnittslinien nicht in der Flucht des quadNetzes. Nur die Linie, die den Zenit durchläuft, wurde einfach nach oben projiziert.
Bild 4-10: quad-Netz (hellbraun-gestrichelt) mit Zuschnittslinien (rot-durchgezogen)
35
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.5.1 Quellcode #define #define #define #define
laenge breite druck vorsp
= = = =
40 30 0.30 4.0
$ $ $ $
[m] [m] [kN/m²] [kN/m]
Definition der globalen Variablen zur Steuerung der Geometrie, der Vorspannung und des Innendruckes.
+prog genf urs:7 kopf Tennis-Lufthalle syst raum let#1 $(laenge)/2 knot nr x y=0 101 0.00*#1 102 0.04*#1 103 0.10*#1 Knoten die einen Rand beschreiben und sich an der 104 0.17*#1 globalen Variable für die Länge des Pneus orientieren. Die Knoten sind nicht gleich verteilt und werden in den 105 0.27*#1 späteren Ecken konzentriert. 106 0.40*#1 107 0.55*#1 Gleicher Rand nur von der anderen Seite. 108 0.70*#1 109 0.85*#1 110 1.00*#1 119 $(laenge)-0.00*#1 118 $(laenge)-0.04*#1 117 $(laenge)-0.10*#1 116 $(laenge)-0.17*#1 115 $(laenge)-0.27*#1 114 $(laenge)-0.40*#1 113 $(laenge)-0.55*#1 112 $(laenge)-0.70*#1 111 $(laenge)-0.85*#1 let#1 $(breite)/2 knot nr y x=0 101 0.00*#1 121 0.04*#1 Gleiche 141 0.10*#1 Definition 161 0.17*#1 wie in der 181 0.27*#1 Länge jetzt für den 201 0.40*#1 Rand in der 221 0.55*#1 Breite. 241 0.70*#1 261 0.85*#1 281 1.00*#1 461 $(breite)-0.00*#1 441 $(breite)-0.04*#1 421 $(breite)-0.10*#1 401 $(breite)-0.17*#1 381 $(breite)-0.27*#1 361 $(breite)-0.40*#1 341 $(breite)-0.55*#1 Bild 4-11: Knotennummern und quad-Netz 321 $(breite)-0.70*#1 Breitenrand von der anderen Seite 301 $(breite)-0.85*#1 $ mat 1 E 1.250E6 EY 0.90E6 G 0.040E6 mue 0.2 GAM 17.5 $ t 0.8 mm E*t= 1000 kN/m mat 1 E 400E3/0.8 EY 300E3/0.8 mue 0.25 G 10E3/0.8 $ OAL 0 $ t = 0.8 mm $ Steifigkeit bei at 0.8 mm Dicke mue 0.25 = 0.571/2.286 GRUP NRG 0 d 0.0008 NRA 2 $ NRA 2 = Nur Membraneanteil unra K1 101 K2 461 INC1 knot nr fix=f (101 119 1) (461 479 1) (101 461 20) (119 479 20) rand 1 bez Kante-1 rand von 101 bis rand 2 bez Kante-2 rand von 461 bis rand 3 bez Kante-3 rand von 101 bis rand 4 bez Kante-4 rand von 119 bis ende
20 K4 119 INC2 1 MNR 1
119 delt
1
479 delt
1
unra definiert ein ungleichmäßiges Netz, wobei nur zwei Ränder vorliegen müssen. K1 und K4 geben den Anfangs- bzw. Endpunkt eines Randes an und K2 den Startknoten für den zweiten Rand. INC1 legt das Inkremet zwischen jeder neu erzeugten Zwischenlinie fest, INC2 das Inkrement zwischen den einzelen Knotenauf einer Geraden.
461 delt 20 479 delt 20
+PROG WING urs:10 KOPF Strukturausgabe mit Knoten size DINA 0 m 0
36
Sofistik
BEOB farb farb farb SICH stru
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
TYP STAN 0 0 1 ACHS posz f2 4000 4000 4000 4000 4000 f3 1000 1000 1000 1000 1000 f5 2000 2000 2000 2000 2000 HIDD LINE NUME 0 NUMK KNR SCHR 1.0
ende
Ausgabe der Strukturgeometrie mit einem Beobrachtungspunkt beob aus, global P(0,0,1) und positiver z-Richtung. Danach werden die Farben für die einzelnen Strukturobjekte festgelegt. f3 legt beispielsweise die Farbe für die Knotennummern und gleichzeitig die Linienart usw. fest. stru gibt dann letztendlich die Struktur aus, wobei hier nur die Struktur selbst und die Knotennummern mit einer Schriftgröße von 1,0 cm dargestellt werden.
+prog ase urs:8 KOPF Formfindung ECHO syst grup lf 1
schn,nost,vers,reak NEIN prob thii iter 30 tol 10e-8 0 faks 1E-10 vorx $(vorsp) vory $(vorsp) $ Membran bez 'Formfindung Schritt 2' ; flas 1 9999 1 typ pz p -$(druck)
ende +prog ase urs:9 KOPF Ausgleich in xyz und Lastflächenänderung
Ansprechen der Elemente über die Gruppennummer, hier alle Gruppe 0, und entziehen der gegebenen Elementsteifigkeit. Gleichzeitiges Aufbauen der Vorspannung in der Memrban in x- und y-Richtung mit gleicher Größe. Außerdem wird hier gleich ein Innendruck in Größe der globalen Variablen druck aufgebaut. Zurückgeben der Steifigkeit.
ECHO schn,nost,vers,reak NEIN syst prob thii iter 30 PLF 1 tol 10e-8 lf 2 bez 'Ausgleich mit faks 1' ; flas 1 9999 1 typ pz p -$(druck) ende +PROG WING urs:10 KOPF size lp m 0 BEOB TYP STAN 5 7 -4 ACHS posz farb f5 2000 2000 2000 2000 2000 SICH HIDD LINE stru 0 0 lf 1 ; vers ja 1 ; stru 0 0 mfix 5 lf 2 ; vers ja 1 ; stru 0 0 mfix 5 ende
Ausgabe der Struktur selbst (stru 0 0) und der Verschiebungen aus den Lastfällen 1 und 2.
+prog ase urs:11 kopf Koordinaten-Update syst PLF 2 SPEI ja ende
Speichern der gefundenen Form aus dem Lastfall 2. Dieses System ist nun Grundlage für die weiteren Berechungen.
+PROG WING urs:12 KOPF Neues Ausgangssystem unverformt gezeichnet! size BEOB farb SICH quad lf 2 ende
lp m 0 TYP STAN 5 7 -4 ACHS posz f5 4000 4000 4000 4000 4000 HIDD LINE koor 1 ; quad hn
Ausgabe des neuen Ausgangssystems mit WinGraf.
+prog ase urs:13 KOPF Wind in x bei 1.0-facher Steifigkeit ECHO schn,nost,vers,reak NEIN $ P2=0: Membran kann keine Druckspannungen aufnehmen $ (P1 ist als Fliessgrenze für Geotextilien vorgesehen) nmat 1 memb P1 1 P2 0 syst prob thii iter 25 tol 0.001 nmat ja fmax 100 PLF 2 lf 11 bez 'Wind in x' ; flas 1 9999 1 typ pz p -$(druck) flas 1 9999 1 typ pxx p 0.5 ende +PROG WING urs:14 KOPF size lp m 0 BEOB TYP STAN 5 7 -4 ACHS farb f5 4000 4000 4000 4000 SICH HIDD LINE lf 2 ; vers ja 1 ; stru 0 lf 11 ; vers ja 1 ; stru 0
37
posz 4000 0 mfix 5 0 mfix 5
Innendruck (lokal in z-Richtung) und Windbelastung (global in x-Richtung) und abspeichern der Ergebnisse im LF 11.
Ausgabe des Ausgangssystems und der windverformten Konstruktion, einmal perspektivisch und dann LF 11 nochmals von der Seite.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
BEOB TYP STAN 0 1 0 ACHS posz lf 11 ; vers ja 1 ; stru 0 0 mfix 5 ende +prog textile urs:15 kopf Definition der Zuschnittslinien fuer WING: $ Die Zuschnittslinien werden standardmäßig im Grundriß definiert: $ Hier Linien jeweils von y=0 bis y=50 m bei x=: let#x let#x let#x let#x let#x let#x let#x let#x let#x
6.00 10.00 16.00 20.00 23.00 27.50 31.00 35.00 38.00
; ; ; ; ; ; ; ; ;
line line line line line line line line line
XA XA XA XA XA XA XA XA XA
#x #x #x #x #x #x #x #x #x
0 0 0 0 0 0 0 0 0
XE XE XE XE XE XE XE XE XE
#x #x #x #x #x #x #x #x #x
50 50 50 50 50 50 50 50 50
Festlegen der Zuschnittslinien in der x-yEbene (hier mit sehr variablen Abstand, nur um die später erzeugten Zuschnittsflächen vergleichen zu können).
ende
+Prog WING urs:16 kopf Berechnung der geodätischen Linien und der 3D-Zuschnittsflächen $ Wichtig: der Formfindungslastfall - hier 2 - ist $ als verschobene Struktur einzustellen, da die geodätischen Linien $ für diese Geometrie berechnet werden sollen! $ $ Interaktiver Test geodätische Linien: WINGRAF Test 3,4 size lp m 0 beob stan 0 0 -1 posy $ (Für die Projektion der Zuschnittslinien) lf
2 ; vers ja 1 ; stru 0 0
$ Berechnung der Zuschnittsflächen : ZUSF ZUSF zusf stößt die Berechnung der Zuschnittsflächen an. $ Darstellung der Zuschnittsflächen: Die weiteren Progammzeilen steuern wieder nur die grafische Ausgabe.
STRU NUME ZUSC NUMK QUAD FILL JA $ 3D-Darstellung der geodätischen Linien BEOB TYP STAN 5 7 -4 ACHS posz stru 0 0 $ 3D-Darstellung der Zuschnittsflächen: STRU NUME ZUSC NUMK QUAD FILL JA ende +prog textile urs:17 kopf Berechnung des Zuschnittes - Abwicklung in die Ebene + Kompensation cutt
$ Zuschnittsberechnung mit den 3D-Zuschnittsflächen aus WING
$Realistische Kompensation für das Herausrechnen der lokalen Spannungen in Prozent: comp DE1 - 2.0 $ Kettrichtung cutt beginnt dann die eigentliche Zuschnittsberechnung, comp DE2 - 5.0 $ Schussrichtung wobei hier in Kett- und Schussrichtung Kompensation von 2 bzw. 5 % angesetzt wurde.
ende
eine
+PROG WING urs:18 $ Darstellung der zugeschnittenen Bahnen KOPF Gestrichelt A=gespannte Fläche, gefüllt eA=entspannte Fläche size lp m 0 BEOB TYP STAN 0 0 -1 ACHS posy $ $ 2D-Zuschnittsflächen (A=Fläche, eA=entspannte Fläche): STRU STRU STRU STRU
NUME NUME NUME NUME
ZS2K ZS2K ZS2S ZS2R
FILL FILL FILL FILL
FLAE nein NEIN NEIN
DARS DARS DARS DARS
DSCH DSCH DSCH DSCH
UNIT UNIT UNIT UNIT
STAN STAN STAN STAN
SCHR SCHR SCHR SCHR
0.33 0.33 0.33 0.33
$ $ $ $
Reine grafische Ausgabesteurung der Zuschnittsflächen mit Bemaßung der Flächeninhalte und Schnittkanten.
mit Füllflächen Struktur mit Elementlinien mit Kettrichtung
ende +prog textile urs:19 kopf Koordinatenliste der Zuschnittsflächen
38
Sofistik
SEIT NZEI 9999 echo LIST voll ende
39
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.6 Hochpunktmembran Wie findet man die Form eines Zeltes? Man legt eine Seifenhaut auf die Erde und nimmt den Mittelpunkt und zieht ihn in die Höhe. Genauso gehen wir mit Sofistik an die Sache ran. Außerdem soll noch das Programmmodul textile vorgestellt werden und die Ausgabe mit wing.
5m
12 m
Bild 4-12: Membran mit Hochpunkt
Die Membran wird durch eine quadratische Grundfläche festgehalten und in der Mitte befindet sich ein Kreisring. Die Geometrie wird in der Ebene erzeugt und danach der Mittelpunkt, an den der Innenring gekoppelt ist, nach oben bewegt (Auflagerverschiebung). Die weiteren Erläuterungen zur Vorgehensweise geschehen anhand des Quellcodes.
4.6.1 Quellcode #define #define #define #define #define #define #define #define
r_innen a_außen a_poly a_ring delta_h vr1 vtvr a_zuschnitt
= = = = = = = =
0.5 12 40 40 5 10 0.3 18
$ $ $ $ $ $ $ $
+prog aqua -e urs:1 KOPF Zeltdach mit einem Hochpunkt kopf Materialien und Querschnitte
Radius des Innenringes [m] Kantenlänge des Begrenzungsquadrates [m] Anzahl der Polygonpunkte eines Ringes Anzahl der Unterringe Höhenunterschied zwischen Außen- und Innenring [m] Grad der Vorspannung [kN/m²] Verhältnis tangential/radial Vorspannung Anzahl der Zuschnittflächen Definition der globalen Variablen zur Steuerung der Geometrie, der Vorspannung und der Zuschnittsflächen.
mat 1 E 1200E3/1 EY 600E3/1 OAL 90
Definition des Membranmaterials mit E-Modul in Kett- und Schussrichtung und einer senkrechten Ausrichtung dieser.
ende +prog GENF -e urs:2 KOPF Zeltdach mit einem Hochpunkt ECHO VOLL NEIN; ECHO QUER JA; ECHO MAT JA SYST raum gdir negz gdiv 1000 $ Referenzknoten knot 1 0 0 2 FIX f KOOR KA let#kante $(a_außen)/2
Festlegen des Berechnungsraumes mit raum als 3D System und Eigengewicht in negativer z-Richtung und einem Gruppendivisor von 1000. Der Gruppendivisor steuert die Gruppenzugehörigkeit jedes einzelnen Elementes. Dabei wird die Elementnummer durch den Gruppendivisor geteilt und stellt sich als ganzzahliges Ergebnis dar.
Legt den Referenzknoten an, an dem später der Innenring gekoppelt wird und somit mit verschoben wird.
loop#c1 $(a_poly)
40
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
$ // $ $ Bestimmung der Anfangs- und Endpunkte eines jeden Strahls $ $ // let#c_winkel 360/$(a_poly)*#c1 let#a_p_x cos(#c_winkel)*$(r_innen) let#a_p_y sin(#c_winkel)*$(r_innen)
$ Anfangspunkt x-Koordinate $ Anfangspunkt y-Koordinate
if (#c_winkel 45) if (#c_winkel 135) if (#c_winkel 225) if (#c_winkel 315) let#e_p_x #kante let#e_p_y tan(#c_winkel)*#kante endif loop#c2 $(a_ring)+1
41
$ Endpunkt x-Koordinate $ Endpunkt y-Koordinate
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
let#k_nr (#c1+1)*1000+#c2 let#delta_x (#e_p_x-#a_p_x)/$(a_ring) let#delta_y (#e_p_y-#a_p_y)/$(a_ring) let#x #a_p_x+#c2*#delta_x let#y #a_p_y+#c2*#delta_y knot #k_nr #x #y 2 KOOR KA Hier wird jetzt der Knoten angelegt. Davor wurden über die geometrischen Randbedingungen der Anfangs- und Endpunkt der Strecke festgelegt. Die ganze Struktur wird um 2 m in z-Richtung nach oben versetzt, um das globale Koordinatensystem besser zu sehen.
endloop endloop
GRUP NRG 0 d 0.0002 MNR 1 NRA 2 $ GRUP - Gruppemsteuerung: NRG = Gruppennummer $ Gruppennummer eines Elements = Elementnummer / Gruppendivisor $ NRA 2 = Nur Membrananteil definiert lineares Membranelement loop#c1 $(a_poly) Start der Generierung der quad-Elemente (Umlaufsinn beachten).
loop#c2 $(a_ring) let#q_nr (#c1+1)*1000+#c2 let#k1 let#k2 let#k3 let#k4
(#c1+1)*1000+#c2 (#c1+1)*1000+#c2+1 (#c1+2)*1000+#c2 (#c1+2)*1000+#c2+1
if (#c1 == $(a_poly)-1) let#k1 let#k2 let#k3 let#k4
(#c1+1)*1000+#c2 (#c1+1)*1000+#c2+1 1000+#c2 1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 else let#k1 let#k2 let#k3 let#k4
(#c1+1)*1000+#c2 (#c1+1)*1000+#c2+1 (#c1+2)*1000+#c2 (#c1+2)*1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 endif endloop
Diese Struktur wird erzeugt, farbig nach Gruppen sortiert und ein quad-Element hat z.B. folgende Eckpunkte 1000, 1001, 2001, 2000
endloop
$ Kopplung der Knoten des Innenringes mit dem Referenzknoten 1 loop#c1 $(a_poly) let#k_nr (#c1+1)*1000 knot #k_nr fix KF KREF 1 Kopplung der ersten Knoten einer jeden Strecke s.o. mit dem Referenzknoten 1 als biegesteife Verbindung.
endloop $ Lagerung des äußeren Randes loop#c1 $(a_poly) let#k_nr (#c1+1)*1000+$(a_ring) knot #k_nr fix f endloop
Fixieren des äußeren Knotenrandes mit Festlagern.
ende
+prog ase urs:3 kopf Hochpunkteingabe & Vorspannung
42
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
ECHO vers,reak,schn,nost nein nmat 1 memb 1 1 syst prob thii iter 30 loop#c $(a_poly) grup (#c+1) faks 1e-10 Schleife über alle Gruppen zur Steifigkeitsminderung Æ Formfindung.
endloop
$ vr1 - vorspannung radial $ vtvr - Vorspannungsverhältnis tangential / radial hoch 0 0 vr1 $(vr1) vtvr $(vtvr)
Definition der radialen Vorspannung und dem prozentualen Anteil in Tangentialrichtung.
lf 1 egz 1 bez 'Hoch VTVR=$(VTVR)' $ Knotenlast am Knoten 1, Auflagerverschiebung um delta_h kl 1 wz $(delta_h) Auflagerverschiebung des Knoten 1 mit seinen an ihn gekoppelten Knoten in z-Richtung um den Wert $(delta_h).
ende +prog ase urs:4 kopf Ausgleich mit AFAKS = 1.0 ECHO vers,reak,schn,nost nein syst prob thii iter 30 PLF 1
Die ursprüngliche Steifigkeit der Membran wird wieder hergestellt mit einer Schleife über alle Gruppen, wobei die Ergebnisse also auch die Verschiebungen aus Lastfall 1 übernommen werden.
loop#c $(a_poly) grup (#c+1) faks 1 endloop
lf 2 egz 1 bez 'Hoch VTVR = $(VTVR) FAKS 1.0'
Definition der Blattgröße mit DIN A1 und mit m=0 wird dies formatfüllend genutzt.
ende +prog WING KOPF size DINA 1 m 0 BEOB TYP STAN 10 farb f5 2000 2000 SICH HIDD LINE stru 0 0 lf 1 ; vers ja 1 lf 2 ; vers ja 1 ende
Festlegen des Bildausgabe.
10 3 ACHS posz 2000 2000 2000
Beobachtungspunktes
für
die
Legt die Farbwerte für die Ausgabe fest. Steuert die Ausgabe von nicht sichtbaren Linien.
; stru 0 0 mfix 5 ; stru 0 0 mfix 5
usw. Es wird der LF 2 angesprochen und mit vers die verschobene Struktur (ja Æ Knotenstruktur) (1 Æ Vergrößerungsfaktor). stru steuert die Art der Symbole für z.B. Auflager.
+prog ase urs:51 kopf Koordinaten-Update syst PLF 2 SPEI ja ende
Mit WING können Ausgaben in die Ausgabedatei gesteuert werden (einsehbar mit z.B. Ursula).
Hier wird die gefundene Geometrie aus dem LF 2 gespeichert und für die weiteren Berechnungen als Ausgangssystem verwendet.
+prog ase urs:53 KOPF Wind in x bei 1.0-facher Steifigkeit ECHO schn,nost,vers,reak NEIN nmat 1 memb P1 1 P2 0 $ P2=0: Membran kann keine Druckspannungen aufnehmen $ (P1 ist als Fliessgrenze für Geotextilien vorgesehen) syst prob thii iter 25 tol 0.001 nmat ja fmax 100 PLF 2 lf 11 bez 'Wind in x' ; flas alle 1 typ pxp p 0.5 ende +prog WING urs:54 KOPF size lp m 0 BEOB TYP STAN 5 7 -4 ACHS posz farb f5 4000 4000 4000 4000 4000 SICH HIDD LINE lf 2 ; vers ja 1 ; stru 0 0 mfix 5
43
Von vorne wie immer Æ danach wird mit tol die Toleranz der Iteration festgelegt. nmat mit ja steuert die Berücksichtigung der Fließgrenze für Membranen. fmax steuert das Konvergenzverhaltens des der Berechnung zugrundeliegenden Iterationsverfahrens (Crisfield).
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
lf 11 ; vers ja 1 ; stru 0 0 mfix 5 BEOB TYP STAN 0 1 0 ACHS posz lf 11 ; vers ja 1 ; stru 0 0 mfix 5 ende +prog textile urs:55 kopf Definition der Zuschnittslinien für WING: $ Die Zuschnittslinien werden standardmäßig im Grundriß definiert: let#kante $(a_außen)/2 $ Ausgangspunkt let#x1 0 let#y1 0
Ab hier werden die Anfangs- und Endpunkte der Zuschnittslinien definiert. (also alles Geometrie)
loop#c $(a_zuschnitt) let#c_winkel 360/$(a_zuschnitt)*#c $ Endpunkt if (#c_winkel 45) if (#c_winkel 135) if (#c_winkel 225) if (#c_winkel 315) let#x2 #kante let#y2 tan(#c_winkel)*#kante
$ Endpunkt x-Koordinate $ Endpunkt y-Koordinate
endif $ Setzen der Zuschnittslinie in der Grundrissfläche Erst hier wird die eigentliche Linie gesetzt, die im Grundriss definiert wird.
line XA #x1 YA #y1 XE #x2 YE #y2 endloop
+Prog WING urs:56 kopf Berechnung der geodätischen Linien und der 3D-Zuschnittsflächen $ Wichtig: der Formfindungslastfall - hier 2 - ist $ als verschobene Struktur einzustellen, da die geodätischen Linien $ für diese Geometrie berechnet werden sollen! size lp m 0 beob stan 0 0 -1 posy
$ (für die Projektion der Zuschnittslinien)
lf 2 ; vers ja 1 ; stru 0 0 $ Berechnung der Zuschnittsflächen : ZUSF ZUSF $ Darstellung der Zuschnittsflächen: STRU NUME ZUSC NUMK QUAD FILL JA $ 3D-Darstellung der geodätischen Linien BEOB TYP STAN 5 7 3 ACHS posz stru 0 0 $ 3D-Darstellung der Zuschnittsflächen: STRU NUME ZUSC NUMK QUAD FILL JA
Hier werden die durch die Zuschnittslinien definierten Zuschnittsflächen ermittelt. Dieser Befehl benötigt keine weiteren Optionen, da er per Default alle Linien mit einbezieht.
Dieser Teil dient wiederum nur der Darstellung der gefundenen Zuschnittsflächen.
ende +prog textile urs:57 kopf Berechnung des Zuschnittes - Abwicklung in die Ebene + Kompensation cutt
$ Zuschnittsberechnung mit den 3D-Zuschnittsflächen aus WING
$ Realistische Kompensation wird prozentual auf die Spannungen des Lastfalls angerechnet: comp DE1 - 2.0 $ Prozent der Kompensation (Kettrichtung) comp DE2 - 5.0 $ Prozent der Kompensation (Schussrichtung) ende +prog WING $ Darstellung der zugeschnittenen Bahnen - Einzelfeld $ Gestrichelt A=gespannte Fläche, gefüllt eA=entspannte Fläche KOPF Zuschnittsflächen - alle size lp m 0 BEOB TYP STAN 0 0 -1 ACHS posy $ $ 2D-Zuschnittsflächen (A=Fläche, eA=entspannte Fläche) : STRU NUME ZS2K FILL FLAE DARS DSCH UNIT 3 SCHR 0.2 $ mit Füllflächen STRU NUME ZS2K FILL NEIN DARS DSCH UNIT 3 SCHR 0.2 $ Struktur STRU NUME ZS2S FILL NEIN DARS DSCH UNIT 3 SCHR 0.2 $ mit Elementlinien STRU NUME ZS2R FILL NEIN DARS DSCH UNIT 3 SCHR 0.2 $ mit Kettrichtung
Steuerung der Ausgabe, wobei alle Zuschnittsflächen in einem Bild dargestellt werden. Alle Teile sind komplett vermaßt sowohl mit als auch ohne Kompensation.
ende +prog WING $ Darstellung der zugeschnittenen Bahnen - Einzelfeld $ Gestrichelt A=gespannte Fläche, gefüllt eA=entspannte Fläche KOPF Zuschnittsflächen - einzeln size lp m 0 BEOB TYP STAN 0 0 -1 ACHS posy $ $ 2D-Zuschnittsflächen (A=Fläche, eA=entspannte Fläche) :
Diese Schleife gibt jede einzelne Fläche für sich aus.
loop#nr $(a_zuschnitt) STRU STRU STRU STRU
45
ZS2K ZS2K ZS2S ZS2R
FILL FILL FILL FILL
FLAE nein NEIN NEIN
DARS DARS DARS DARS
DSCH DSCH DSCH DSCH
UNIT UNIT UNIT UNIT
3 3 3 3
SCHR SCHR SCHR SCHR
0.2 0.2 0.2 0.2
von von von von
#nr+1 #nr+1 #nr+1 #nr+1
bis bis bis bis
#nr+1 #nr+1 #nr+1 #nr+1
$ $ $ $
mit Füllflächen Struktur mit Elementlinien mit Kettrichtung
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
endloop ende +prog textile kopf Koordinatenliste der Zuschnittsflächen SEIT NZEI 9999 echo LIST voll
Komplette Ausgabe der Knotenliste.
ende
46
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.7 Traglufthalle Da jetzt alle Grundlagen klar sind, soll jetzt durch das dieses Beispiel die Formfindung veranschaulicht werden. Diese wird in Abhängigkeit von geometrischen und statischen Randbedingungen variiert. Dazu müssen nur die globalen Variablen am Kopf der Datei verändert werden. Die einzelnen Werte für die verschiedenen Formen sind der Tabelle zu entnehmen. Dabei wird das zuoberst stehende System als Ausgangssystem betrachtet und die jeweiligen Wertänderungen in den darunterliegenden Systemen in der Tabelle markiert. Variablenname
Wert
Form
Ausgangssystem mit alleiniger Definition der Hochpunkte (nur z-Richtung) und einer radialen und dazugehörigen tangentialen Vorspannung r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 2 8 0.0001 25 0.3 0.0001 10 0.0001
vierfache Vorspannung r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 2 8 0.0001 100 0.3 0.0001 10 0.0001
Zusätzliche Verschiebung der Hochpunkte in y-Richtung (gegensinnig) r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
47
2 20 40 40 2 8 2 25 0.3 0.0001 10 0.0001
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
mit Innendruck von 0,8 kN/m r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
Sofistik
2
2 20 40 40 2 8 0.0001 25 0.3 0.8 10 0.0001 2
mit Innendruck von 0,8 kN/m und zehnfacher Seilvorspannung r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 2 8 0.0001 25 0.3 0.8 100 0.0001
geringere Hochpunktanhebung, y-Verschiebung des Hochpunktes, Innendruck, Seilvorspannung r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 2 3 3 25 0.3 0.8 100 0.0001
geringere radiale und veränderte tangentiale Vorspannung, Hochpunkt anders verschoben r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 2 7 3.5 10 0.4 0.0001 10 0.0001
3 Felder und Außenfelder Hochpunktverschiebung auch in y-Richtung r_innen a_außen a_poly a_ring a_blöcke delta_h delta_y vr1 vtvr p_innen s_vor wind_y
2 20 40 40 3 12 2 40 0.3 0.0001 10 0.0001
48
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.7.1 Quellcode #define #define #define #define #define
r_innen a_außen a_poly a_ring a_blöcke
= = = = =
2 20 40 40 2
$ $ $ $ $
Radius des Innenringes [m] Kantenlänge des Begrenzungsquadrates [m] Anzahl der Polygonpunkte eines Ringes Anzahl der Unterringe Anzahl der Blöcke
#define delta_h #define delta_y
= 8 = 0.0001
$ Höhenunterschied zwischen Außen- und Innenring [m] $ Hochpunkte des ersten und letzten Feldes werden gegensinnig $ verschoben [m]
#define vr1 #define vtvr
= 10 = 0.3
$ Grad der radialen Vorspannung [kN/m²] $ Verhältnis tangential/radial Vorspannung
#define p_innen #define s_vor #define wind_y
= 0.0001 = 10 = 0.0001
$ Innendruck der Halle $ Vorspannung im Seil [kN] $ Wind in y-Richtung [kN/m²]
+prog aqua -e urs:1 KOPF Zeltdach mit einem Hochpunkt kopf Materialien und Querschnitte
Globale Variablen zur Steuerung der Geometrie und der statischen Randbedingungen.
norm DIN 18800 mat 1 E 1200E3/1 EY 600E3/1 OAL 90 stah 2 ST 52 ES 160000 quer 1 2 A 0.8E-4
Definition der Materialien und eines Rundquerschnittes (Seil).
$ Rundquerschnitt mit 2cm Durchmesser
ende +PROG GENF -e urs:2 KOPF Traglufthalle mit Dachöffnung ECHO VOLL NEIN; ECHO QUER JA; ECHO MAT JA; ECHO KNOT JA; ECHO SEIL JA; ECHO STAB JA; ECHO FEDE JA SYST raum gdir negz gdiv 1000 $ Referenzknoten loop#c3 $(a_blöcke) knot #c3+1 0 #c3*$(a_außen) 2 FIX f KOOR KA endloop
Definition der Referenzknoten, die später für die Verschiebung durch die Definition der Hochpunkte verwendet werden.
let#kante $(a_außen)/2 let#z 2 loop#c3 $(a_blöcke) loop#c1 $(a_poly)
Dieser ganze Block entspricht der Eingabe wie im vorherigen Beispiel, nur das mehrere dieser Blöcke aneinander gesetzt werden.
$ // $ $ Bestimmung der Anfangs- und Endpunkte eines jeden Strahls $ $ // let#c_winkel 360/$(a_poly)*#c1 let#a_p_x cos(#c_winkel)*$(r_innen) let#a_p_y sin(#c_winkel)*$(r_innen)
$ Anfangspunkt x-Koordinate $ Anfangspunkt y-Koordinate
if (#c_winkel 45) if (#c_winkel 135) if (#c_winkel 225) if (#c_winkel 315) let#e_p_x #kante let#e_p_y tan(#c_winkel)*#kante
$ Endpunkt x-Koordinate $ Endpunkt y-Koordinate
endif loop#c2 $(a_ring)+1 let#k_nr #c3*100000+(#c1+1)*1000+#c2 let#delta_x (#e_p_x-#a_p_x)/$(a_ring) let#delta_y (#e_p_y-#a_p_y)/$(a_ring) let#x #a_p_x+#c2*#delta_x let#y #a_p_y+#c2*#delta_y+#c3*$(a_außen) if (#k_nr == (#c1+1)*1000+$(a_ring)+#c3*100000) if (MOD(#y+$(a_außen)/2,$(a_außen)/2) 0) knot #k_nr #x #y #z KOOR KA FIX F else if (#y+$(a_außen)/2 == 0) knot #k_nr #x #y #z KOOR KA FIX F elseif (#x == $(a_außen)/2) knot #k_nr #x #y #z KOOR KA FIX F
50
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
elseif (#x == -$(a_außen)/2) knot #k_nr #x #y #z KOOR KA FIX F elseif (#y > $(a_außen)*($(a_blöcke)-1)) knot #k_nr #x #y #z KOOR KA FIX F else knot #k_nr #x #y #z KOOR KA endif endif else knot #k_nr #x #y #z KOOR KA endif endloop endloop endloop GRUP NRG 0 d 0.0002 MNR 1 NRA 2 $ GRUP - Gruppemsteuerung: NRG = Gruppennummer $ Gruppennummer eines Elements = Elementnummer / Gruppendivisor $ NRA 2 = Nur Membrananteil definiert lineares Membranelement loop#c3 $(a_blöcke) Hier werden wieder die quad-Elemente definiert. Dabei muss darauf geachtet werden, welche Elemente mit welchen verbunden werden. Der Versuch quad-Elemente mit Kopplungen zu verbinden ist nicht möglich, da Kopplungen keine Theorie II. oder III. Ordnung zulassen.
loop#c1 $(a_poly) loop#c2 $(a_ring)
let#q_nr #c3*100000+(#c1+1)*1000+#c2 let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 #c3*100000+(#c1+1)*1000+#c2+1 #c3*100000+(#c1+2)*1000+#c2 #c3*100000+(#c1+2)*1000+#c2+1
if (#c1 == $(a_poly)-1) let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 #c3*100000+(#c1+1)*1000+#c2+1 #c3*100000+1000+#c2 #c3*100000+1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 else let#q_c 0 if (#c3 > 0) loop#c4 $(a_poly)/4 if (#q_nr == #c3*100000+($(a_poly)/4*3-$(a_poly)/8+1+#c4)*1000+$(a_ring)-1) let#q_c 1 endif endloop endif if (#q_c == 1) let#k1 #c3*100000+(#c1+1)*1000+#c2 let#k2 #c3*100000+(#c1+2)*1000+#c2
51
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
let#k3 (#c3-1)*100000+($(a_poly)-#c1+1)*1000+#c2+1 let#k4 (#c3-1)*100000+($(a_poly)-#c1)*1000+#c2+1 quad #q_nr #k1 #k2 #k4 #k3 KR 1 else if (#c3 > 0) if (#q_nr == #c3*100000+($(a_poly)/4*3-$(a_poly)/8)*1000+$(a_ring)-1) let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 #c3*100000+(#c1+1)*1000+#c2+1 #c3*100000+(#c1+2)*1000+#c2 (#c3-1)*100000+($(a_poly)-#c1)*1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 elseif (#q_nr == #c3*100000+($(a_poly)-$(a_poly)/8+1)*1000+$(a_ring)-1) let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 (#c3-1)*100000+($(a_poly)-#c1+1)*1000+#c2+1 #c3*100000+(#c1+2)*1000+#c2 #c3*100000+(#c1+2)*1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 else let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 #c3*100000+(#c1+1)*1000+#c2+1 #c3*100000+(#c1+2)*1000+#c2 #c3*100000+(#c1+2)*1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 endif else let#k1 let#k2 let#k3 let#k4
#c3*100000+(#c1+1)*1000+#c2 #c3*100000+(#c1+1)*1000+#c2+1 #c3*100000+(#c1+2)*1000+#c2 #c3*100000+(#c1+2)*1000+#c2+1
quad #q_nr #k1 #k2 #k4 #k3 KR 1 endif endif endif endloop endloop endloop $ Definition der Seile loop#c3 $(a_blöcke)-1
Zur Erhöhung der Krümmung zwischen den Hochpunkten wurde ein Seil eingebaut, das hier angelegt wird und mit einer Vorspannung, in Höhe der in der globalen Variablen $(s_vor) gespeicherten Zahl, versehen wird.
loop#c1 $(a_poly)/4 let#s_nr (#c3+1)*1000+#c1+300000 let#k1 ($(a_poly)/4-$(a_poly)/8+1+#c1)*1000+$(a_ring)+#c3*100000 let#k2 ($(a_poly)/4-$(a_poly)/8+2+#c1)*1000+$(a_ring)+#c3*100000 seil #s_nr KA #k1 KE #k2 QNR 1 VOR $(s_vor) endloop endloop $ Kopplung der Knoten des Innenringes mit dem Referenzknoten loop#c3 $(a_blöcke) Bei der späteren Hochpunktdefinition wird nur der zentrale Referenzpunkt definiert, die umliegenden Knoten des Innenringes werden hier an den jeweiligen Referenzpunkt gekoppelt. Hier ist eine Kopplung zulässig, da hier im Grunde nur Auflager definiert werden.
52
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
loop#c1 $(a_poly) let#k_nr #c3*100000+(#c1+1)*1000 knot #k_nr fix KF KREF #c3+1 endloop endloop ende +prog ase urs:3 kopf Hochpunkteingabe & Vorspannung ECHO vers,reak,schn,nost nein echo LAST ja nmat 1 memb 1 1 syst prob th3 iter 30 loop#c3 $(a_blöcke) loop#c1 $(a_poly) grup #c3*100+(#c1+1) faks 1e-10 endloop endloop loop#c3 $(a_blöcke) grup 301+#c3 faks 0.000001 endloop $ vr1 - vorspannung radial $ vtvr - Vorspannungsverhältnis tangential / radial loop#c3 $(a_blöcke) hoch 0 #c3*$(a_außen) vr1 $(vr1) vtvr $(vtvr) endloop lf 1 egz 1 bez 'Hoch VTVR=$(VTVR) - Formfindung' $ Knotenlast am Knoten 1, Auflagerverschiebung um delta_h loop#c3 $(a_blöcke) kl #c3+1 wz $(delta_h) if ($(a_blöcke) > 1) if (#c3 == 0) kl #c3+1 wy -$(delta_y) endif if (#c3 == $(a_blöcke)-1) kl #c3+1 wy $(delta_y) endif endif endloop flas alle 1 typ pz p -$(p_innen) ende +prog ase urs:4 kopf Hochpunkteingabe & Vorspannung ECHO vers,reak,schn,nost nein echo LAST ja
53
Berechnung der Form für die geometrischen und statischen Randbedingungen. Dabei werden alle Gruppen, in denen Membran- und Seilelemente zusammengefasst sind mit keiner (sehr kleiner) Steifigkeit versehen. Danach werden die Hochpunkte definiert und eine radiale Vorspannung mit einer prozentual zugehörigen tangentialen Vorspannung aufgebracht. Dann werden die Hochpunkte in ihrer Lage verschoben. Zuletzt werden alle quad-Elemente mit einer lokalen in zRichtung wirkenden Flächenlast versehen, wobei der Lastvektor bei jedem Iterationsschritt neu ausgerichtet wird.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
nmat 1 memb 1 1
Sofistik
Gleicher Schritt wie eben, nur werden die Membran- und Seilelemente wieder mit Steifigkeit versehen.
syst prob th3 iter 30 PLF 1 loop#c3 $(a_blöcke) loop#c1 $(a_poly) grup #c3*100+(#c1+1) faks 1 endloop endloop loop#c3 $(a_blöcke) grup 301+#c3 faks 1
endloop lf 2 egz 1 bez 'Hoch VTVR=$(VTVR) mit FAKS 1.0' flas alle 1 typ pz p -$(p_innen) ende +prog ase urs:5 kopf Wind in y-Richtung ECHO vers,reak,schn,nost nein echo LAST ja syst prob th3 iter 30 PLF 2 lf 3 egz 1 bez 'Windbelastung' flas alle 1 typ pxp p $(wind_y) flas alle 1 typ pz p -$(p_innen)
Windbelastung als global in x-Richtung wirkende Flächenbelastung.
ende
54
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
4.8 Hängebrücke Eine Formfindung kann man auch an anderen Konstruktionen durchführen. Hier soll diese an einer Hängebrücke demonstriert werden. Dabei wird die Brücke, wie in Bild 4-13 dargestellt, implementiert. D.h. die Fahrbahn wird über eine Parabelgleichung angelegt und die Seile jeweils über eine lineare Gleichung (s. Quellcode).
Bild 4-13: Ausgangssystem
Bild 4-14: System nach Formfindung
Im Zuge der Formfindung werden die Trag- und Hängerseile mit unterschiedlichen Steifigkeiten (jeweilige Abminderung der ursprünglichen Steifigkeit) versehen und einer Vorspannung ausgesetzt. Danach erhalten die Seile ihre ursprüngliche Steifigkeit wieder und das System wird in der gefundenen Geometrie gespeichert. Dieses gefundene Ausgangssystem ist dann die Grundlage für die weitere statische Untersuchung. Einmal wird das System seinem Eigengewicht ausgesetzt und im zweiten Schritt eine Verkehrslast von 5,0 kN/m2 in den abgebildeten Bereichen aufgebracht.
Bild 4-15: ungünstige Laststellung
55
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
4.8.1 Quellcode #define #define #define #define #define #define #define
b_brücke l_teile f_brücke x_p z_p_u z_p_o p_teil
#define a_seil #define s_vor #define s_vor_h
= = = = = = =
10 100 5 50 -5 40 40
= 8 = 20 = 20
$ $ $ $ $ $ $
Breite der Brücke [m] Anzahl der Brückensegmente in Brückenlängsrichtung Stich der Brückenfahrbahn [m] delta x des Pylons zum Brückenanfang bzw. -ende [m] z-Koordinate des unteren Pylonpunktes [m] z-Koordinate des oberen Pylonpunktes [m] Teilsegmente des Pylons
$ Abstand des Seiles von der Nullachse [m] $ Vorspannung in den Seilen [kN] $ Vorspannung in den Seilen [kN]
+prog aqua -e urs:1 KOPF Brücke mit Flügeln kopf Materialien und Querschnitte norm DIN 1045-1 mat 1 E 1200E3/1 EY 600E3/1 OAL 90 stah 2 ST 52 ES 160000 stah 3 ST 52 ES 210000 beto 4 C 40 bez 'Beton C 40/50' stah 5 bst 500sa bez 'Betonstahl' quer 1 2 A 3.14E-2 quer 4 2 A 3.14E-2
$ Rundquerschnitt mit 20cm Durchmesser (Tragseil) $ Rundquerschnitt mit 2cm Durchmesser (Hänger)
rohr 3 d 1000 t 40 mnr 3 bez 'Pylonquerschnitt' ende +PROG GENF -e urs:2 KOPF Geometrie der Knoten und Stäbe ECHO VOLL NEIN; ECHO QUER JA; ECHO MAT JA; ECHO KNOT JA; ECHO SEIL JA; ECHO STAB JA; ECHO FEDE JA SYST raum gdir negz gdiv 1000 Hier wird wieder der 3D-Berechnungsraum erzeugt mit let#b $(f_brücke)*4/$(l_brücke) let#a -#b/$(l_brücke)
Eigengewicht in negativer z-Richtung und einem Gruppendivisor von 1000. Die Elemente werden genau in 1000 Blöcke unterteilt, so dass später die Belastung über die Gruppen gesteuert werden kann.
$ Generierung der Brückenfahrbahn - Knoten loop#c $(l_teile)+1
let#x #c*$(l_brücke)/$(l_teile) let#z #a*#x^2+#b*#x knot 1000+#c #x $(b_brücke)/2 #z KOOR KA knot 2000+#c #x -$(b_brücke)/2 #z KOOR KA
endloop $ Generierung der Brückenfahrbahn - quad-Elemente loop#c $(l_teile) let#k1 let#k2 let#k3 let#k4
1000+#c 1001+#c 2001+#c 2000+#c
quad 1000+#c #k1 #k2 #k3 #k4 MNR 4 d 0.5 endloop $ Pylone knot 1 $(x_p) 0 $(z_p_u) FIX f KOOR KA knot 2 $(x_p) 0 $(z_p_o) KOOR KA
Hier werden die Knoten und die Flächenelemente für die Fahrbahn angelegt. Dabei wird links und rechts von der x-Achse jeweils eine Knotenreihe erzeugt und später über quad-Elemente verbunden. Der Umlaufsinn ist wieder zu beachten. Das erste quad-Elemente 1000 hat somit die Knoten 1000, 1001, 2001, 2000. Alle Elemente der Brückenlaufbahn haben die Gruppe 1 (außer man erzeugt eine Brücke mit mehr als 1000 Elementen).
x
1004
1003
1003
2004 2003
1002 1002
1001
1001
2002 2001
1000 1000
2000
y
knot 3 $(l_brücke)-$(x_p) 0 $(z_p_u) FIX f KOOR KA knot 4 $(l_brücke)-$(x_p) 0 $(z_p_o) KOOR KA stab 1 KA 1 KE 2 QNR 3 teil $(p_teil) stab 2 KA 3 KE 4 QNR 3 teil $(p_teil)
56
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
$ Generierung Seile - erstes Feld let#mz $(z_p_o)/$(x_p) let#my $(b_brücke)/2/$(x_P) loop#c $(x_p)/($(l_brücke)/$(l_teile)) let#x #c*$(l_brücke)/$(l_teile) let#y $(b_brücke)/2-#my*#x let#z #mz*#x knot (5000+#c) #x #y #z KOOR KA let#y -$(b_brücke)/2+#my*#x knot (6000+#c) #x #y #z KOOR KA endloop loop#c $(x_p)/($(l_brücke)/$(l_teile)) if (#c == 0) let#k1 1000 else let#k1 5000+#c endif let#k2 5001+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))-1) let#k2 2 seil 2000+#c KA #k1 KE #k2 QNR 1 else seil 2000+#c KA #k1 KE #k2 QNR 1 endif if (#c == 0) let#k1 2000 else let#k1 6000+#c endif let#k2 6001+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))-1) let#k2 2 seil 3000+#c KA #k1 KE #k2 QNR 1 else seil 3000+#c KA #k1 KE #k2 QNR 1 endif endloop $ Generierung Seile - viertes Feld let#mz $(z_p_o)/$(x_p) let#my $(b_brücke)/2/$(x_P) loop#c $(x_p)/($(l_brücke)/$(l_teile)) let#x #c*$(l_brücke)/$(l_teile)
57
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
let#y $(b_brücke)/2-#my*#x let#z #mz*#x knot (7000+#c) $(l_brücke)-#x #y #z KOOR KA let#y -$(b_brücke)/2+#my*#x knot (8000+#c) $(l_brücke)-#x #y #z KOOR KA endloop loop#c $(x_p)/($(l_brücke)/$(l_teile)) if (#c == 0) let#k1 1000+$(l_teile) else let#k1 7000+#c endif let#k2 7001+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))-1) let#k2 4 seil 4000+#c KA #k1 KE #k2 QNR 1 else seil 4000+#c KA #k1 KE #k2 QNR 1 endif if (#c == 0) let#k1 2000+$(l_teile) else let#k1 8000+#c endif let#k2 8001+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))-1) let#k2 4 seil 5000+#c KA #k1 KE #k2 QNR 1 else seil 5000+#c KA #k1 KE #k2 QNR 1 endif endloop $ Generierung Seile - zweites und drittes Feld let#mz ($(z_p_o)-$(a_seil))/($(l_brücke)/2-$(x_p)) let#my $(b_brücke)/2/($(l_brücke)/2-$(x_p)) $ Knoten loop#c ($(l_brücke)/2-$(x_p))/($(l_brücke)/$(l_teile)) let#x #c*$(l_brücke)/$(l_teile) let#y $(b_brücke)/2-#my*#x let#z #mz*#x knot (9000+#c) $(l_brücke)/2-#x #y $(a_seil)+#z KOOR KA if (#c 0)
58
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
knot (10000+#c) $(l_brücke)/2+#x #y $(a_seil)+#z KOOR KA endif let#y -$(b_brücke)/2+#my*#x knot (11000+#c) $(l_brücke)/2-#x #y $(a_seil)+#z KOOR KA if (#c 0) knot (12000+#c) $(l_brücke)/2+#x #y $(a_seil)+#z KOOR KA endif endloop $ Stäbe loop#c1 4 loop#c2 ($(l_brücke)/2-$(x_p))/($(l_brücke)/$(l_teile)) let#k1 9000+#c1*1000+#c2 let#k2 9001+#c1*1000+#c2 if (#c1 == 1) if (#c2 == 0) let#k1 9000 endif elseif (#c1 == 3) if (#c2 == 0) let#k1 11000 endif endif if (#c2 == ($(l_brücke)/2-$(x_p))/($(l_brücke)/$(l_teile))-1) if (MOD(#c1,2) == 0) let#k2 2 else let#k2 4 endif endif let#s_nr 6000+#c1*1000+#c2 seil #s_nr KA #k1 KE #k2 QNR 1 endloop endloop $ Generierung der Membran
Die Membranelemente werden jeweils aus zwei Knoten der Fahrbahn und aus zwei Knoten der Seile gebildet.
$ 1. Feld loop#c $(x_p)/($(l_brücke)/$(l_teile))+1 let#k1 1000+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))) let#k2 2 else let#k2 5000+#c
59
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
endif if (#c 0) seil 10000+#c #k1 #k2 QNR 4 endif let#k1 2000+#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))) let#k2 2 else let#k2 6000+#c endif if (#c 0) seil 11000+#c #k1 #k2 QNR 4 endif endloop $ 4. Feld loop#c $(x_p)/($(l_brücke)/$(l_teile))+1 let#k1 1000+$(l_teile)-#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))) let#k2 4 else let#k2 7000+#c endif if (#c 0) seil 12000+#c #k1 #k2 QNR 4 endif let#k1 2000+$(l_teile)-#c if (#c == $(x_p)/($(l_brücke)/$(l_teile))) let#k2 4 else let#k2 8000+#c endif if (#c 0) seil 13000+#c #k1 #k2 QNR 4 endif endloop $ Feld 2 und 3 loop#c1 4 loop#c2 ($(l_brücke)/2-$(x_p))/($(l_brücke)/$(l_teile)) if (#c1 < 2) if (#c2 == 0)
60
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
let#k1 9000 else let#k1 9000+#c1*1000+#c2 endif else if (#c2 == 0) let#k1 11000 else let#k1 9000+#c1*1000+#c2 endif endif if (MOD(#c1, 2) == 0) let#k2 ((#c1-MOD(#c1,2))/2+1)*1000+$(l_teile)/2-#c2 else let#k2 ((#c1-MOD(#c1,2))/2+1)*1000+$(l_teile)/2+#c2 endif let#s_nr 14000+#c1*1000+#c2 seil #s_nr #k1 #k2 QNR 4 endloop endloop knot 1000 fix f; knot 2000 fix f; knot 1000+$(l_teile) fix f; knot 2000+$(l_teile) fix f; ende +prog ase urs:3 kopf Formfindung & Vorspannung ECHO vers,reak,schn,nost nein nmat 1 memb 1 1 syst prob thii iter 30 $ Hängergruppen loop#c 8 grup (#c+10) faks 10e-8
Alle Elemente der Hängerseile werden über ihre jeweiligen Gruppen angesprochen und mit einer nahezu nullfachen Steifigkeit versehen.
endloop $ Tragseilgruppen loop#c 8
Spricht alle Seilgruppen an und versieht sie mit ihrer wirklichen Steifigkeit.
grup (#c+2) faks 5e-3 endloop $ Lauffläche und Pylone grup 0 faks 1 grup 1 faks 1
Pylone und Lauffläche sind in den Gruppen 0 und 1 abgelegt und fließen auch mit ihrer wirklichen Steifigkeit in die Berechnung ein.
lf 1 egz 1 bez 'Vorspannung' $ Seilgruppen loop#c 8
Schleife über alle Seilgruppen.
flas grup (#c+2) typ vnx p $(s_vor) etyp seil flas grup (#c+10) typ vnx p $(s_vor_h) etyp seil
61
Hänger- und Tragseile werden mit einer Vorspannung in lokaler x-Richtung versehen, wobei ausdrücklich nochmals nur Elemente von Typ (etyp) Seil angesprochen werden.
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
Sofistik
endloop ende +prog ase urs:4 kopf Ende Formfindung & Vorspannung ECHO voll nein echo reak,schn ja syst prob thii iter 30 PLF 1 $ Membrangruppen loop#c 8 grup (#c+10) faks 1 endloop Steifigkeiten werden den einzelnen Gruppen wiedergegeben.
$ Seilgruppen loop#c 8 grup (#c+2) faks 1 endloop $ Lauffläche und Pylone grup 0 faks 1 grup 1 faks 1 lf 2 bez 'Vorspannung' ende +prog ase urs:30 kopf Koordinaten-Update syst PLF 2 SPEI ja ende
System wird in der gefundenen Form gespeichert. Dieses wird ab jetzt als Ausgangssystem für weitere Berechnungen benutzt.
+prog ase urs:31 kopf Ende Eigengewicht ECHO voll nein echo reak,schn ja syst prob thii iter 30 PLF 2 lf 3 egz 1 bez 'Vorspannung'
Ansetzen des Eigengewichts mit egz 1.
$ Tragseil loop#c 8 flas grup (#c+2) typ vnx p 3000 etyp seil
Aufbau einer Vorspannkraft im Tragseil.
endloop ende +prog ase urs:32 kopf Ende Eigengewicht+halber Vekehr ECHO voll nein echo reak,schn ja syst prob thii iter 30 PLF 2 lf 4 egz 1 bez 'Vorspannung'
Eigengewicht wird berücksichtigt.
$ Tragseil loop#c 8 flas grup (#c+2) typ vnx p 3000 etyp seil
Aufbau einer Vorspannkraft im Tragseil.
endloop loop#c $(l_teile)/4
62
Sofistik
TU-Berlin – Fachgebiet Entwerfen & Konstruieren – Massivbau – Flächentragwerke II
flas 1000+#c typ pzp p -5.0 flas 1050+#c typ pzp p -5.0
Zusätzliche Verkehrsbelastung wie in Bild 4-15 dargestellt.
endloop ende +PROG GRAF urs:39 KOPF size lp m 0 BEOB TYP STAN 0 -1 0 ACHS negz farb f5 2000 2000 2000 2000 2000 SICH HIDD LINE stru 0 0 lf 4; last typ pzp; stru 0 0 mfix 5 lf 4; vers ja 5; stru 0 0 mfix 5 ende
Legt einen Beobachtungspunkt aus negativer y-Richtung fest, wobei die Ausrichtung der Brücke mit negativer zRichtung erfolgt.
Zeichnet ein Bild von der Belastung aus LF 4.
Zeichnet ein Bild von den Verschiebungen aus LF 4.
Bild 4-16: Verschiebungsfigur
63