Program na výpoèet únosnosti základovej pôdy podµa STN 731001 a ENV 1997-1
Delphi & Pascal (èeská wiki)
Kategória: Programy v Pascale
Autor: Miroslav Èerný
Program: Geo5.pas
Súbor exe: Geo5.exe
Súbor ubuntu: Geo5
Potrebné: Vypocet.txt
Autor: Miroslav Èerný
Program: Geo5.pas
Súbor exe: Geo5.exe
Súbor ubuntu: Geo5
Potrebné: Vypocet.txt
Program na výpoèet únosnosti základovej pôdy podµa STN 731001 a ENV 1997-1. Vhodný len pre u¾ívateµov poznajúcich vstupné parametre.
{ GEO5.PAS } { Program na vypocet unosnosti zakladovej pody podla STN 731001 } { a ENV 1997-1. } { Vhodny len pre uzivatelov poznajucich vstupne parametre. } { } { Author: Miroslav Cerny } { Datum: 18.07.2006 http://www.trsek.com } program Unosnost_zakladovej_pody; var nd1:real; R,idel,ibel,icel,gd,gb,gc,Hb,Hl,Nbe,sce,Reb,Rel,pomo,pomo1,ggg:real; a:integer; Nc,Nd,Nb,c,l,b,d,g1,g2,Sc,Sd,Sb,dc,db,dd,ic,id,ib,dt,f,H,V,Be,ideb,ibeb,iceb:real; nazov:string; Ff:text; begin Assign(Ff,'vypocet.txt'); { Standard output } append(Ff); writeln;writeln(Ff); for a:=1 to 68 do write('-'); writeln; for a:=1 to 68 do write(Ff,'-'); writeln(Ff); writeln (' énosnosœ z kladovej p“dy pod–a STN 731001 a ENV 1997-1'); writeln (Ff,' Unosnost zakladovej pody podla STN 731001 a ENV 1997-1'); for a:=1 to 68 do write('-'); for a:=1 to 68 do write(Ff,'-'); writeln; writeln(Ff); writeln('POKYNY:'); writeln; writeln('- pri vìpoŸte zad vajte vstupn‚ parametre v uvedenìch jednotk ch'); writeln('- desatinn‚ miesta odde–ujte bodkou'); writeln('- na prechod k Ôalçiemu kroku vìpoŸtu stlaŸte kl vesu " ENTER "'); writeln('- ak chcete z¡skaœ vìpoŸtov£ £nosnosœ zeminy zadajte'); writeln(' vìpoŸtov‚ parametre çmykovej pevnosti zeminy'); writeln('- v pr¡pade vstupov pre Eurok¢d zad vajte extr‚mne zlo§ky zaœa§enia'); writeln; writeln; write('VSTUPY:'); writeln(' (Pre spustenie vìpoŸtu stlaŸte kl vesu " ENTER")'); writeln(Ff,'VSTUPY:'); writeln(Ff); readln; write('Zadajte nazov vypoctu:'); readln(nazov); writeln(Ff,'Nazov vypoctu je ',nazov); writeln(Ff); repeat write ('Zadajte hodnotu s£dr§nosti zeminy (kPa) c='); read(c); if c < 0 then writeln('Pozor s£dr§nosœ zeminy nem“§e byœ z porn !'); until c>=0; writeln (Ff,'Sudrznost zeminy c=',c:4:2,'kPa'); repeat write ('Zadajte uhol vn£torn‚ho trenia zeminy (v stupåoch) f='); read(f); if f<0 then writeln('Pozor uhol vn£torn‚ho trenia zeminy nem“§e byœ z pornì!'); until f>=0;writeln (Ff,'Uhol vnutorneho trenia zeminy f=',f:4:2,'stupnov'); f:=f*3.14159265359/180 ; repeat write('Zadajte objemov£ tia§ zeminy nad z kladovou çk rou (kN/m3) ');read(g1); if g1<=0 then writeln('Hodnota nem“§e byœ z porn !'); until g1>=0; writeln (Ff,'Objemova tiaz zeminy nad zakladovou skarou =',g1:4:2,'kN/m3'); repeat write('Zadajte objemov£ tia§ zeminy pod z kladovou çk rou (kN/m3) ');read(g2); if g2<=0 then writeln('Hodnota nem“§e byœ z porn !'); until g2>=0; writeln (Ff,'Objemova tiaz zeminy pod zakladovou skarou =',g2:4:2,'kN/m3'); repeat write('Zadajte efekt¡vnu ç¡rku z kladu (m) b='); read(b); if b<=0 then writeln('Hodnota nem“§e byœ z porn !'); until b>=0; writeln (Ff,'Efektivna sirka zakladu b=',b:4:2,'m'); repeat write('Zadajte efekt¡vnu d’§ku z kladu (m) l='); read(l); if l<=0 then writeln('Hodnota nem“§e byœ z porn !'); until l>=0; writeln (Ff,'Efektivna dlzka zakladu l=',l:4:2,'m'); repeat write('Zadajte h’bku zalo§enia z kladu (m) d='); read(d); if d<=0 then writeln('Hodnota nem“§e byœ z porn !'); until d>=0; writeln (Ff,'Hlbka zalozenia zakladu d=',d:4:2,'m'); write('Zadajte odklon zaœa§enia od zvislice (v stupåoch) dt='); read(dt); writeln (Ff,'Odklon zatazenia od zvislice dt=',dt:4:2,'stupnov'); dt:=dt*3.14159265359/180 ; writeln; writeln('DodatoŸn‚ vstupy pre vìpoŸet pod–a n vrhu eur¢pskej normy ENV 1997-1'); writeln; repeat write('Zadajte horizont lne zaœa§enie z kladu rovnobe§n‚ s jeho ç¡rkou (kN) Hb='); read(Hb); if Hb<=0 then writeln('Hodnota je predpokladan ako kladn !'); until Hb>=0; writeln (Ff,'Horizontalne zatazenie zakladu rovnobezne s jeho sirkou Hb=',Hb:4:2,'kN'); repeat write('Zadajte horizont lne zaœa§enie z kladu rovnobe§n‚ s jeho d’§kou (kN) Hl='); read(Hl); if Hl<=0 then writeln('Hodnota je predpokladan ako kladn !'); until Hl>=0; writeln (Ff,'Horizontalne zatazenie zakladu rovnobezne s jeho dlzkou Hl=',Hl:4:2,'kN'); repeat write('Zadajte vertik lne zaœa§enie z kladu (kN) V='); read(V); if V<=0 then writeln('Hodnota nem“§e byœ z porn !'); until V>=0; writeln (Ff,'Vertikalne zatazenie zakladu V=',V:4:2,'kN'); repeat write('Zadajte sklon ter‚nu (v stupåoch) Be='); read(Be); if Be<=0 then writeln('Hodnota je predpokladan ako kladn !'); until Be>=0; writeln (Ff,'Sklon terenu Be=',Be:4:2,'stupnov'); Be:=Be*3.14159265359/180 ; writeln; writeln(Ff); writeln('MEDZIVíSLEDKY - STN 731001 (ENV 1997-1):'); writeln(Ff,'MEDZIVYSLEDKY - STN 731001 (ENV 1997-1):'); for a:=1 to 68 do write('-'); writeln; writeln;writeln(Ff); writeln('Hodnoty s£Ÿinite–ov £nosnosti:'); writeln(Ff,'Hodnoty sucinitelov unosnosti:'); writeln;writeln(Ff); nd1:=sin(45*3.14159265359/180+f/2)/cos(45*3.14159265359/180+f/2); Nc:=(exp(3.14159265359*(sin(f)/cos(f)))*sqr(nd1)-1)*(cos(f)/sin(f)); writeln('Nc=',Nc:4:3); writeln(Ff,'Nc=',Nc:4:3); Nd:=exp(3.14159265359*(sin(f)/cos(f)))*sqr(nd1); writeln('Nd=',Nd:4:3); writeln(Ff,'Nd=',Nd:4:3); Nb:=1.5*(exp(3.14159265359*(sin(f)/cos(f)))*sqr(nd1)-1)*(sin(f)/cos(f)); Nbe:=2*(exp(3.14159265359*(sin(f)/cos(f)))*sqr(nd1)-1)*(sin(f)/cos(f)); write('Nb=',Nb:4:3);writeln(', (pod–a ENV 1997-1) Nb=',Nbe:4:3); write(Ff,'Nb=',Nb:4:3);writeln(Ff,', (podla ENV 1997-1) Nb=',Nbe:4:3); writeln; writeln(Ff); writeln('Hodnoty s£Ÿinite–ov tvaru z kladu:'); writeln(Ff,'Hodnoty sucinitelov tvaru zakladu:'); writeln; writeln(Ff); Sd:=1+((b/l)*sin(f)); writeln('Sd=',Sd:4:3); writeln(Ff,'Sd=',Sd:4:3); Sb:=1-(0.3*b/l); writeln('Sb=',Sb:4:3); writeln(Ff,'Sb=',Sb:4:3); Sc:=1+(0.2*b/l); Sce:=((Sd*Nd)-1)/(Nd-1); write('Sc=',Sc:4:3);writeln(', (pod–a ENV 1997-1) Sc=',Sce:4:3); write(Ff,'Sc=',Sc:4:3);writeln(Ff,', (podla ENV 1997-1) Sc=',Sce:4:3); writeln; writeln(Ff); writeln('Hodnoty s£Ÿinite–ov vplyvu h’bky zalo§enia:'); writeln; writeln(Ff,'Hodnoty sucinitelov vplyvu hlbky zalozenia:'); writeln(Ff); dc:=1+0.1*sqrt(d/b); writeln('dc=',dc:4:3); writeln(Ff,'dc=',dc:4:3); dd:=1+0.1*sqrt(d*sin(2*f)/b); writeln('dd=',dd:4:3); writeln(Ff,'dd=',dd:4:3); db:=1; writeln('db=',db:4:3); writeln(Ff,'db=',db:4:3); writeln; writeln(Ff); writeln('Hodnoty s£Ÿinite–ov vplyvu çikm‚ho zaœa§enia:'); writeln(Ff,'Hodnoty sucinitelov vplyvu sikmeho zatazenia:'); writeln;writeln(Ff); id:=(1-(sin(dt)/cos(dt)))*(1-(sin(dt)/cos(dt))); writeln('id=ib=ic=',id:4:3); writeln(Ff,'id=ib=ic=',id:4:3); idel:=1- (Hl/(V+(b*l*c*(cos(f)/sin(f))))); icel:=(idel*Nd-1)/(Nd-1); pomo:=(1-((0.7*Hb)/(V+(b*l*c*(cos(f)/sin(f)))))); ideb:=pomo*pomo*pomo; pomo1:=(1-((Hb)/(V+(b*l*c*(cos(f)/sin(f)))))); ibeb:=pomo1*pomo1*pomo1; iceb:=((ideb*Nd)-1)/(Nd-1); writeln; writeln('(pod–a ENV 1997-1)'); writeln(Ff,'(podla ENV 1997-1)'); writeln('(pre horizont lne zaœa§enie rovnobe§n‚ s d’§kou z kladu)'); write('id=',Idel:4:3);write(',ib=',Idel:4:3); writeln(',ic=',Icel:4:3); writeln(Ff,'(pre horizontalne zatazenie rovnobezne s dlzkou zakladu)'); write(Ff,'id=',Idel:4:3);write(Ff,',ib=',Idel:4:3); writeln(Ff,',ic=',Icel:4:3); writeln('(pre horizont lne zaœa§enie rovnobe§n‚ so ç¡rkou z kladu)'); write('id=',Ideb:4:3);write(',ib=',Ibeb:4:3); writeln(',ic=',Iceb:4:3); writeln(Ff,'(pre horizontalne zatazenie rovnobezne so sirkou zakladu)'); write(Ff,'id=',Ideb:4:3);write(Ff,',ib=',Ibeb:4:3); writeln(Ff,',ic=',Iceb:4:3); writeln;writeln(Ff); writeln('Hodnoty s£Ÿinite–ov vplyvu çikm‚ho ter‚nu:'); writeln(Ff,'Hodnoty sucinitelov vplyvu sikmeho terenu:'); writeln;writeln(Ff); ggg:=(1-(0.5*((sin(Be/180)/cos(Be/180))))); gd:=ggg*ggg*ggg*ggg*ggg; gc:=1-((2*Be)/(3.14159265359+2)); write('gd=gb=',gd:4:3); writeln(',gc=',gc:4:3); write(Ff,'gd=gb=',gd:4:3); writeln(Ff,',gc=',gc:4:3); writeln;writeln(Ff); writeln;writeln(Ff); writeln('VíSLEDKY:'); writeln(Ff,'VYSLEDKY:'); for a:=1 to 68 do write('-'); writeln; writeln;writeln(Ff); writeln;writeln(Ff); R:=(c*Nc*Sc*dc*id)+(g1*d*Nd*Sd*dd*id)+(g2*0.5*b*Nb*Sb*db*id); Reb:=(c*Nc*Sce*dc*iceb*gc)+(g1*d*Nd*Sd*dd*ideb*gd)+(g2*0.5*b*Nbe*Sb*db*ibeb*gd); Rel:=(c*Nc*Sce*dc*icel*gc)+(g1*d*Nd*Sd*dd*idel*gd)+(g2*0.5*b*Nbe*Sb*db*idel*gd); writeln('énosnosœ podlo§ia vypoŸ¡tan pod–a STN 731001 je R = ',R:4:1,'kPa'); writeln('énosnosœ podlo§ia vypoŸ¡tan pod–a ENV 1997-1 je R = ',Reb:4:1,'kPa'); writeln('(horizont lne zaœa§enie p“sob¡ v smere rovnobe§nom so ç¡rkou z kladu)'); writeln('énosnosœ podlo§ia vypoŸ¡tan pod–a ENV 1997-1 je R = ',Rel:4:1,'kPa'); writeln('(horizont lne zaœa§enie p“sob¡ v smere rovnobe§nom s d’§kou z kladu)'); writeln(Ff,'Unosnost podlozia vypocitana podla STN 731001 je R = ',R:4:1,'kPa'); writeln(Ff,'Unosnost podlozia vypocitana podla ENV 1997-1 je R = ',Reb:4:1,'kPa'); writeln(Ff,'(horizontalne zatazenie posobi v smere rovnobeznom so sirkou zakladu)'); writeln(Ff,'Unosnost podlozia vypocitana podla ENV 1997-1 je R = ',Rel:4:1,'kPa'); writeln(Ff,'(horizontalne zatazenie posobi v smere rovnobeznom s dlzkou zakladu)'); readln;writeln(Ff); writeln; writeln('Celì vìpoŸet je ulo§enì v textovom s£bore vypocet.txt !'); for a:=1 to 68 do write('-'); writeln; writeln('Naprogramoval Miroslav ¬ernì'); writeln(Ff,'Tento program bol vytvoreny hlavne z dovodu precvicenia si programovania.'); writeln('Pripomienky a dotazy mi m“§ete nap¡saœ na email: cerny@orangemail.sk'); writeln(Ff,'Pripomienky a dotazy mi mozete napisat na email: cerny@orangemail.sk'); writeln('Òakujem V m!'); writeln(Ff,'Dakujem Vam!'); writeln; Close(Ff); writeln(' (Program ukonŸ¡te stlaŸenim kl vesy "ENTER")'); readln; end.