Pystykäyrän laskuri liikennetekniikan projekteille
Laske pystykäyrän parametreja tie- ja rautatieluonnoksissa. Löydä korkeudet, K-arvot, korkeimmat/matalimmat kohdat ja paljon muuta huippu- ja syvännekäyrille liikennetekniikan projekteissa.
Pystysuoran kaaren laskin
Syöttöparametrit
Curve Parameters
PVI Information
Tulokset
Kaaren ominaisuudet
Avainpisteet
Aseman kysely
Visualisointi
Dokumentaatio
Pystykäyrän Laskin Rakennustekniikassa
Johdanto
Pystykäyrän laskin on olennainen työkalu rakennustekniikassa, joka auttaa insinöörejä suunnittelemaan sujuvia siirtymiä eri tien kaltevuuksien välillä. Pystykäyrät ovat parabolisia kaaria, joita käytetään tien ja rautatien suunnittelussa luomaan asteittainen muutos kahden eri kaltevuuden välillä, varmistaen mukautuvat ajolosuhteet ja asianmukaisen vedenpoiston. Tämä laskin yksinkertaistaa monimutkaisia matemaattisia laskelmia, joita tarvitaan pystykäyrien suunnittelussa, ja mahdollistaa rakennusinsinöörien, tie-suunnittelijoiden ja rakennusalan ammattilaisten nopeasti määrittää keskeiset parametrit, kuten kaaren korkeudet, korkeat ja matalat pisteet sekä K-arvot.
Olitpa suunnittelemassa moottoritietä, paikallista tietä tai rautatietä, pystykäyrät ovat kriittisiä turvallisuuden, kuljettajan mukavuuden ja asianmukaisen sadevesien hallinnan kannalta. Tämä kattava laskin käsittelee sekä harjakaaria (missä tie nousee ja sitten laskee) että syväkaaria (missä tie laskee alas ja sitten nousee), tarjoten kaikki olennaiset tiedot, joita tarvitaan asianmukaiseen pystysuuntaiseen linjauksen suunnitteluun liikennetekniikan projekteissa.
Pystykäyrän Perusteet
Mikä on pystykäyrä?
Pystykäyrä on parabolinen kaari, jota käytetään teiden, moottoriteiden, rautateiden ja muiden liikenneinfrastruktuurien pystysuorassa linjauksessa. Se tarjoaa sujuvan siirtymän kahden eri kaltevuuden välillä, eliminoiden äkillisen muutoksen, joka tapahtuisi, jos kaltevuudet kohtaisivat pisteessä. Tämä sujuva siirtymä on olennaista:
- Kuljettajan mukavuus ja turvallisuus
- Riittävä näkyvyys kuljettajille
- Ajoneuvon toimintatehokkuus
- Tehokas vedenpoisto
- Tiealueen esteettinen ulkonäkö
Pystykäyrät ovat tyypillisesti parabolisia muodoltaan, koska paraboli tarjoaa vakaan muutoksen kaltevuudessa, mikä johtaa sujuvaan siirtymään, joka minimoi ajoneuvojen ja matkustajien kokemat voimat.
Pystykäyrän Tyypit
Rakennustekniikassa käytetään kahta päätyyppiä pystykäyriä:
-
Harjakaaret: Nämä tapahtuvat, kun alkuperäinen kaltevuus on suurempi kuin lopullinen kaltevuus (esim. siirtyminen +3 %:sta -2 %:iin). Kaari muodostaa mäen tai korkeapisteen. Harjakaaria suunnitellaan pääasiassa pysäytysnäkyvyyden vaatimusten perusteella.
-
Syväkaaret: Nämä tapahtuvat, kun alkuperäinen kaltevuus on pienempi kuin lopullinen kaltevuus (esim. siirtyminen -2 %:sta +3 %:iin). Kaari muodostaa laakson tai matalapisteen. Syväkaaria suunnitellaan tyypillisesti ajovalon näkyvyyden ja vedenpoiston huomioiden.
Keskeiset Pystykäyrän Parametrit
Pystykäyrän täydelliseen määrittämiseen on määritettävä useita keskeisiä parametreja:
- Alkuperäinen Kaltevuus (g₁): Tien kaltevuus ennen kaareen siirtymistä, ilmaistuna prosentteina
- Lopullinen Kaltevuus (g₂): Tien kaltevuus kaaren jälkeen, ilmaistuna prosentteina
- Kaaren Pituus (L): Vaakasuora etäisyys, jonka yli pystykäyrä ulottuu, mitattuna tyypillisesti metreinä tai jaloina
- PVI (Pystysuoran Leikkauspiste): Teoreettinen piste, jossa kaksi tangenttia kaltevuutta leikkaisivat, jos kaarta ei olisi
- PVC (Pystykäyrän Alkuperäinen Piste): Pystykäyrän aloituspiste
- PVT (Pystykäyrän Päätepiste): Pystykäyrän päättymispiste
- K-arvo: Vaakasuora etäisyys, joka tarvitaan 1 %:n kaltevuuden muutoksen saavuttamiseksi, kaaren tasaisuuden mittari
Matemaattiset Kaavat
Perus Pystykäyrä Kaava
Korkeus missä tahansa pystykäyrän kohdassa voidaan laskea käyttämällä toisen asteen yhtälöä:
Missä:
- = Korkeus etäisyydellä PVC:stä
- = Korkeus PVC:ssä
- = Alkuperäinen kaltevuus (desimaalimuodossa)
- = Etäisyys PVC:stä
- = Kaltevuuksien algebraattinen ero ()
- = Pystykäyrän pituus
K-arvon Laskenta
K-arvo on kaaren tasaisuuden mittari ja se lasketaan seuraavasti:
Missä:
- = Pystykäyrän kaarevuuden nopeus
- = Pystykäyrän pituus
- = Alkuperäinen kaltevuus (prosentteina)
- = Lopullinen kaltevuus (prosentteina)
Korkeammat K-arvot viittaavat tasaisempiin kaariin. Suunnittelustandardit määrittävät usein vähimmäis K-arvot suunnittelunopeuden ja kaaren tyypin perusteella.
Korkean/Matalan Pisteen Laskenta
Harjakaarten, joissa ja , tai syväkaarten, joissa ja , kohdalla on kaaren sisällä korkea tai matala piste. Tämän pisteen asema voidaan laskea seuraavasti:
Tämän korkean/matalan pisteen korkeus lasketaan sitten käyttämällä perus pystykäyräkaavaa.
PVC- ja PVT-Laskennat
Annettaessa PVI-asema ja korkeus, PVC ja PVT voidaan laskea seuraavasti:
Huom: Jakaminen 200:lla korkeuskaavoissa ottaa huomioon kaltevuuden muuntamisen prosentista desimaalimuotoon ja kaaren puolipituuden.
Rajatapaukset
-
Yhtäläiset Kaltevuudet (g₁ = g₂): Kun alkuperäiset ja lopulliset kaltevuudet ovat yhtäläiset, pystykäyrää ei tarvita. K-arvo muuttuu äärettömäksi, ja "kaari" on itse asiassa suora linja.
-
Erittäin Pienet Kaltevuuden Erot: Kun ero kaltevuuksien välillä on erittäin pieni, K-arvo muuttuu erittäin suureksi. Tämä voi vaatia kaaren pituuden säätämistä käytännön toteutusta varten.
-
Nollapituudet: Pystykäyrä, jonka pituus on nolla, ei ole matemaattisesti pätevä ja sitä tulisi välttää suunnittelussa.
Kuinka Käyttää Pystykäyrän Laskinta
Pystykäyrän laskin yksinkertaistaa näitä monimutkaisia laskelmia, jolloin voit nopeasti määrittää kaikki keskeiset parametrit pystykäyräsi suunnittelussa. Tässä on ohjeet sen käyttämiseen:
Vaihe 1: Syötä Perus Kaaren Parametrit
- Syötä Alkuperäinen Kaltevuus (g₁) prosentteina (esim. 2 2 %:n ylöspäin suuntautuvassa kaltevuudessa, -3 3 %:n alaspäin suuntautuvassa kaltevuudessa)
- Syötä Lopullinen Kaltevuus (g₂) prosentteina
- Syötä Kaaren Pituus metreinä
- Määritä PVI-asema (pystysuoran leikkauspisteen arvo)
- Syötä PVI-korkeus metreinä
Vaihe 2: Tarkista Tulokset
Kun olet syöttänyt vaaditut parametrit, laskin laskee automaattisesti ja näyttää:
- Kaaren Tyyppi: Onko kaari harja, syvä vai ei kumpikaan
- K-arvo: Pystykäyrän kaarevuuden nopeus
- PVC-asema ja Korkeus: Kaaren aloituspiste
- PVT-asema ja Korkeus: Kaaren päättymispiste
- Korkea/Matala Piste: Jos soveltuu, korkea tai matala piste kaarella
Vaihe 3: Kysy Erityisiä Asemia
Voit myös kysyä korkeuden missä tahansa erityisessä asemassa kaaren varrella:
- Syötä Kyselyasema -arvo
- Laskin näyttää vastaavan korkeuden kyseisessä asemassa
- Jos asema on kaaren rajoja ulkopuolella, laskin ilmoittaa tästä
Vaihe 4: Visualisoi Kaari
Laskin tarjoaa visuaalisen esityksen pystykäyrästä, joka näyttää:
- Kaaren profiilin
- Keskeiset pisteet (PVC, PVI, PVT)
- Korkean tai matalan pisteen (jos soveltuu)
- Tangentiaaliset kaltevuudet
Tämä visualisointi auttaa sinua ymmärtämään kaaren muotoa ja varmistamaan, että se täyttää suunnitteluvaatimuksesi.
Käyttötapaukset ja Sovellukset
Pystykäyrälaskelmat ovat välttämättömiä monissa rakennustekniikan sovelluksissa:
Moottoritie- ja Tiesuunnittelu
Pystykäyrät ovat perustavanlaatuisia tie- ja moottoritesuunnittelussa, varmistaen turvalliset ja mukautuvat ajolosuhteet. Niitä käytetään:
- Luomaan sujuvia siirtymiä eri tien kaltevuuksien välillä
- Varmistamaan riittävä näkyvyys kuljettajille
- Tarjoamaan asianmukainen vedenpoisto estämään veden kerääntymistä
- Täyttämään suunnittelustandardit ja -määrittelyt eri tie-luokille
Esimerkiksi, kun suunnitellaan moottoritietä, joka tarvitsee ylittää mäkistä maastoa, insinöörien on huolellisesti laskettava pystykäyrät varmistaakseen, että kuljettajilla on riittävä näkyvyys pysähtyä turvallisesti, jos este ilmestyy tielle.
Rautatiesuunnittelu
Rautatietekniikassa pystykäyrät ovat kriittisiä:
- Sujuvan junakäytön varmistamiseksi
- Vähentämään kulumista raiteilla ja junakomponenteissa
- Säilyttämään matkustajien mukavuus
- Mahdollistamaan toiminnan suunnittelunopeuksilla
Rautateiden pystykäyrillä on usein suuremmat K-arvot kuin teillä, koska junien kyky navigoida jyrkkiä kaltevuuden muutoksia on rajoitettu.
Lentokenttäkiitoradan Suunnittelu
Pystykäyrät ovat käytössä lentokenttäkiitoratojen suunnittelussa:
- Varmistamaan kiitoradan pinnan asianmukainen vedenpoisto
- Tarjoamaan riittävä näkyvyys pilottien kannalta
- Täyttämään FAA:n tai kansainvälisen ilmailuviranomaisen vaatimukset
- Mahdollistamaan sujuvat nousut ja laskut
Maankäyttö ja Rakennusmaan Muotoilu
Kun kehitetään maata rakennusprojekteja varten, pystykäyrät auttavat:
- Luomaan esteettisesti miellyttäviä maaston muotoja
- Varmistamaan asianmukaisen sadevesien hallinnan
- Vähentämään maansiirtomääriä
- Tarjoamaan esteettömiä reittejä, jotka täyttävät ADA-vaatimukset
Sadevesien Hallintajärjestelmät
Pystykäyrät ovat välttämättömiä suunniteltaessa:
- Vedenpoistokanavia
- Kulkureittejä
- Sadevesien pidätyslaitoksia
- Viemärijärjestelmiä
Asianmukainen pystykäyräsuunnittelu varmistaa, että vesi virtaa asianmukaisilla nopeuksilla ja estää sedimentaation tai eroosion.
Vaihtoehdot Parabolisille Pystykäyrille
Vaikka paraboliset pystykäyrät ovat standardi useimmissa rakennustekniikan sovelluksissa, on olemassa vaihtoehtoja:
-
Ympyrämuotoiset Pystykäyrät: Käytetään joissakin vanhemmissa suunnitelmissa ja tietyissä kansainvälisissä standardeissa. Ne tarjoavat vaihtelevaa kaltevuuden muutosta, mikä voi olla vähemmän mukavaa kuljettajille.
-
Clothoid- tai Spiraalikaaret: Käytetään joskus erikoissovelluksissa, joissa halutaan asteittain kasvavaa muutosta.
-
Kuutio-parabolat: Käytetään satunnaisesti erityistilanteissa, joissa tarvitaan monimutkaisempia kaariparametreja.
-
Suorat Linja-approksimaatiot: Erittäin alustavissa suunnitelmissa tai hyvin tasaisessa maastossa voidaan käyttää yksinkertaisia suoria yhteyksiä todellisten pystykäyrien sijasta.
Parabolinen pystykäyrä pysyy standardina useimmissa sovelluksissa sen yksinkertaisuuden, johdonmukaisen muutoksen ja hyvin vakiintuneiden suunnittelumenettelyjen vuoksi.
Pystykäyrän Suunnittelun Historia
Pystykäyrän suunnittelumenetelmien kehitys on kehittynyt liikennetekniikan mukana:
Varhaiset Tiesuunnitelmat (ennen 1900-lukua)
Varhaisessa tie rakentamisessa pystysuorat linjaukset määritettiin usein luonnollisen maaston mukaan, ja vain vähän kaivettiin. Kun ajoneuvot tulivat nopeammiksi ja yleisemmiksi, tarve tieteellisemmille lähestymistavoille tie-suunnittelussa tuli ilmeiseksi.
Paraboliset Kaaret (1900-luvun Alussa)
Parabolinen pystykäyrä tuli standardiksi 1900-luvun alussa, kun insinöörit tunnistivat sen edut:
- Vakaa kaltevuuden muutos
- Suhteellisen yksinkertaiset matemaattiset ominaisuudet
- Hyvä tasapaino mukavuuden ja rakennettavuuden välillä
Standardointi (1900-luvun Keskivaiheilla)
1900-luvun keskivaiheilla liikenneviranomaiset alkoivat kehittää standardoituja lähestymistapoja pystykäyrän suunnitteluun:
- AASHTO (American Association of State Highway and Transportation Officials) laati ohjeita vähimmäis K-arvoista pysäytysnäkyvyyden perusteella harjakaarten osalta ja ajovalon näkyvyyden syväkaarten osalta.
- Vastaavia standardeja kehitettiin kansainvälisesti.
- Näkyvyys tuli ensisijaiseksi tekijäksi kaaren pituuden määrittämisessä.
Modernit Laskentamenetelmät (1900-luvun Loppupuolelta Nykyhetkeen)
Tietokoneiden myötä pystykäyrän suunnittelusta tuli monimutkaisempaa:
- Tietokoneavusteinen suunnittelu (CAD) automatisoi laskelmat
- 3D-mallinnus mahdollisti paremman visualisoinnin ja integroinnin vaakasuoran linjauksen kanssa
- Optimointialgoritmit auttoivat löytämään tehokkaimmat pystysuorat linjaukset
Nykyään pystykäyrän suunnittelu jatkaa kehittymistään uusien tutkimusten myötä kuljettajakäyttäytymisestä, ajoneuvodynamiikasta ja ympäristöhuomioista.
Usein Kysytyt Kysymykset
Mikä on K-arvo pystykäyrän suunnittelussa?
K-arvo edustaa vaakasuoraa etäisyyttä, joka tarvitaan 1 %:n kaltevuuden muutoksen saavuttamiseksi. Se lasketaan jakamalla pystykäyrän pituus kaltevuuksien absoluuttisella erolla. Korkeammat K-arvot viittaavat tasaisempiin, asteittaisempiin kaariin. K-arvoja määritellään usein suunnittelustandardeissa pysäytysnäkyvyyden ja ajovalon näkyvyyden perusteella.
Kuinka voin määrittää, tarvitsenko harja- vai syväpystykäyrän?
Pystykäyrän tyyppi riippuu alkuperäisten ja lopullisten kaltevuuksien suhteesta:
- Jos alkuperäinen kaltevuus on suurempi kuin lopullinen kaltevuus (g₁ > g₂), tarvitset harjakaaren
- Jos alkuperäinen kaltevuus on pienempi kuin lopullinen kaltevuus (g₁ < g₂), tarvitset syväkaaren
- Jos alkuperäiset ja lopulliset kaltevuudet ovat yhtäläiset (g₁ = g₂), pystykäyrää ei tarvita
Mitkä ovat vähimmäis K-arvot, joita minun tulisi käyttää suunnittelussani?
Vähimmäis K-arvot riippuvat suunnittelunopeudesta, kaaren tyypistä ja sovellettavista suunnittelustandardeista. Esimerkiksi AASHTO tarjoaa taulukoita vähimmäis K-arvoista pysäytysnäkyvyyden perusteella harjakaarten osalta ja ajovalon näkyvyyden perusteella syväkaarten osalta. Korkeammat suunnittelunopeudet vaativat suurempia K-arvoja turvallisuuden varmistamiseksi.
Kuinka lasken korkeaa tai matalaa pistettä pystykäyrällä?
Korkea piste (harjakaarten osalta) tai matala piste (syväkaarten osalta) esiintyy, kun kaaren kaltevuus on nolla. Tämä voidaan laskea kaavalla:
Korkea/matala piste esiintyy vain kaaren sisällä, jos tämä asema on PVC:n ja PVT:n välillä.
Mitä tapahtuu, jos alkuperäiset ja lopulliset kaltevuudet ovat yhtäläiset?
Jos alkuperäiset ja lopulliset kaltevuudet ovat yhtäläiset, pystykäyrää ei tarvita. Tuloksena on yksinkertainen suora linja, jossa on vakio kaltevuus. Tässä tapauksessa K-arvo olisi teoreettisesti äärettömän suuri.
Kuinka pystykäyrät vaikuttavat vedenpoistoon?
Pystykäyrät vaikuttavat veden virtaussuuntaan ja -nopeuteen teillä. Harjakaaret helpottavat vedenpoistoa ohjaamalla vettä pois korkeasta pisteestä. Syväkaaret voivat luoda mahdollisia vedenpoisto-ongelmia matalassa pisteessä, mikä usein vaatii lisävesirakenteita, kuten kaivoja tai kulkuja.
Mikä on ero PVI:n, PVC:n ja PVT:n välillä?
- PVI (Pystysuoran Leikkauspiste): Teoreettinen piste, jossa laajennetut alkuperäiset ja lopulliset kaltevuuslinjat leikkaavat
- PVC (Pystykäyrän Alkuperäinen Piste): Pystykäyrän aloituspiste
- PVT (Pystykäyrän Päätepiste): Pystykäyrän päättymispiste
Tavallisessa symmetrisessä pystykäyrässä PVC sijaitsee PVI:stä kaaren pituuden puolivälin verran ennen, ja PVT sijaitsee kaaren pituuden puolivälin verran jälkeen.
Kuinka tarkkoja pystykäyrälaskelmat ovat?
Nykyiset pystykäyrälaskelmat voivat olla erittäin tarkkoja, kun ne suoritetaan oikein. Kuitenkin rakennustoleranssit, kenttäolosuhteet ja laskelmien pyöristys voivat aiheuttaa pieniä vaihteluita. Useimmissa käytännön tarkoituksissa korkeuden laskeminen lähimpään senttimetriin tai sadasosaan jalkaa on riittävä.
Koodiesimerkit
Tässä on esimerkkejä siitä, kuinka laskelmat pystykäyrän parametreista voidaan tehdä eri ohjelmointikielillä:
1' Excel VBA -toiminto, joka laskee korkeuden missä tahansa pystykäyrän kohdassa
2Function VerticalCurveElevation(initialGrade, finalGrade, curveLength, pvcStation, pvcElevation, queryStation)
3 ' Muunna kaltevuudet prosentista desimaalimuotoon
4 Dim g1 As Double
5 Dim g2 As Double
6 g1 = initialGrade / 100
7 g2 = finalGrade / 100
8
9 ' Laske kaltevuuksien algebraattinen ero
10 Dim A As Double
11 A = g2 - g1
12
13 ' Laske etäisyys PVC:stä
14 Dim x As Double
15 x = queryStation - pvcStation
16
17 ' Tarkista, onko asema kaaren rajoilla
18 If x < 0 Or x > curveLength Then
19 VerticalCurveElevation = "Kaaren rajoilla"
20 Exit Function
21 End If
22
23 ' Laske korkeus pystykäyräkaavan avulla
24 Dim elevation As Double
25 elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength)
26
27 VerticalCurveElevation = elevation
28End Function
29
30' Toiminto K-arvon laskemiseen
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 """Lasketaan pystykäyrän K-arvo."""
5 grade_change = abs(final_grade - initial_grade)
6 if grade_change < 0.0001: # Vältä nollalla jakamista
7 return float('inf')
8 return curve_length / grade_change
9
10def calculate_curve_type(initial_grade, final_grade):
11 """Määritetään, onko kaari harja, syvä vai ei kumpikaan."""
12 if initial_grade > final_grade:
13 return "harja"
14 elif initial_grade < final_grade:
15 return "syvä"
16 else:
17 return "ei kumpikaan"
18
19def calculate_elevation_at_station(station, initial_grade, final_grade,
20 pvi_station, pvi_elevation, curve_length):
21 """Lasketaan korkeus missä tahansa asemassa pystykäyrällä."""
22 # Laske PVC- ja PVT-asemat
23 pvc_station = pvi_station - curve_length / 2
24 pvt_station = pvi_station + curve_length / 2
25
26 # Tarkista, onko asema kaaren rajoilla
27 if station < pvc_station or station > pvt_station:
28 return None # Kaaren rajoilla
29
30 # Laske PVC:n korkeus
31 g1 = initial_grade / 100 # Muunna desimaalimuotoon
32 g2 = final_grade / 100 # Muunna desimaalimuotoon
33 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
34
35 # Laske etäisyys PVC:stä
36 x = station - pvc_station
37
38 # Laske kaltevuuksien algebraattinen ero
39 A = g2 - g1
40
41 # Laske korkeus pystykäyräkaavan avulla
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 """Lasketaan kaaren korkea tai matala piste, jos se on olemassa."""
49 g1 = initial_grade / 100
50 g2 = final_grade / 100
51
52 # Korkea/matala piste esiintyy vain, jos kaltevuudet ovat vastakkaisia
53 if g1 * g2 >= 0 and g1 != 0:
54 return None
55
56 # Laske etäisyys PVC:stä korkean/matalan pisteen kohdalla
57 pvc_station = pvi_station - curve_length / 2
58 x = -g1 * curve_length / (g2 - g1)
59
60 # Tarkista, onko korkea/matala piste kaaren rajoilla
61 if x < 0 or x > curve_length:
62 return None
63
64 # Laske korkean/matalan pisteen asema
65 hl_station = pvc_station + x
66
67 # Laske PVC:n korkeus
68 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
69
70 # Laske korkeus korkealla/matalalla pisteellä
71 A = g2 - g1
72 hl_elevation = pvc_elevation + g1 * x + (A * x * x) / (2 * curve_length)
73
74 return {"asema": hl_station, "korkeus": hl_elevation}
75
1/**
2 * Laske K-arvo pystykäyrälle
3 * @param {number} curveLength - Pystykäyrän pituus metreinä
4 * @param {number} initialGrade - Alkuperäinen kaltevuus prosentteina
5 * @param {number} finalGrade - Lopullinen kaltevuus prosentteina
6 * @returns {number} K-arvo
7 */
8function calculateKValue(curveLength, initialGrade, finalGrade) {
9 const gradeChange = Math.abs(finalGrade - initialGrade);
10 if (gradeChange < 0.0001) {
11 return Infinity; // Yhtäläisten kaltevuuksien kohdalla
12 }
13 return curveLength / gradeChange;
14}
15
16/**
17 * Määritä pystykäyrän tyyppi
18 * @param {number} initialGrade - Alkuperäinen kaltevuus prosentteina
19 * @param {number} finalGrade - Lopullinen kaltevuus prosentteina
20 * @returns {string} Kaaren tyyppi: "harja", "syvä" tai "ei kumpikaan"
21 */
22function determineCurveType(initialGrade, finalGrade) {
23 if (initialGrade > finalGrade) {
24 return "harja";
25 } else if (initialGrade < finalGrade) {
26 return "syvä";
27 } else {
28 return "ei kumpikaan";
29 }
30}
31
32/**
33 * Laske korkeus missä tahansa pystykäyrän asemassa
34 * @param {number} station - Kyselyasema
35 * @param {number} initialGrade - Alkuperäinen kaltevuus prosentteina
36 * @param {number} finalGrade - Lopullinen kaltevuus prosentteina
37 * @param {number} pviStation - PVI-asema
38 * @param {number} pviElevation - PVI-korkeus metreinä
39 * @param {number} curveLength - Pystykäyrän pituus metreinä
40 * @returns {number|null} Korkeus asemassa tai null, jos kaaren rajoilla
41 */
42function calculateElevationAtStation(
43 station,
44 initialGrade,
45 finalGrade,
46 pviStation,
47 pviElevation,
48 curveLength
49) {
50 // Laske PVC- ja PVT-asemat
51 const pvcStation = pviStation - curveLength / 2;
52 const pvtStation = pviStation + curveLength / 2;
53
54 // Tarkista, onko asema kaaren rajoilla
55 if (station < pvcStation || station > pvtStation) {
56 return null; // Kaaren rajoilla
57 }
58
59 // Muunna kaltevuudet desimaalimuotoon
60 const g1 = initialGrade / 100;
61 const g2 = finalGrade / 100;
62
63 // Laske PVC:n korkeus
64 const pvcElevation = pviElevation - (g1 * curveLength / 2);
65
66 // Laske etäisyys PVC:stä
67 const x = station - pvcStation;
68
69 // Laske kaltevuuksien algebraattinen ero
70 const A = g2 - g1;
71
72 // Laske korkeus pystykäyräkaavan avulla
73 const elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength);
74
75 return elevation;
76}
77
1public class VerticalCurveCalculator {
2 /**
3 * Laske K-arvo pystykäyrälle
4 * @param curveLength Pystykäyrän pituus metreinä
5 * @param initialGrade Alkuperäinen kaltevuus prosentteina
6 * @param finalGrade Lopullinen kaltevuus prosentteina
7 * @return K-arvo
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; // Yhtäläisten kaltevuuksien kohdalla
13 }
14 return curveLength / gradeChange;
15 }
16
17 /**
18 * Määritä pystykäyrän tyyppi
19 * @param initialGrade Alkuperäinen kaltevuus prosentteina
20 * @param finalGrade Lopullinen kaltevuus prosentteina
21 * @return Kaaren tyyppi: "harja", "syvä" tai "ei kumpikaan"
22 */
23 public static String determineCurveType(double initialGrade, double finalGrade) {
24 if (initialGrade > finalGrade) {
25 return "harja";
26 } else if (initialGrade < finalGrade) {
27 return "syvä";
28 } else {
29 return "ei kumpikaan";
30 }
31 }
32
33 /**
34 * Laske PVC-asema ja korkeus
35 * @param pviStation PVI-asema
36 * @param pviElevation PVI-korkeus metreinä
37 * @param initialGrade Alkuperäinen kaltevuus prosentteina
38 * @param curveLength Pystykäyrän pituus metreinä
39 * @return Olio, joka sisältää PVC:n aseman ja korkeuden
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 * Laske PVT-asema ja korkeus
50 * @param pviStation PVI-asema
51 * @param pviElevation PVI-korkeus metreinä
52 * @param finalGrade Lopullinen kaltevuus prosentteina
53 * @param curveLength Pystykäyrän pituus metreinä
54 * @return Olio, joka sisältää PVT:n aseman ja korkeuden
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 * Sisäinen luokka, joka edustaa pistettä, jossa on asema ja korkeus
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
Käytännön Esimerkit
Esimerkki 1: Moottoritien Harjakaaren Suunnittelu
Moottoritie suunnitelma vaatii pystykäyrän siirtymään +3 %:n kaltevuudesta -2 %:n kaltevuuteen. PVI sijaitsee asemassa 1000+00 korkeudella 150.00 metriä. Suunnittelunopeus on 100 km/h, mikä vaatii vähimmäis K-arvon 80 suunnittelustandardien mukaan.
Vaihe 1: Laske vähimmäispituus
Liittyvät Työkalut
Löydä lisää työkaluja, jotka saattavat olla hyödyllisiä työnkulullesi