C SOFiMSHC: Unterschied zwischen den Versionen

Aus ITP
Zur Navigation springen Zur Suche springen
Zeile 85: Zeile 85:


gaxs    id 'AXIS' ids 'n' spt 200 y yn  bez 'nördl. Achse'
gaxs    id 'AXIS' ids 'n' spt 200 y yn  bez 'nördl. Achse'
Da "AXIS.N" im SOFiLOAD nix taugt, wird hier eine neue Achse "NORD" erzeugt. Durch das "ref 'AXIS.n'" sind die beiden Achsen (fast) identisch. Mit der Stationierung muss man rumprobieren.
==== neue Lastachse NORD ====
!*!Label Lastachsen
let#typ 'lane'
gax  id 'NORD' typ #typ bez 'NORD'  ref 'AXIS.n' typc spli
let#l_n 77.982          $ Länge der AXIS.n aus dem Result Viewer
                        $ zur Kontrolle dienen die Koordinaten des Knotens 4200
                        $ diese NURB's werden ohne Stationierung ausgegeben...sollte aber bei etwa 77.982 enden
loop#i div(#l_n/1)+2    $ probieren! $ im SOFiLOAD wird die "Gesamtlänge" und die Stationierung ausgegeben
        gaxc  x 0+#i    y 0    z 0
endloop




[[Kategorie:Statisches System]]
[[Kategorie:Statisches System]]
[[Kategorie:SOFiMSHC]]
[[Kategorie:SOFiMSHC]]

Version vom 14. Oktober 2019, 06:52 Uhr

Vorbemerkungen

Das Modul SOFiMSHC dient der Generierung des statischen Models. Daneben werden Achsen erzeugt, welche für die Vorspannung bzw. die Verkehrslasten benötigt werden. Hier trage ich meine Tipps und Kniffe für dieses Modul zusammen. Irgendwann bring ich da mal Ordnung rein. 🤣

Tipps und Tricks

Schnittpunkt zwei Achsen

Gelentlich braucht man den Schnittpunkt von zwei Achsen. Das funktioniert nur über Strukturlinien. Man definiert die beiden Strukturlinien über jeweils eine Achse; und der Schnittpunkt der beiden Strukturlinien ist der gesuchte Knoten.

störende Knoten löschen

Im SOFiMSHC besteht keine Möglichkeit, Knoten zu löschen. Also gibt man diesen störenden Knoten eine "weit abliegende Koordinate" und legt mit steu deln 1 fest, das unbenutzte Elemente zu löschen sind.

Ausrichtung der Lager - Gruppennummer der Kopplungen

Bei gekrümmten Überbauten ist die achsparallele Ausrichtung der Lager nicht mehr trivial.

Es bietet sich der Befehl COOR an.

coor typ AXIS id AXIS.N s 22.1160

Das funktioniert auch ganz gut, nur leider übernehmen die so genierten Knoten nicht das neue Koordinatensystem. Die lokalen Achsen der neuen Knoten übernehmen das globale KSS.


Man kann sich auch auf die Achse beziehen:

spt nr 202 ref 'ax' nref 'a1' sx #ue sy #b sz #z_lager fix F->200

Diese Knoten übernehmen das gedrehte KSS, machen allerdings Schwierigkeiten bei den Lastfällen "Stützensenkung".

Am besten funktioniert ein Bezug auf den Knoten selbst:

spt nr 202 ref 'pt' nref 200 x 0 y +#b z #z_lager fix F->200

               spts    nr      typ     cp      cq=#cq  grp=10
                       4       cx      #cx10_2
                       5       cy      #cy10_2
               spts    nr      typ     cp      cq=#cq  grp=110
                       6       cz      #cz

