Выполнение инженерных расчетов на ЭВМ IBM при проектировании железных дорог: Методические указания к курсовому и дипломному проектированию, страница 4

count to n2 If n2>0

seek strdv,2)+stKnoml,lJ+strCnn,2) If . not.foundC) append blank

repl ksl with rv.nom with noral.n with rm end If else append blank

repl ksl with rv.nom with noral.n with rm endlf nz=recno() set filter to ksl=lv.and.non^noml йо top browse fields п:5:п='Номер'.у:8:п='Уклон',з:20: h='Длина эл-та профиля*: WINDOW wff all format COLOR SCHEME 10 set color to gr+/b. w+/r. b @ 6,2 clear to    23.78 @ 2.45 clear to 4.68

SAVE SCREEN TO _roemscr SET CURSOR OFF do PRWAIT with ' w+/r\ ' gr+/r','  Подождите !   ' Идет   основной расчет...   ' SET CURSOR ON sele 2 go nz

do whl le. not. eofC ). ksl=lv. and. noji»-noml do case case lv=i do rashl case 1vt2

do rash2 case lv=3

do rash3 case lv=4

do rash4 case lv=5 do rashS case lv-6


do гаепб саде Jv*7 do rash? case lv=8 do rash8 case lv=9 do rash9 case lv=10 do rashlO case lv=ll do rash22 endcase skip enddo

do PRWAIT with ' w+/rb'.'gr+/rb',•   Основной расчет ЗАВЕРШЕНО УСПЕШНО ! ' WAIT " TIMEOUT 2 SET CURSOR ON

RESTORE SCREEN FROM _memscr
enddo                                         I

set filter to return . prpc pod set color to W+/N § 22,40 say 'Fl' S 22,50 say 'F2' ©22,60 say 'F3* @ 22,69 say 'ESC' set color to GR+/W @ 22,42 say 'Добавить' "б 22,52 say 'Удалить* в 22,62 say 'Восст.' в 22,72 say 'Выход' set color to return PROC VIX KEYBOARD CHRC23) return proc ppp rnen+i

16


append blank

repl ksl with lv,nom with noml.n with rm

return

prcc rashl

u=ra/(ra+rb)

si-o

do while.t.

dl=l.9+0.01*rd+0.0003*rd**2 cl-1.12+5. 3*0. 001*rd+l. 31*0.0001*rd«*2 M=u*dl+Cl-u}*cl do case case rd<=22

q-129000*C0. 25+8/C100+20*rd))

case rd<=60 q=98900-6209. l*rd+190.415*rd**2-2.80833*rd**3+0.01583333*rd**4

otherwise q=91850-3672.9*rd+63.104*rd»*2-0.495833*rd**3+0,00145833«rd**4

endcase al=sqrtC absC rd**2+12*(q/C ra+rb)-M-y)))-rd rd=rd+al If rd>=rc rd=rc

rf=rf+60«(s-sl)/rd q=Cra+rb)*(M+y) if q>0

re=re+0.001*q*(s-sl) endlf exit else

rf=rf+3/Crd-0.5«al) re=re+5*0.00001«q sl=sl+0.05 If s-sl<0.0001 exit endlf endlf enddo

repl d with rd,e with reif with rT т-etum proc rash2

17


о га    гач гЬ) si  О

■             to while.t.

II   L.94O.01«rd+O.00CG«ttl««2 cl-1.12+5,3x0. 001xrd+0.0003xrdx«2

Ы' II-'!] if l-U)«cl i.'.:)  I ase

q -! 84000-C 0.228+7Л 53+3«rtH 3 case rd<=8Q q».396000-14136.67xrd+179.5*rd*«2-0. 783333xrd«x3

otherwise q. 52800+740xrd+3xrijx-2

p.ndcase al =sqrt( rdxx2+12x(q/( ra+rtO-M--v))-rd rd ■■ rd i al If  !'!> = rc rd n i r- i f h60xCs-sl )/rd

; ' r i-trb)*(M+v)

'! :     ' I ' ''

i   !-0.001Wq«< s-sl)    ■ enrili exit   ■

vf ■'■!"'»3/( i-l П. Г'»и1. I ,,,-,,. .r.-O. 00001 xq -:•       I KO-05

li   .    ;1<0.0001

exl1

endlf

Hid if

enddo

repl d with rd,e with re.f with rf

urn proc rash3 u=ra/( ra+rtO ■

.: I    Г:

do whi le.t.

d!   1.9 tO. 01 *rd wO. 0003«rd«»a

IQ


cl=l. 12+5. 3*0.001*rd+l. 31*0. 00011 *rd**2 M=u*dl+Cl-u)*cl

do case

case rck=l 3}0 q=58200 case rd<=60

