C SOFiMSHC: Unterschied zwischen den Versionen

Aus ITP
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(24 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:


== Tipps und Tricks ==
== Tipps und Tricks ==
=== regelmäßiges Netz ===
Man braucht das nicht wirklich, aber manchmal eben doch: eine ganz regelmäßige Vernetzung mit einer vorgegebenen Anzahl von Elementen an den Kanten. Das geht:
Grundsatz 1: Jede Kante wird in mindestens zwei Abschnitte unterteilt!
Grundsatz 2: Jede Linie wird in eine geradzahlige Anzahl von Abschnitten unterteilt (sln ... sdiv '''-geradzahlig''').
Weiterhin kann man im sln - Satz bei styp das "Y" eingeben. Damit wird eine Linie dann doch nicht unterteilt; auch "BY" liefert das erhoffte Ergebnis: ein Stab zwischen zwei Knoten.
Im SOFiPLUS geht das auch recht gut:
[[Datei:Vernetzung anzahl der elemente.jpg|Anzahl der Elemente auswählen]]
=== Schnittpunkt zwei Achsen ===
=== 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.
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.
Zeile 17: Zeile 29:
coor typ AXIS id AXIS.N s 22.1160  
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.
Das funktioniert auch ganz gut, nur leider übernehmen die so generierten Knoten nicht das neue Koordinatensystem. Die lokalen Achsen der neuen Knoten übernehmen das globale KSS.




Man kann sich auch auf die Achse beziehen:
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
spt nr 202      ref 'ax'        nref 'a1'      sx #ue  sy #b  sz #z_lager    fix F->200


Zeile 26: Zeile 39:


Am besten funktioniert ein Bezug auf den Knoten selbst:
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
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
                 spts    nr      typ    cp      cq=#cq  grp=10
Zeile 36: Zeile 50:
Alle Kopplungen von Systemen, welche mit CSM weiterberechnet werden, sollten einer Gruppe zugewiesen werden (s. SPTP...GRP).
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
=== SAR NR RROP ===
Gelegentlich ergibt sich die Forderung, eine Strukturfläche in einem bestimmten örtlich begrenzten Bereich zu verändern:
    Dicke
    Gruppennummer
    Bettung
    Material...
Dazu gibt es den Befehl '''sar nr prop'''.
Beispiel:
Eine Strukturfläche (Nr. 115) ist bereits (ohne Bettung) definiert. Nun soll noch der Bereich von 1m mit cb gebettet werden.
sar nr 115 grp 2 mnr 4 nra 7 qref mitt cb 0 ct 0 mctl 1 t #tm bez '2 - W5'
sarb typ aus nl 459,414,460,461
'''sar  nr prop cb #cbsandu bez "nur 1m Bettung"'''
sarb out
slnb    x1 #x10  #y2 #zfusz      x2 #x10 #y2 #zfusz-1
sarb out
slnb    x1 #x10  #y2 #zfusz-1    x2 #x10 #y3 #zfusz-1
sarb out
slnb    x1 #x10  #y3 #zfusz-1    x2 #x10 #y3 #zfusz
sarb out
slnb    x1 #x10  #y3 #zfusz      x2 #x10 #y2 #zfusz
=== Kopplungen ===
Kopplungen sollte man auf jeden Fall einer Gruppe zuordnen. Ggf. unterscheidet man noch nach den Richtungen.
Bei der Verwendung von Kopplungen besteht immer wieder die Frage, wer auf wen gekoppelt wird oder ob das evtl. auch vollkommen bedeutungslos ist. Oft sind die damit verbundenen Fehlermeldung (üblicherweise erst beim ASE - Lauf) schwer zu interpretieren.
Die Regel lautet '''hin zum Auflager'''.
Bei der Kopplung von Knoten ist der Kopplungstyp hinter typ als LITERAL einzugeben. Das LITERAL darf hier aber nicht in Hochkomma gesetzt werden!
'''sptp'''    typ kf  grp 2  ref 300+#nr  $ Kopplung auf den Lagerknoten
Außerdem kann man hier eine Gruppennnummer eingeben, was im Satz spt nicht möglich ist.
=== Gelenkbedingungen an sln in Flächentragwerken ===
Gelegentlich brauch man Gelenkbedingungen entlang einer Strukturlinie zwischen zwei Flächen. Das typische Beispiel ist eine eche Raumfuge oder auch "Nut und Feder".
Die nicht zu übertragenden Schnittgrößen werden im Satz SARB hinter FIX als Literal eingegeben.
sar    nr 22    grp 10 mnr 1 mbw 11 qref 'oben' cb -  ct -  nx 0    ny 0    nz -1    nra 7 t 0.7    bez '#bez' mctl 'regm'  kr 'posx'
sarb    typ aus nl  2012,2013,102
sarb    typ aus nl  2102              '''fix 'ppmm''''


Die sln nr 2102 überträger keine der sechs Schnittgrößen.


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

Aktuelle Version vom 28. Juni 2024, 07:06 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

regelmäßiges Netz

Man braucht das nicht wirklich, aber manchmal eben doch: eine ganz regelmäßige Vernetzung mit einer vorgegebenen Anzahl von Elementen an den Kanten. Das geht: Grundsatz 1: Jede Kante wird in mindestens zwei Abschnitte unterteilt! Grundsatz 2: Jede Linie wird in eine geradzahlige Anzahl von Abschnitten unterteilt (sln ... sdiv -geradzahlig).

Weiterhin kann man im sln - Satz bei styp das "Y" eingeben. Damit wird eine Linie dann doch nicht unterteilt; auch "BY" liefert das erhoffte Ergebnis: ein Stab zwischen zwei Knoten.


Im SOFiPLUS geht das auch recht gut:

Anzahl der Elemente auswählen

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 generierten 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

SAR NR RROP

Gelegentlich ergibt sich die Forderung, eine Strukturfläche in einem bestimmten örtlich begrenzten Bereich zu verändern:

   Dicke
   Gruppennummer
   Bettung
   Material...

Dazu gibt es den Befehl sar nr prop.

Beispiel:

Eine Strukturfläche (Nr. 115) ist bereits (ohne Bettung) definiert. Nun soll noch der Bereich von 1m mit cb gebettet werden.

sar nr 115 grp 2 mnr 4 nra 7 qref mitt cb 0 ct 0 mctl 1 t #tm bez '2 - W5'

sarb typ aus nl 459,414,460,461

sar nr prop cb #cbsandu bez "nur 1m Bettung"

sarb out

slnb x1 #x10 #y2 #zfusz x2 #x10 #y2 #zfusz-1

sarb out

slnb x1 #x10 #y2 #zfusz-1 x2 #x10 #y3 #zfusz-1

sarb out

slnb x1 #x10 #y3 #zfusz-1 x2 #x10 #y3 #zfusz

sarb out

slnb x1 #x10 #y3 #zfusz x2 #x10 #y2 #zfusz

Kopplungen

Kopplungen sollte man auf jeden Fall einer Gruppe zuordnen. Ggf. unterscheidet man noch nach den Richtungen.

Bei der Verwendung von Kopplungen besteht immer wieder die Frage, wer auf wen gekoppelt wird oder ob das evtl. auch vollkommen bedeutungslos ist. Oft sind die damit verbundenen Fehlermeldung (üblicherweise erst beim ASE - Lauf) schwer zu interpretieren. Die Regel lautet hin zum Auflager.

Bei der Kopplung von Knoten ist der Kopplungstyp hinter typ als LITERAL einzugeben. Das LITERAL darf hier aber nicht in Hochkomma gesetzt werden!

sptp typ kf grp 2 ref 300+#nr $ Kopplung auf den Lagerknoten

Außerdem kann man hier eine Gruppennnummer eingeben, was im Satz spt nicht möglich ist.


Gelenkbedingungen an sln in Flächentragwerken

Gelegentlich brauch man Gelenkbedingungen entlang einer Strukturlinie zwischen zwei Flächen. Das typische Beispiel ist eine eche Raumfuge oder auch "Nut und Feder". Die nicht zu übertragenden Schnittgrößen werden im Satz SARB hinter FIX als Literal eingegeben.

sar nr 22 grp 10 mnr 1 mbw 11 qref 'oben' cb - ct - nx 0 ny 0 nz -1 nra 7 t 0.7 bez '#bez' mctl 'regm' kr 'posx'

sarb typ aus nl 2012,2013,102

sarb typ aus nl 2102 fix 'ppmm'

Die sln nr 2102 überträger keine der sechs Schnittgrößen.