C Schwerlastmodell SW/0: Unterschied zwischen den Versionen
		
		
		
		
		
		Zur Navigation springen
		Zur Suche springen
		
				
		
		
	
Lutz (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung  | 
				Lutz (Diskussion | Beiträge)  Keine Bearbeitungszusammenfassung  | 
				||
| Zeile 19: | Zeile 19: | ||
== Block SW0 ==  | == Block SW0 ==  | ||
<nowiki>#define sw0</nowiki>  | <nowiki>#define sw0</nowiki>  | ||
let#x   #dx  | let#x   #dx  | ||
loop#i  49  | loop#i  49  | ||
| Zeile 73: | Zeile 74: | ||
         endif  |          endif  | ||
endloop  | endloop  | ||
<nowiki>#enddef</nowiki>  | <nowiki>#enddef</nowiki>  | ||
<nowiki>#include sw0</nowiki>  | <nowiki>#include sw0</nowiki>  | ||
[[Kategorie:Bahn]]  | [[Kategorie:Bahn]]  | ||
[[Kategorie:SOFiLOAD]]  | [[Kategorie:SOFiLOAD]]  | ||
Version vom 14. Oktober 2019, 08:45 Uhr
Allgemeines
Für die meisten Bahnbrücken muss neben dem LM71 auch das Lastmodell SW0 nachgewiesen werden. Dabei sind je Gleis die zwei möglichen Exzentrizitäten sowie die zwei möglichen Geschwindigkeiten zu untersuchen.
Die nachstehende Grafik zeigt die 7 "Grenzstellungen" der beiden Streckenlasten. Hier kommen die Werkzeuge:
loop
    if
    elseif
    elseif
    ...
    else
    endif
endloop
zum Einsatz.
Grafik
Block SW0
#define sw0
let#x #dx loop#i 49
       if (#x<#a)  $ nur erster Teil und der auch nur teilweise drauf
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l1 #x
               #include last1
               let#x #x+#dx
       elseif ((#x<=(#a+#c))&(#x>#a)) $ erster Teil komplett drauf, zweiter Teil noch vollkommen außerhalb
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l1 #a
               #include last1
               let#x #x+#dx
       elseif ((#x<=(2*#a+#c))&(#x>#a+#c)) $ zweiter Teil teilweise drauf
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l1 #a
               let#l2 #x-#a-#c
               #include last1
               #include last2
               let#x #x+#dx
       elseif ((#x>(2*#a+#c))&(#x<#l)) $ zweiter Teil vollständig  drauf
               $ hier nur theoretisch; diese Bedingung ist hier niemlas erfüllt,
               $ da #l<2*#a+#c
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l1 #a
               let#l2 #a
               #include last1
               #include last2
               let#x #x+#dx
       elseif ((#x<=(#l+#a))&(#x>#l)) $ erster Teil bereits teilweise wieder runter
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l1 #a-(#x-#l)
               let#l2 #a
               #include last1ue
               #include last2
               let#x #x+#dx
       elseif ((#x<=(#l+#a+#c))&(#x>#l+#a)) $ erster Teil vollkommen drüber, zweiter Teil noch nicht am Ende
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l2 #a
               #include last2
               let#x #x+#dx
       else    ((#x<=(#l+#a+#c+#a))&(#x>#l+#a+#c)) $ zweiter Teil nur noch teilweise drauf
               let#lfnr #lfnr+1
               lf nr #lfnr typ SW0 bez 'SW0 #text_v #text_y LF #lfnr'
               let#l2 (#a+#c+#a)-(#x-#l)
               #include last2ue
               let#x #x+#dx
       endif
endloop
#enddef
#include sw0