q=128970-7682.7*rd+217.821*rd**2-2.9475*rd**3+0.0152917*rd**4 otherwise

4=61450-1818. 7*7x1+27.142*rd**2-0.203333*rd**3+0. 00058333*rd**4 endcase al-sqrtCabsC rd**2+12*(q/C ra+rb)-bl-y)))-rd rd=rd+al If rd>=rc rd=rc

rf=rf+60*rs-sl3/rd q=*>a+rb)*(bl+y) If q>0

re=re+0.001*q*( s-sl) endlf exit else

rf«rf+3/Crd-0.5*aD пэ=ге+5*0. 00001 *q s1=sl+0.05 If s-sl<0.0001 exit endlf endlf enddo

repl d with rd. e with re,f with гГ return proc rash4 u=ra/(ra+rb) sl=0    . do while.t.

dl=l. 9+0.01*rd+0.0003*rd**2 ,d=l. 12+5.3*0.001*rd+0.0003*rd**2 M=u*dl+(l-ul*r1

do case

nase rd<= 56

19


q=138000*C 0.228+7/C 53+3*rrt) ) case rd<=60

q= 750000-51166.7*rd+1436.67«rd**2-18. 7333*rd««3+0.0933333*rd*« otherwise

0=116800-3253.3*rd+33«rd**2-0.116667*rd**3 endcase al=sqrtC absC rd**2+12*( о/С ra+rb)-M-y) ) )-rd rd=rd+al If rd>=rc rd=rc

rf=rf+60*Cs-slVrd q= С га+rb)* ^ Ы +y) If q>0

i*e=re+0.001*q*( s-sl) endlf exit else

rf=rf+3/Crd-0.5*al)
re=re+5*0.00001*q
sl=sl+0.05                                  |

if s-sl<0.0001 exit endlf endlf enddo

repl d with rd.e with re.f with rf return proc rashS u=ra/Cra+rb) sl=0

do while, t.

dl=l.940.01*rd+0.0003«rd**2 cl-1.12+5.3«0.001*rd+l. 31*0.0001 «rd««2 bl=u*dl+C l-u)*cl do case case rd<=16

q=13800D*CO. 2548/C 100+20«rd)) case rd<=60

0=84100-4431.67«rd+112.336*rd**2-l. 38338*rd**3+0.006667«rd«*4 otherwise

го


q= 12900+342.5«rd-12.4584«rd«*2+0.125*rd*«3-4.1667*0.0001*rd*«4 endcase al= sq rt( rd**2+l 2*C q/( га+rb) -bl-y) ) -rd rri=rd+al if rd>=rc rd=rc '      rf=rf+60«Cs-sl)/rd q=C ra+rb) *C M+y) If q>0

re=re+0.001*q*C s-sl) endlf exit else

rf=rf+3/(rd-0.5«ai) re=re+5*0.00001*q sl-sl+0.05 If s-sl<0.Q00i exit enell F endlf enddo

repl d with rd.e with re.f with rf return proc rash6 u=ra/(ra+rb) sl=0

do while, t.                                             •

dl=l. 9+0.008«rd+0.00025*rd«*2 cl-1.12+5.3*0.001 wrd+0 0003*rd**2 bl=U"dl+C l-u)*cl do case case rd<=25.3

q=21900

case rd<=60

q=49600-1628.3*rd+24.755«rd**2-0.141667«rd««3 otherwise

q=24550-340.83«rd+2*rd«*2-0.0041667«rd**3 endcase al=sqrtc ABSCrd**2+l >C q/( ra+rtO-bl-y)))-rd rti^rd+al

:-л


if rd>=rc

rd=rc                                                v

rf=rf+S0*Cs-s1)/rd

q-(ra+rb)*f bl+v)

If q>0

re=re+0.001*q*( s-sl)

endif

exit

else

rf=rf+3/Crd-0.5*4i)

re=re+5*0. 00001*q

sl=sl+0.05

if s-6i<0.0Q01

exit

endif

endif

entirio

repl d with rd,e with re,F with rf

return

prcic rash?

u=ra/(ra+rb)

sl-0

do whi le. t.

dl=1.9+0.01*rd+0.0003*rd**2

с!=1Л2+5.3*0. 001«rd+l-31*0.0001»rd**2

bl=u-dl+Cl-u)*cl

tie; case

case rd<=10. 4 q=30200

rase rd<=60 , p 29200+553.3*rd~54.333»rd«<<2+l. 066667*rd**3-0.0066667*rd*«4

othervise i   ?5900-799,33*rd+7.6958*rd*«2-0.0379167*rd«*3+0.000072917*rd

fndcase al-sirU rd«>»2+12»(q/Cra+rW~bl-y))-rd rd-rri+al If п1>=тт rd--rc

;■(   rf+60»(s-sl)/rd q : ra+rb)*( bl »yi