Die neuen Knoten haben das lokale Koordinatensystem des referenzierten Knotens und Stützensenkungen lassen sich auch berechnen. Es ist sinnvoll, die Z-Komponente in eine separate Gruppe zu stecken. Somit kann man im WINGRAF recht gut das generierte Lagersystem darstellen. Alle Kopplungen von Systemen, welche mit CSM weiterberechnet werden, sollten einer Gruppe zugewiesen werden (s. SPTP...GRP).

Ausrichtung des KSS von Flächentragwerken

Wenn man die Koordinatensysteme der QUAD-Elemente ausrichten muss (orthotrope Fahrbahnplatten), so bieten sich zwei Möglichkeiten an:

Bauwerksachse=Kreis

Hier erfolgt die Ausreichtung auf den Kreismittelpunkt;

sar nr 2 grp 100 mnr 3 mbw 14 nra 7 qref 'unte' mctl +1 bez #bez kr 'pt' drx 4000 drot 90

Nachteilig an dieser Lösung ist, dass das Koordinatensystem im Animator riesig groß dargestellt wird!

Bauwerksachse=Klothoide

Hier kann man die Koordinatensysteme der Quad-Elemente auf eine Strukturlinie ausrichten;

sar nr 1 grp 100 mnr 3 mbw 14 nra 7 qref 'unte' mctl +1 bez #bez kr 'ln' drx 105 drot 90

Kontrollen !!

Natürlich muss man den Winkel und die sich ergebenden Richtungen grafisch kontrollieren. Bei den orthotropen Platten ist streng nach x und y zu unterscheiden.

Lastachsen aus Sekundärachsen erzeugen

Stand 10/2019! das soll zukünftig besser gehen

Gelegentlich entwickelt man die Sekundärachsen nicht einfach durch eine konstante seitlich Versetztung der Primärachse. Dann hat diese Sekundärachse nicht nur keine eigene Stationierung, sondern sie taugt auch nicht als Lastachse!

Die Lösung besteht darin, eine neue Achse aus der Geometrie dieser Nebenachse zu erzeugen. Diese beiden Achsen sind geometrisch deckungsgleich und die neue Achse ist eine Lastachse.

Definition der Sekundärachse AXIS.n

Der nachstehende Text zeigt, wie man an unterschiedlichen Stationen einen variablen Abstand zwischen der Sekundär- und der Primärachse definieren kann. Über den Typ "SPLI" ergibt sich die gesuchte Form.

Mit "GAXS" wird dann die Sekundärachse "AXIS.n" generiert.

!*!Label nördl. Sekundärachse $ Norden: der Abstand wird an vier Stationen über eine Variable gaxv vorgegeben typ=spli


gaxv id 'AXIS' name yn s #s0 v -(1.625-0.15) typ spli

gaxv id 'AXIS' name yn s #s1 v -(1.625-0.15) typ spli

gaxv id 'AXIS' name yn s #s2 v -(1.625+0.335) typ spli

gaxv id 'AXIS' name yn s #s3 v -(1.625+1.1) typ spli

gaxs id 'AXIS' ids 'n' spt 200 y yn bez 'nördl. Achse'


Da "AXIS.N" im SOFiLOAD nix taugt, wird hier eine neue Achse "NORD" erzeugt. Durch das "ref 'AXIS.n'" sind die beiden Achsen (fast) identisch. Mit der Stationierung muss man rumprobieren.


neue Lastachse NORD

!*!Label Lastachsen let#typ 'lane' gax id 'NORD' typ #typ bez 'NORD' ref 'AXIS.n' typc spli let#l_n 77.982 $ Länge der AXIS.n aus dem Result Viewer

                       $ zur Kontrolle dienen die Koordinaten des Knotens 4200
                       $ diese NURB's werden ohne Stationierung ausgegeben...sollte aber bei etwa 77.982 enden

loop#i div(#l_n/1)+2 $ probieren! $ im SOFiLOAD wird die "Gesamtlänge" und die Stationierung ausgegeben

       gaxc  x 0+#i    y 0     z 0

endloop