Vertikālās līknes kalkulators ceļu inženierijas projektiem
Aprēķiniet vertikālās līknes parametrus ceļu un dzelzceļa projektēšanai. Atrodiet augstumus, K vērtības, augstākās/zemākās vietas un vēl vairāk krēslas un nogāzes līknēm transporta projektos.
Vertikālās līknes kalkulators
Ievades parametri
Curve Parameters
PVI Information
Rezultāti
Līknes raksturojums
Atslēgas punkti
Stacijas vaicājums
Vizualizācija
Dokumentācija
Vertikālā līkuma kalkulators civilajā inženierijā
Ievads
Vertikālā līkuma kalkulators ir būtisks rīks civilajā inženierijā, kas palīdz inženieriem izstrādāt vienmērīgas pārejas starp dažādām ceļa slīpēm. Vertikālie līkumi ir paraboliskie līkumi, ko izmanto ceļu un dzelzceļu projektēšanā, lai radītu pakāpenisku pāreju starp divām dažādām slīpēm vai gradientiem, nodrošinot ērtas braukšanas apstākļus un pareizu drenāžu. Šis kalkulators vienkāršo sarežģītās matemātiskās aprēķinus, kas nepieciešami vertikālo līkumu projektēšanai, ļaujot civilajiem inženieriem, ceļu projektētājiem un būvniecības speciālistiem ātri noteikt galvenos parametrus, piemēram, līkuma augstumus, augstākos un zemākos punktus un K vērtības.
Neatkarīgi no tā, vai jūs projektējat šoseju, vietējo ceļu vai dzelzceļu, vertikālie līkumi ir kritiski svarīgi drošībai, braucēju komfortam un pareizai lietusūdens pārvaldībai. Šis visaptverošais kalkulators apstrādā gan augšējos līkumus (kur ceļš paceļas un pēc tam krīt), gan apakšējos līkumus (kur ceļš noslīd uz leju un pēc tam paceļas), nodrošinot visu nepieciešamo informāciju pareizai vertikālās izlīdzināšanas projektēšanai transporta inženierijas projektos.
Vertikālā līkuma pamati
Kas ir vertikālais līkums?
Vertikālais līkums ir parabolas līkums, ko izmanto ceļu, šoseju, dzelzceļu un citu transporta infrastruktūras vertikālajā izlīdzināšanā. Tas nodrošina vienmērīgu pāreju starp divām dažādām slīpēm vai gradientiem, novēršot strauju izmaiņu, kas notiktu, ja slīpes tiktu savienotas punktā. Šī vienmērīgā pāreja ir būtiska:
- Braucēju komfortam un drošībai
- Pietiekamai redzamības distancei vadītājiem
- Transportlīdzekļu darbības efektivitātei
- Efektīvai drenāžai
- Ceļa estētiskajai izskatam
Vertikālie līkumi parasti ir paraboliskā formā, jo parabola nodrošina nemainīgu slīpuma izmaiņu ātrumu, radot vienmērīgu pāreju, kas minimizē spēkus, ar kuriem saskaras transportlīdzekļi un pasažieri.
Vertikālo līkumu veidi
Ir divi galvenie vertikālo līkumu veidi, ko izmanto civilajā inženierijā:
-
Augšējie līkumi: Šie notiek, kad sākotnējā slīpe ir lielāka par beigu slīpi (piemēram, pārejot no +3% uz -2%). Līkums veido kalnu vai augstāko punktu. Augšējo līkumu galvenokārt projektē, pamatojoties uz apstāšanās redzamības prasībām.
-
Apakšējie līkumi: Šie notiek, kad sākotnējā slīpe ir mazāka par beigu slīpi (piemēram, pārejot no -2% uz +3%). Līkums veido ieleju vai zemāko punktu. Apakšējie līkumi parasti tiek projektēti, pamatojoties uz priekšgaismas redzamību un drenāžas apsvērumiem.
Galvenie vertikālā līkuma parametri
Lai pilnībā definētu vertikālo līkumu, ir jānosaka vairāki galvenie parametri:
- Sākotnējā slīpe (g₁): Ceļa slīpe pirms iekļūšanas līkumā, izteikta procentos
- Beigu slīpe (g₂): Ceļa slīpe pēc iziešanas no līkuma, izteikta procentos
- Līkuma garums (L): Horizontālā distance, kurā vertikālais līkums izplešas, parasti mērīta metros vai pēdās
- PVI (Vertikālās krustojuma punkts): Teorētiskais punkts, kur divas taisnes slīpes krustojas, ja līkuma nebūtu
- PVC (Vertikālā līkuma punkts): Vertikālā līkuma sākumpunkts
- PVT (Vertikālā taisnes punkts): Vertikālā līkuma beigu punkts
- K vērtība: Horizontālā distance, kas nepieciešama, lai sasniegtu 1% slīpuma izmaiņu, līkuma plaknes mērījums
Matemātiskās formulas
Pamata vertikālā līkuma vienādojums
Augstums jebkurā punktā gar vertikālo līkumu var aprēķināt, izmantojot kvadrātiskā vienādojuma formulu:
Kur:
- = Augstums attālumā no PVC
- = Augstums PVC
- = Sākotnējā slīpe (dekāla formā)
- = Distantce no PVC
- = Algebraiskā atšķirība slīpumos ()
- = Vertikālā līkuma garums
K vērtības aprēķins
K vērtība ir līkuma plaknes mērījums un tiek aprēķināta kā:
Kur:
- = Vertikālās līkuma ātrums
- = Vertikālā līkuma garums
- = Sākotnējā slīpe (procentos)
- = Beigu slīpe (procentos)
Augstākas K vērtības norāda uz plakaniem līkumiem. Projektēšanas standarti bieži nosaka minimālās K vērtības, pamatojoties uz projektēšanas ātrumu un līkuma veidu.
Augstā/zemā punkta aprēķins
Augšējos līkumos, kur un , vai apakšējos līkumos, kur un , līkumā būs augsts vai zems punkts. Šī punkta stacija var tikt aprēķināta kā:
Augstums šajā augstajā/zemajā punktā tiek aprēķināts, izmantojot pamata vertikālā līkuma vienādojumu.
PVC un PVT aprēķini
Doti PVI stacija un augstums, PVC un PVT var aprēķināt kā:
Piezīme: Dalīšana ar 200 augstuma formulās ņem vērā slīpuma pārvēršanu procentos uz dekālu formu un līkuma pusi.
Malu gadījumi
-
Vienādas slīpes (g₁ = g₂): Kad sākotnējās un beigu slīpes ir vienādas, vertikālais līkums nav nepieciešams. K vērtība kļūst bezgalīga, un "līkums" patiesībā ir taisna līnija.
-
Ļoti mazas slīpuma atšķirības: Kad atšķirība starp slīpēm ir ļoti maza, K vērtība kļūst ļoti liela. Tas var prasīt līkuma garuma pielāgojumus praktiskai īstenošanai.
-
Nulles garuma līkumi: Vertikāls līkums ar nulles garumu nav matemātiski derīgs un būtu jāizvairās projektēšanā.
Kā izmantot vertikālā līkuma kalkulatoru
Mūsu vertikālā līkuma kalkulators vienkāršo šos sarežģītos aprēķinus, ļaujot jums ātri noteikt visus galvenos parametrus jūsu vertikālā līkuma projektēšanai. Šeit ir norādīts, kā to izmantot:
1. solis: Ievadiet pamata līkuma parametrus
- Ievadiet sākotnējo slīpi (g₁) procentu formā (piemēram, 2 par 2% augšup slīpi, -3 par 3% lejup slīpi)
- Ievadiet beigu slīpi (g₂) procentu formā
- Ievadiet līkuma garumu metros
- Norādiet PVI staciju (stacijas vērtība vertikālā krustojuma punktā)
- Ievadiet PVI augstumu metros
2. solis: Pārskatiet rezultātus
Pēc nepieciešamo parametru ievadīšanas kalkulators automātiski aprēķinās un parādīs:
- Līkuma veids: Vai līkums ir augšējais, apakšējais vai neviens
- K vērtība: Vertikālās līkuma ātrums
- PVC stacija un augstums: Līkuma sākumpunkts
- PVT stacija un augstums: Līkuma beigu punkts
- Augstais/zemais punkts: Ja piemērojams, augstākā vai zemākā punkta stacija un augstums līkumā
3. solis: Vaicājiet specifiskas stacijas
Jūs varat arī vaicāt augstumu jebkurā konkrētā stacijā gar līkumu:
- Ievadiet vaicājuma stacijas vērtību
- Kalkulators parādīs atbilstošo augstumu šajā stacijā
- Ja stacija ir ārpus līkuma robežām, kalkulators to norādīs
4. solis: Vizualizējiet līkumu
Kalkulators nodrošina vizuālu vertikālā līkuma attēlojumu, parādot:
- Līkuma profilu
- Galvenos punktus (PVC, PVI, PVT)
- Augsto vai zemo punktu (ja piemērojams)
- Taisnās slīpes
Šī vizualizācija palīdz jums saprast līkuma formu un pārbaudīt, vai tā atbilst jūsu projektēšanas prasībām.
Lietošanas gadījumi un pielietojumi
Vertikālo līkumu aprēķini ir būtiski daudziem civilās inženierijas pielietojumiem:
Šoseju un ceļu projektēšana
Vertikālie līkumi ir pamatelementi ceļu projektēšanā, nodrošinot drošus un ērtus braukšanas apstākļus. Tie tiek izmantoti, lai:
- Radītu vienmērīgas pārejas starp dažādām ceļa slīpēm
- Nodrošinātu pietiekamu redzamības distanci vadītājiem
- Nodrošinātu pareizu drenāžu, lai novērstu ūdens uzkrāšanos
- Atbilstu projektēšanas standartiem un specifikācijām dažādām ceļu klasifikācijām
Piemēram, projektējot šoseju, kas jāšķērso kalnainā apvidū, inženieriem rūpīgi jāpārskata vertikālie līkumi, lai nodrošinātu, ka vadītājiem ir pietiekama redzamība, lai droši apstātos, ja ceļā parādās šķērslis.
Dzelzceļa projektēšana
Dzelzceļa inženierijā vertikālie līkumi ir kritiski svarīgi, lai:
- Nodrošinātu vienmērīgu vilcienu darbību
- Minimizētu nodilumu uz sliedēm un vilciena komponentēm
- Uzturētu pasažieru komfortu
- Nodrošinātu pareizu darbību projektēšanas ātrumos
Dzelzceļa vertikālajiem līkumiem parasti ir lielākas K vērtības nekā ceļiem, jo vilcieniem ir ierobežota spēja pārvietoties cauri stāvām slīpēm.
Lidostas skrejceļa projektēšana
Vertikālie līkumi tiek izmantoti lidostas skrejceļa projektēšanā, lai:
- Nodrošinātu pareizu drenāžu skrejceļa virsmai
- Nodrošinātu pietiekamu redzamības distanci pilotam
- Atbilstu FAA vai starptautisko aviācijas iestāžu prasībām
- Veicinātu vienmērīgu pacelšanos un nolaišanos
Zemes attīstība un vietējā līdzināšana
Attīstot zemi būvniecības projektiem, vertikālie līkumi palīdz:
- Radīt estētiski pievilcīgas zemes formas
- Nodrošinātu pareizu lietusūdens pārvaldību
- Minimizētu zemes darbus
- Nodrošinātu pieejamus maršrutus, kas atbilst ADA prasībām
Lietusūdens pārvaldības sistēmas
Vertikālie līkumi ir būtiski, projektējot:
- Drenāžas kanālus
- Caurtekus
- Lietusūdens aizturēšanas iekārtas
- Kanalizācijas sistēmas
Pareiza vertikālā līkuma projektēšana nodrošina, ka ūdens plūst atbilstošās ātrumos un novērš nogulsnēšanos vai eroziju.
Alternatīvas paraboliskajiem vertikālajiem līkumiem
Lai gan paraboliskie vertikālie līkumi ir standarts lielākajā daļā civilās inženierijas pielietojumu, ir arī alternatīvas:
-
Cirkulārie vertikālie līkumi: Dažkārt izmantoti vecākajos projektos un noteiktās starptautiskajās standartās. Tie nodrošina mainīgu slīpuma izmaiņu ātrumu, kas var būt mazāk ērti vadītājiem.
-
Klothoid vai spirāles līkumi: Dažreiz tiek izmantoti specializētās lietojumprogrammās, kur vēlama pakāpeniski pieaugoša izmaiņu ātruma.
-
Kubiķa parabolas: Retos gadījumos tiek izmantotas īpašās situācijās, kad nepieciešami sarežģītāki līkuma īpašības.
-
Taisnas līnijas pieejas: Ļoti sākotnējās projektēšanas vai ļoti plakanu apvidu gadījumā var izmantot vienkāršas taisnas līnijas savienojumus, nevis patiesus vertikālos līkumus.
Paraboliskais vertikālais līkums joprojām ir standarts lielākajā daļā pielietojumu, pateicoties tā vienkāršībai, konsekventam izmaiņu ātrumam un labi izstrādātām projektēšanas procedūrām.
Vertikālā līkuma projektēšanas vēsture
Vertikālā līkuma projektēšanas metodoloģiju attīstība ir attīstījusies līdz ar transporta inženieriju:
Agrīna ceļu projektēšana (pirms 1900. gada)
Agrīnā ceļu būvē vertikālās izlīdzināšanas bieži noteica dabiskā reljefa ar minimālu griešanu. Kad transportlīdzekļi kļuva ātrāki un izplatītāki, kļuva acīmredzama nepieciešamība pēc zinātniskākām pieejām ceļu projektēšanai.
Parabolisko līkumu attīstība (20. gadsimta sākums)
Paraboliskais vertikālais līkums kļuva par standartu 20. gadsimta sākumā, kad inženieri atzina tā priekšrocības:
- Nemainīgs slīpuma izmaiņu ātrums
- Salīdzinoši vienkāršas matemātiskās īpašības
- Laba komforta un būvniecības līdzsvara
Standartizācija (20. gadsimta vidus)
Līdz 20. gadsimta vidum transporta aģentūras sāka izstrādāt standartizētas pieejas vertikālā līkuma projektēšanai:
- AASHTO (Amerikas valsts šoseju un transporta organizācija) izstrādāja vadlīnijas minimālām K vērtībām, pamatojoties uz apstāšanās redzamības prasībām augšējos līkumos un priekšgaismas redzamības prasībām apakšējos līkumos.
- Līdzīgas normas tika izstrādātas starptautiski.
- Redzamība kļuva par galveno faktoru, nosakot līkuma garumus.
Mūsdienu aprēķinu pieejas (20. gadsimta beigas līdz mūsdienām)
Ar datora parādīšanos vertikālā līkuma projektēšana kļuva sarežģītāka:
- Datorizētā projektēšana (CAD) automatizēja aprēķinus
- 3D modelēšana ļāva labāk vizualizēt un integrēt ar horizontālo izlīdzināšanu
- Optimizācijas algoritmi palīdzēja atrast efektīvākos vertikālos izlīdzinājumus
Šodien vertikālā līkuma projektēšana turpina attīstīties ar jauniem pētījumiem par vadītāju uzvedību, transportlīdzekļu dinamiku un vides apsvērumiem.
Biežāk uzdotie jautājumi
Kas ir K vērtība vertikālā līkuma projektēšanā?
K vērtība attēlo horizontālo distanci, kas nepieciešama, lai sasniegtu 1% slīpuma izmaiņu. To aprēķina, dalot vertikālā līkuma garumu ar absolūto atšķirību starp sākotnējo un beigu slīpēm. Augstākas K vērtības norāda uz plakaniem, pakāpeniskiem līkumiem. Projektēšanas standarti bieži nosaka minimālās K vērtības, pamatojoties uz projektēšanas ātrumu un vai līkums ir augšējais vai apakšējais.
Kā es varu noteikt, vai man nepieciešams augšējais vai apakšējais vertikālais līkums?
Vertikālā līkuma veidu nosaka attiecība starp sākotnējām un beigu slīpēm:
- Ja sākotnējā slīpe ir lielāka par beigu slīpi (g₁ > g₂), jums ir nepieciešams augšējais līkums
- Ja sākotnējā slīpe ir mazāka par beigu slīpi (g₁ < g₂), jums ir nepieciešams apakšējais līkums
- Ja sākotnējās un beigu slīpes ir vienādas (g₁ = g₂), vertikālais līkums nav nepieciešams
Kādu minimālo K vērtību man vajadzētu izmantot savā projektā?
Minimālās K vērtības ir atkarīgas no projektēšanas ātruma, līkuma veida un piemērojamiem projektēšanas standartiem. Piemēram, AASHTO sniedz tabulas minimālām K vērtībām, pamatojoties uz apstāšanās redzamības prasībām augšējos līkumos un priekšgaismas redzamības prasībām apakšējos līkumos. Augstāki projektēšanas ātrumi prasa lielākas K vērtības, lai nodrošinātu drošību.
Kā es varu aprēķināt augsto vai zemo punkta vertikālajā līkumā?
Augstais punkts (augšējos līkumos) vai zems punkts (apakšējos līkumos) notiek, kad slīpe gar līkumu ir vienāda ar nulli. To var aprēķināt, izmantojot formulu:
Augstais/zemais punkts pastāv tikai tad, ja šī stacija atrodas starp PVC un PVT.
Kas notiek, ja sākotnējās un beigu slīpes ir vienādas?
Ja sākotnējās un beigu slīpes ir vienādas, vertikālais līkums nav nepieciešams. Rezultāts ir vienkārša taisna līnija ar nemainīgu slīpi. Šajā gadījumā K vērtība teorētiski būtu bezgalīga.
Kā vertikālie līkumi ietekmē drenāžu?
Vertikālie līkumi ietekmē ūdens plūsmas virzienu un ātrumu uz ceļiem. Augšējie līkumi parasti veicina drenāžu, novirzot ūdeni prom no augstā punkta. Apakšējie līkumi var radīt potenciālas drenāžas problēmas zemajā punktā, bieži prasot papildu drenāžas struktūras, piemēram, ieplūdes vai caurtekus.
Kāda ir atšķirība starp PVI, PVC un PVT?
- PVI (Vertikālās krustojuma punkts): Teorētiskais punkts, kur pagarinātās sākotnējās un beigu slīpes krustojas
- PVC (Vertikālā līkuma punkts): Vertikālā līkuma sākumpunkts
- PVT (Vertikālā taisnes punkts): Vertikālā līkuma beigu punkts
Standarta simetriskajā vertikālajā līkumā PVC atrodas puse līkuma garuma pirms PVI, un PVT atrodas puse līkuma garuma pēc PVI.
Cik precīzi ir vertikālā līkuma aprēķini?
Mūsdienu vertikālā līkuma aprēķini var būt ļoti precīzi, ja tie tiek veikti pareizi. Tomēr būvniecības tolerances, lauka apstākļi un noapaļojumi aprēķinos var ieviest nelielas variācijas. Lielākajā daļā praktisko mērķu aprēķini līdz tuvākajai centimetrā vai simtdaļai pēdas ir pietiekami augstumiem.
Koda piemēri
Šeit ir piemēri, kā aprēķināt vertikālā līkuma parametrus dažādās programmēšanas valodās:
1' Excel VBA funkcija, lai aprēķinātu augstumu jebkurā vertikālā līkuma punktā
2Function VerticalCurveElevation(initialGrade, finalGrade, curveLength, pvcStation, pvcElevation, queryStation)
3 ' Pārvērst slīpes no procentiem uz dekālu
4 Dim g1 As Double
5 Dim g2 As Double
6 g1 = initialGrade / 100
7 g2 = finalGrade / 100
8
9 ' Aprēķināt algebraisko atšķirību slīpumos
10 Dim A As Double
11 A = g2 - g1
12
13 ' Aprēķināt attālumu no PVC
14 Dim x As Double
15 x = queryStation - pvcStation
16
17 ' Pārbaudīt, vai stacija ir līkuma robežās
18 If x < 0 Or x > curveLength Then
19 VerticalCurveElevation = "Ārpus līkuma robežām"
20 Exit Function
21 End If
22
23 ' Aprēķināt augstumu, izmantojot vertikālā līkuma vienādojumu
24 Dim elevation As Double
25 elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength)
26
27 VerticalCurveElevation = elevation
28End Function
29
30' Funkcija, lai aprēķinātu K vērtību
31Function KValue(curveLength, initialGrade, finalGrade)
32 KValue = curveLength / Abs(finalGrade - initialGrade)
33End Function
34
1import math
2
3def calculate_k_value(curve_length, initial_grade, final_grade):
4 """Aprēķināt K vērtību vertikālajā līkumā."""
5 grade_change = abs(final_grade - initial_grade)
6 if grade_change < 0.0001: # Izvairīties no dalīšanas ar nulli
7 return float('inf')
8 return curve_length / grade_change
9
10def calculate_curve_type(initial_grade, final_grade):
11 """Noteikt, vai līkums ir augšējais, apakšējais vai neviens."""
12 if initial_grade > final_grade:
13 return "augšējais"
14 elif initial_grade < final_grade:
15 return "apakšējais"
16 else:
17 return "neviens"
18
19def calculate_elevation_at_station(station, initial_grade, final_grade,
20 pvi_station, pvi_elevation, curve_length):
21 """Aprēķināt augstumu jebkurā stacijā gar vertikālo līkumu."""
22 # Aprēķināt PVC un PVT stacijas
23 pvc_station = pvi_station - curve_length / 2
24 pvt_station = pvi_station + curve_length / 2
25
26 # Pārbaudīt, vai stacija ir līkuma robežās
27 if station < pvc_station or station > pvt_station:
28 return None # Ārpus līkuma robežām
29
30 # Aprēķināt PVC augstumu
31 g1 = initial_grade / 100 # Pārvērst uz dekālu
32 g2 = final_grade / 100 # Pārvērst uz dekālu
33 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
34
35 # Aprēķināt attālumu no PVC
36 x = station - pvc_station
37
38 # Aprēķināt algebraisko atšķirību slīpumos
39 A = g2 - g1
40
41 # Aprēķināt augstumu, izmantojot vertikālā līkuma vienādojumu
42 elevation = pvc_elevation + g1 * x + (A * x * x) / (2 * curve_length)
43
44 return elevation
45
46def calculate_high_low_point(initial_grade, final_grade, pvi_station,
47 pvi_elevation, curve_length):
48 """Aprēķināt augsto vai zemo punktu vertikālajā līkumā, ja tas pastāv."""
49 g1 = initial_grade / 100
50 g2 = final_grade / 100
51
52 # Augstais/zemais punkts pastāv tikai tad, ja slīpes ir pretējas zīmes
53 if g1 * g2 >= 0 and g1 != 0:
54 return None
55
56 # Aprēķināt attālumu no PVC līdz augstajam/zemajam punktam
57 pvc_station = pvi_station - curve_length / 2
58 x = -g1 * curve_length / (g2 - g1)
59
60 # Pārbaudīt, vai augstais/zemais punkts ir līkuma robežās
61 if x < 0 or x > curve_length:
62 return None
63
64 # Aprēķināt augstā/zemā punkta staciju
65 hl_station = pvc_station + x
66
67 # Aprēķināt PVC augstumu
68 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
69
70 # Aprēķināt augstumu augstajā/zemajā punktā
71 A = g2 - g1
72 hl_elevation = pvc_elevation + g1 * x + (A * x * x) / (2 * curve_length)
73
74 return {"stacija": hl_station, "augstums": hl_elevation}
75
1/**
2 * Aprēķināt K vērtību vertikālajā līkumā
3 * @param {number} curveLength - Vertikālā līkuma garums metros
4 * @param {number} initialGrade - Sākotnējā slīpe procentos
5 * @param {number} finalGrade - Beigu slīpe procentos
6 * @returns {number} K vērtība
7 */
8function calculateKValue(curveLength, initialGrade, finalGrade) {
9 const gradeChange = Math.abs(finalGrade - initialGrade);
10 if (gradeChange < 0.0001) {
11 return Infinity; // Vienādu slīpju gadījumā
12 }
13 return curveLength / gradeChange;
14}
15
16/**
17 * Noteikt vertikālā līkuma veidu
18 * @param {number} initialGrade - Sākotnējā slīpe procentos
19 * @param {number} finalGrade - Beigu slīpe procentos
20 * @returns {string} Līkuma veids: "augšējais", "apakšējais" vai "neviens"
21 */
22function determineCurveType(initialGrade, finalGrade) {
23 if (initialGrade > finalGrade) {
24 return "augšējais";
25 } else if (initialGrade < finalGrade) {
26 return "apakšējais";
27 } else {
28 return "neviens";
29 }
30}
31
32/**
33 * Aprēķināt augstumu jebkurā stacijā gar vertikālo līkumu
34 * @param {number} station - Vaicājuma stacija
35 * @param {number} initialGrade - Sākotnējā slīpe procentos
36 * @param {number} finalGrade - Beigu slīpe procentos
37 * @param {number} pviStation - PVI stacija
38 * @param {number} pviElevation - PVI augstums metros
39 * @param {number} curveLength - Vertikālā līkuma garums metros
40 * @returns {number|null} Augstums stacijā vai null, ja ārpus līkuma robežām
41 */
42function calculateElevationAtStation(
43 station,
44 initialGrade,
45 finalGrade,
46 pviStation,
47 pviElevation,
48 curveLength
49) {
50 // Aprēķināt PVC un PVT stacijas
51 const pvcStation = pviStation - curveLength / 2;
52 const pvtStation = pviStation + curveLength / 2;
53
54 // Pārbaudīt, vai stacija ir līkuma robežās
55 if (station < pvcStation || station > pvtStation) {
56 return null; // Ārpus līkuma robežām
57 }
58
59 // Pārvērst slīpes uz dekālu
60 const g1 = initialGrade / 100;
61 const g2 = finalGrade / 100;
62
63 // Aprēķināt PVC augstumu
64 const pvcElevation = pviElevation - (g1 * curveLength / 2);
65
66 // Aprēķināt attālumu no PVC
67 const x = station - pvcStation;
68
69 // Aprēķināt algebraisko atšķirību slīpumos
70 const A = g2 - g1;
71
72 // Aprēķināt augstumu, izmantojot vertikālā līkuma vienādojumu
73 const elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength);
74
75 return elevation;
76}
77
1public class VerticalCurveCalculator {
2 /**
3 * Aprēķināt K vērtību vertikālajā līkumā
4 * @param curveLength Vertikālā līkuma garums metros
5 * @param initialGrade Sākotnējā slīpe procentos
6 * @param finalGrade Beigu slīpe procentos
7 * @return K vērtība
8 */
9 public static double calculateKValue(double curveLength, double initialGrade, double finalGrade) {
10 double gradeChange = Math.abs(finalGrade - initialGrade);
11 if (gradeChange < 0.0001) {
12 return Double.POSITIVE_INFINITY; // Vienādu slīpju gadījumā
13 }
14 return curveLength / gradeChange;
15 }
16
17 /**
18 * Noteikt vertikālā līkuma veidu
19 * @param initialGrade Sākotnējā slīpe procentos
20 * @param finalGrade Beigu slīpe procentos
21 * @return Līkuma veids: "augšējais", "apakšējais" vai "neviens"
22 */
23 public static String determineCurveType(double initialGrade, double finalGrade) {
24 if (initialGrade > finalGrade) {
25 return "augšējais";
26 } else if (initialGrade < finalGrade) {
27 return "apakšējais";
28 } else {
29 return "neviens";
30 }
31 }
32
33 /**
34 * Aprēķināt PVC staciju un augstumu
35 * @param pviStation PVI stacija
36 * @param pviElevation PVI augstums metros
37 * @param initialGrade Sākotnējā slīpe procentos
38 * @param curveLength Vertikālā līkuma garums metros
39 * @return Objekts, kas satur PVC staciju un augstumu
40 */
41 public static Point calculatePVC(double pviStation, double pviElevation,
42 double initialGrade, double curveLength) {
43 double station = pviStation - curveLength / 2;
44 double elevation = pviElevation - (initialGrade / 100) * (curveLength / 2);
45 return new Point(station, elevation);
46 }
47
48 /**
49 * Aprēķināt PVT staciju un augstumu
50 * @param pviStation PVI stacija
51 * @param pviElevation PVI augstums metros
52 * @param finalGrade Beigu slīpe procentos
53 * @param curveLength Vertikālā līkuma garums metros
54 * @return Objekts, kas satur PVT staciju un augstumu
55 */
56 public static Point calculatePVT(double pviStation, double pviElevation,
57 double finalGrade, double curveLength) {
58 double station = pviStation + curveLength / 2;
59 double elevation = pviElevation + (finalGrade / 100) * (curveLength / 2);
60 return new Point(station, elevation);
61 }
62
63 /**
64 * Iekšējā klase, lai attēlotu punktu ar staciju un augstumu
65 */
66 public static class Point {
67 public final double station;
68 public final double elevation;
69
70 public Point(double station, double elevation) {
71 this.station = station;
72 this.elevation = elevation;
73 }
74 }
75}
76
Praktiski piemēri
Piemērs 1: Šosejas augšējā līkuma projektēšana
Šosejas projektēšanai nepieciešams vertikālais līkums, lai pārietu no +3% slīpes uz -2% slīpi. PVI atrodas stacijā 1000+00 ar augstumu 150.00 metri. Projektēšanas ātrums ir 100 km/h, kas prasa minimālu K vērtību 80 saskaņā ar projektēšanas standartiem.
1. solis: Aprēķināt minimālo līkuma garumu
Saistītie Rīki
Atklājiet vairāk rīku, kas varētu būt noderīgi jūsu darbplūsmai