Calculator de Curbe Verticale pentru Proiecte de Inginerie Civilă
Calculează parametrii curbelor verticale pentru proiectarea drumurilor și căilor ferate. Găsește înălțimi, valori K, puncte înalte/scăzute și multe altele pentru curbele de vârf și de adâncire în proiectele de transport.
Calculator de Curbe Verticale
Parametrii de Intrare
Curve Parameters
PVI Information
Rezultate
Caracteristici ale Curbei
Puncte Cheie
Interogare Stație
Vizualizare
Documentație
Calculator de Curbe Verticale pentru Inginerie Civilă
Introducere
Un calculator de curbe verticale este un instrument esențial în ingineria civilă care ajută inginerii să proiecteze tranziții line între diferite grade de drum. Curbele verticale sunt curbe parabolice folosite în proiectarea drumurilor și căilor ferate pentru a crea o schimbare treptată între două pante sau grade diferite, asigurând condiții de conducere confortabile și o drenare corespunzătoare. Acest calculator simplifică calculele matematice complexe necesare pentru proiectarea curbelor verticale, permițând inginerilor civili, proiectanților de drumuri și profesioniștilor din construcții să determine rapid parametrii cheie, cum ar fi înălțimile curbelor, punctele înalte și joase și valorile K.
Indiferent dacă proiectați o autostradă, un drum local sau o cale ferată, curbele verticale sunt critice pentru siguranță, confortul șoferului și o gestionare adecvată a apelor pluviale. Acest calculator cuprinzător se ocupă atât de curbele de vârf (unde drumul se ridică apoi coboară), cât și de curbele de adâncire (unde drumul coboară apoi se ridică), oferind toate informațiile esențiale necesare pentru un proiect de aliniere verticală corespunzător în proiectele de inginerie a transporturilor.
Fundamentele Curbelor Verticale
Ce este o Curba Verticală?
O curba verticală este o curbă parabolică folosită în alinierea verticală a drumurilor, autostrăzilor, căilor ferate și altor infrastructuri de transport. Aceasta oferă o tranziție lină între două grade sau pante diferite, eliminând schimbarea bruscă care ar avea loc dacă gradele s-ar întâlni într-un punct. Această tranziție lină este esențială pentru:
- Confortul și siguranța șoferului
- Distanța corespunzătoare de vizibilitate pentru șoferi
- Eficiența operării vehiculului
- Drenajul eficient
- Aspectul estetic al drumului
Curbele verticale sunt de obicei de formă parabolică deoarece o parabolă oferă o rată constantă de schimbare a gradei, rezultând o tranziție lină care minimizează forțele resimțite de vehicule și pasageri.
Tipuri de Curbe Verticale
Există două tipuri principale de curbe verticale utilizate în ingineria civilă:
-
Curbe de Vârf: Acestea apar atunci când gradul inițial este mai mare decât gradul final (de exemplu, trecând de la +3% la -2%). Curba formează un deal sau un punct înalt. Curbele de vârf sunt proiectate în principal pe baza cerințelor de distanță de oprire.
-
Curbe de Adâncire: Acestea apar atunci când gradul inițial este mai mic decât gradul final (de exemplu, trecând de la -2% la +3%). Curba formează o vale sau un punct jos. Curbele de adâncire sunt de obicei proiectate pe baza distanței de vizibilitate a farurilor și a considerațiilor de drenaj.
Parametrii Cheie ai Curbelor Verticale
Pentru a defini complet o curbă verticală, trebuie să fie stabiliți mai mulți parametri cheie:
- Gradul Inițial (g₁): Panta drumului înainte de a intra în curbă, exprimată ca procent
- Gradul Final (g₂): Panta drumului după ce a ieșit din curbă, exprimată ca procent
- Lungimea Curbei (L): Distanța orizontală pe care se extinde curba verticală, măsurată de obicei în metri sau picioare
- PVI (Punctul de Intersecție Verticală): Punctul teoretic în care cele două grade tangente s-ar intersecta dacă nu ar exista curbă
- PVC (Punctul de Curba Verticală): Punctul de început al curbei verticale
- PVT (Punctul de Tangentă Verticală): Punctul de sfârșit al curbei verticale
- Valoarea K: Distanța orizontală necesară pentru a obține o schimbare de 1% în grad, o măsură a aplatizării curbei
Formulele Matematice
Ecuația de Bază a Curbei Verticale
Înălțimea la orice punct de-a lungul unei curbe verticale poate fi calculată folosind ecuația quadratică:
Unde:
- = Înălțimea la distanța de la PVC
- = Înălțimea la PVC
- = Gradul inițial (forma zecimală)
- = Distanța de la PVC
- = Diferența algebraică în grade ()
- = Lungimea curbei verticale
Calculul Valorii K
Valoarea K este o măsură a aplatizării curbei și este calculată ca:
Unde:
- = Rata curburii verticale
- = Lungimea curbei verticale
- = Gradul inițial (procent)
- = Gradul final (procent)
Valorile K mai mari indică curbe mai plate. Standardele de proiectare specifică adesea valori K minime bazate pe viteza de proiectare și tipul curbei.
Calculul Punctelor Înalte/Jos
Pentru curbele de vârf unde și , sau curbele de adâncire unde și , va exista un punct înalt sau jos în cadrul curbei. Stația acestui punct poate fi calculată ca:
Înălțimea la acest punct înalt/jos este apoi calculată folosind ecuația de bază a curbei verticale.
Calculul PVC și PVT
Având stația și înălțimea PVI, PVC și PVT pot fi calculate ca:
Notă: Împărțirea la 200 în formulele de înălțime ține cont de conversia gradului din procent în formă zecimală și de jumătatea lungimii curbei.
Cazuri Limite
-
Grade Egale (g₁ = g₂): Atunci când gradele inițial și final sunt egale, nu este necesară nicio curbă verticală. Valoarea K devine infinită, iar "curba" este de fapt o linie dreaptă.
-
Diferențe de Grad Foarte Mici: Atunci când diferența dintre grade este foarte mică, valoarea K devine foarte mare. Acest lucru poate necesita ajustări ale lungimii curbei pentru implementare practică.
-
Curbe cu Lungime Zero: O curbă verticală cu lungime zero nu este validă din punct de vedere matematic și ar trebui evitată în proiectare.
Cum să Folosiți Calculatorul de Curbe Verticale
Calculatorul nostru de curbe verticale simplifică aceste calcule complexe, permițându-vă să determinați rapid toți parametrii cheie pentru proiectarea curbei verticale. Iată cum să-l utilizați:
Pasul 1: Introduceți Parametrii de Bază ai Curbei
- Introduceți Gradul Inițial (g₁) în formă procentuală (de exemplu, 2 pentru o pantă ascendentă de 2%, -3 pentru o pantă descendentă de 3%)
- Introduceți Gradul Final (g₂) în formă procentuală
- Introduceți Lungimea Curbei în metri
- Specificați Stația PVI (valoarea stației la punctul de intersecție verticală)
- Introduceți Înălțimea PVI în metri
Pasul 2: Revizuiți Rezultatele
După introducerea parametrilor necesari, calculatorul va calcula și va afișa automat:
- Tipul Curbei: Dacă curba este de vârf, de adâncire sau niciuna
- Valoarea K: Rata curburii verticale
- Stația și Înălțimea PVC: Punctul de început al curbei
- Stația și Înălțimea PVT: Punctul de sfârșit al curbei
- Punctul Înalt/Jos: Dacă este cazul, stația și înălțimea punctului cel mai înalt sau cel mai jos de pe curbă
Pasul 3: Interogați Stații Specifice
De asemenea, puteți interoga înălțimea la orice stație specifică de-a lungul curbei:
- Introduceți valoarea Stației de Interogare
- Calculatorul va afișa înălțimea corespunzătoare la acea stație
- Dacă stația este în afara limitelor curbei, calculatorul va indica acest lucru
Pasul 4: Vizualizați Curba
Calculatorul oferă o reprezentare vizuală a curbei verticale, arătând:
- Profilul curbei
- Punctele cheie (PVC, PVI, PVT)
- Punctul înalt sau jos (dacă este cazul)
- Gradele tangente
Această vizualizare vă ajută să înțelegeți forma curbei și să verificați că aceasta îndeplinește cerințele de proiectare.
Cazuri de Utilizare și Aplicații
Calculul curbelor verticale este esențial în numeroase aplicații de inginerie civilă:
Proiectarea Drumurilor și Autostrăzilor
Curbele verticale sunt componente fundamentale ale proiectării drumurilor, asigurând condiții de conducere sigure și confortabile. Ele sunt utilizate pentru:
- Crearea de tranziții line între diferite grade de drum
- Asigurarea unei distanțe adecvate de vizibilitate pentru șoferi
- Oferirea unui drenaj corespunzător pentru a preveni acumularea de apă
- Respectarea standardelor de proiectare și specificațiilor pentru diferite clasificări de drumuri
De exemplu, atunci când se proiectează o autostradă care trebuie să traverseze un teren deluros, inginerii trebuie să calculeze cu atenție curbele verticale pentru a se asigura că șoferii au o distanță de vizibilitate suficientă pentru a opri în siguranță dacă apare un obstacol pe drum.
Proiectarea Căilor Ferate
În ingineria feroviară, curbele verticale sunt critice pentru:
- Asigurarea unei funcționări line a trenului
- Minimizarea uzurii pe șine și componentele trenului
- Menținerea confortului pasagerilor
- Permite operarea corespunzătoare la viteze de proiectare
Curbele verticale feroviare au adesea valori K mai mari decât drumurile datorită capacității limitate a trenurilor de a naviga schimbări abrupte de grad.
Proiectarea Pistei Aeroporturilor
Curbele verticale sunt utilizate în proiectarea pistelor aeroporturilor pentru:
- Asigurarea drenajului corespunzător al suprafeței pistei
- Oferirea unei distanțe adecvate de vizibilitate pentru piloți
- Respectarea cerințelor FAA sau ale autorităților internaționale de aviație
- Facilitarea decolărilor și aterizărilor line
Dezvoltarea Terenurilor și Nivelarea Sitului
Atunci când se dezvoltă terenuri pentru proiecte de construcție, curbele verticale ajută la:
- Crearea de forme de teren estetic plăcute
- Asigurarea unei gestionări adecvate a apelor pluviale
- Minimizarea cantităților de lucrări de pământ
- Oferirea de rute accesibile care respectă cerințele ADA
Sisteme de Gestionare a Apelor Pluviale
Curbele verticale sunt esențiale în proiectarea:
- Canale de drenaj
- Canalizări
- Facilități de detenție a apelor pluviale
- Sisteme de canalizare
Proiectarea corespunzătoare a curbelor verticale asigură că apa curge la viteze adecvate și previne sedimentarea sau eroziunea.
Alternative la Curbele Verticale Parabolice
Deși curbele verticale parabolice sunt standardul în majoritatea aplicațiilor de inginerie civilă, există alternative:
-
Curbe Circulare Verticale: Folosite în unele proiecte mai vechi și în anumite standarde internaționale. Acestea oferă o rată variabilă de schimbare a gradei, ceea ce poate fi mai puțin confortabil pentru șoferi.
-
Curbe Clotoide sau Spiralice: Folosite uneori în aplicații specializate unde se dorește o rată de schimbare gradual crescătoare.
-
Parabole Cubice: Folosite ocazional pentru situații speciale în care sunt necesare proprietăți mai complexe ale curbei.
-
Aproximări cu Linia Dreaptă: În proiectele foarte preliminare sau pentru terenuri foarte plate, pot fi folosite conexiuni simple cu linia dreaptă în loc de curbe verticale adevărate.
Curba verticală parabolică rămâne standardul pentru cele mai multe aplicații datorită simplității sale, ratei constante de schimbare și procedurilor de proiectare bine stabilite.
Istoria Proiectării Curbelor Verticale
Dezvoltarea metodologiilor de proiectare a curbelor verticale a evoluat odată cu ingineria transporturilor:
Proiectarea Drumurilor Timpurie (Pre-1900)
În construcția drumurilor timpurii, aliniamentele verticale erau adesea determinate de terenul natural cu o gradare minimă. Pe măsură ce vehiculele deveneau mai rapide și mai comune, necesitatea unor abordări mai științifice în proiectarea drumurilor devenea evidentă.
Dezvoltarea Curbelor Parabolice (Începutul anilor 1900)
Curba verticală parabolică a devenit standard în începutul secolului XX, pe măsură ce inginerii au recunoscut avantajele sale:
- Rată constantă de schimbare a gradei
- Proprietăți matematice relativ simple
- Bună echilibrare a confortului și constructibilității
Standardizarea (Mijlocul anilor 1900)
Până în mijlocul secolului XX, agențiile de transport au început să dezvolte abordări standardizate pentru proiectarea curbelor verticale:
- AASHTO (Asociația Americană a Drumurilor de Stat și Transporturilor) a stabilit ghiduri pentru valorile K minime bazate pe distanța de oprire
- Standardele similare au fost dezvoltate internațional
- Distanța de vizibilitate a devenit un factor principal în determinarea lungimii curbelor
Abordări Computaționale Moderne (Sfârșitul anilor 1900 până în Prezent)
Odată cu apariția calculatoarelor, proiectarea curbelor verticale a devenit mai sofisticată:
- Software-ul de proiectare asistată de calculator (CAD) a automatizat calculele
- Modelarea 3D a permis o mai bună vizualizare și integrare cu aliniamentul orizontal
- Algoritmii de optimizare au ajutat la găsirea celor mai eficiente aliniamente verticale
Astăzi, proiectarea curbelor verticale continuă să evolueze cu noi cercetări asupra comportamentului șoferilor, dinamicii vehiculului și considerațiilor de mediu.
Întrebări Frecvente
Ce este o valoare K în proiectarea curbelor verticale?
Valoarea K reprezintă distanța orizontală necesară pentru a obține o schimbare de 1% în grad. Este calculată prin împărțirea lungimii curbei verticale la diferența absolută între gradele inițial și final. Valorile K mai mari indică curbe mai plate. Valorile K sunt adesea specificate în standardele de proiectare pe baza vitezei de proiectare și a tipului curbei.
Cum determin dacă am nevoie de o curbă verticală de vârf sau de adâncire?
Tipul curbei verticale depinde de relația dintre gradele inițial și final:
- Dacă gradul inițial este mai mare decât gradul final (g₁ > g₂), aveți nevoie de o curbă de vârf
- Dacă gradul inițial este mai mic decât gradul final (g₁ < g₂), aveți nevoie de o curbă de adâncire
- Dacă gradele inițial și final sunt egale (g₁ = g₂), nu este necesară nicio curbă verticală
Ce valoare K minimă ar trebui să folosesc pentru proiectarea mea?
Valorile K minime depind de viteza de proiectare, tipul curbei și standardele de proiectare aplicabile. De exemplu, AASHTO oferă tabele de valori K minime pe baza distanței de vizibilitate pentru curbele de vârf și a distanței de vizibilitate a farurilor pentru curbele de adâncire. Vitezele de proiectare mai mari necesită valori K mai mari pentru a asigura siguranța.
Cum calculez punctul înalt sau jos al unei curbe verticale?
Punctul înalt (pentru curbele de vârf) sau punctul jos (pentru curbele de adâncire) apare atunci când gradul de-a lungul curbei este egal cu zero. Acesta poate fi calculat folosind formula:
Punctul înalt/jos există doar în cadrul curbei dacă această stație se află între PVC și PVT.
Ce se întâmplă dacă gradele inițial și final sunt egale?
Dacă gradele inițial și final sunt egale, nu este necesară nicio curbă verticală. Rezultatul este pur și simplu o linie dreaptă cu o pantă constantă. În acest caz, valoarea K ar fi teoretic infinită.
Cum afectează curbele verticale confortul șoferului?
Curbele verticale mai lungi oferă tranziții mai graduale între grade, rezultând un confort mai mare pentru șoferi. Curbele verticale mai scurte pot crea schimbări bruște în accelerația verticală, ceea ce poate fi incomod pentru șoferi și pasageri. Lungimea curbei adecvate depinde de viteza de proiectare, diferența de grad și constrângerile site-ului.
Pot curbele verticale avea lungime zero?
Din punct de vedere matematic, o curbă verticală nu poate avea lungime zero, deoarece acest lucru ar crea o schimbare instantanee în grad, care nu este o curbă. În practică, curbele verticale foarte scurte pot fi utilizate în medii cu viteză mică, dar ar trebui să aibă totuși o lungime suficientă pentru a oferi o tranziție lină.
Cum afectează curbele verticale drenajul?
Curbele verticale influențează direcția și viteza fluxului de apă pe drumuri. Curbele de vârf facilitează de obicei drenajul prin direcționarea apei departe de punctul înalt. Curbele de adâncire pot crea probleme potențiale de drenaj la punctul jos, necesitând adesea structuri de drenaj suplimentare, cum ar fi inele sau canalizări.
Care este diferența dintre PVI, PVC și PVT?
- PVI (Punctul de Intersecție Verticală): Punctul teoretic în care liniile de grad extinse inițial și final s-ar intersecta
- PVC (Punctul de Curba Verticală): Punctul de început al curbei verticale
- PVT (Punctul de Tangentă Verticală): Punctul de sfârșit al curbei verticale
Într-o curbă verticală simetrică standard, PVC este situat la jumătatea lungimii curbei înainte de PVI, iar PVT este situat la jumătatea lungimii curbei după PVI.
Cât de precise sunt calculele curbelor verticale?
Calculele moderne ale curbelor verticale pot fi extrem de precise atunci când sunt efectuate corect. Cu toate acestea, toleranțele de construcție, condițiile de teren și rotunjirile în calcule pot introduce variații mici. Pentru cele mai multe scopuri practice, calculele la cea mai apropiată centimetru sau sutime de picior sunt suficiente pentru înălțimi.
Exemple de Cod
Iată exemple de cum să calculați parametrii curbelor verticale în diferite limbaje de programare:
1' Funcție Excel VBA pentru a calcula înălțimea la orice punct de pe o curbă verticală
2Function VerticalCurveElevation(initialGrade, finalGrade, curveLength, pvcStation, pvcElevation, queryStation)
3 ' Convertiți gradele din procent în zecimal
4 Dim g1 As Double
5 Dim g2 As Double
6 g1 = initialGrade / 100
7 g2 = finalGrade / 100
8
9 ' Calculați diferența algebraică în grade
10 Dim A As Double
11 A = g2 - g1
12
13 ' Calculați distanța de la PVC
14 Dim x As Double
15 x = queryStation - pvcStation
16
17 ' Verificați dacă stația este în limitele curbei
18 If x < 0 Or x > curveLength Then
19 VerticalCurveElevation = "În afara limitelor curbei"
20 Exit Function
21 End If
22
23 ' Calculați înălțimea folosind ecuația curbei verticale
24 Dim elevation As Double
25 elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength)
26
27 VerticalCurveElevation = elevation
28End Function
29
30' Funcție pentru a calcula valoarea K
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 """Calculați valoarea K a unei curbe verticale."""
5 grade_change = abs(final_grade - initial_grade)
6 if grade_change < 0.0001: # Evitați divizarea cu zero
7 return float('inf')
8 return curve_length / grade_change
9
10def calculate_curve_type(initial_grade, final_grade):
11 """Determinați dacă curba este de vârf, de adâncire sau niciuna."""
12 if initial_grade > final_grade:
13 return "vârf"
14 elif initial_grade < final_grade:
15 return "adâncire"
16 else:
17 return "niciuna"
18
19def calculate_elevation_at_station(station, initial_grade, final_grade,
20 pvi_station, pvi_elevation, curve_length):
21 """Calculați înălțimea la orice stație de-a lungul unei curbe verticale."""
22 # Calculați stațiile PVC și PVT
23 pvc_station = pvi_station - curve_length / 2
24 pvt_station = pvi_station + curve_length / 2
25
26 # Verificați dacă stația este în limitele curbei
27 if station < pvc_station or station > pvt_station:
28 return None # În afara limitelor curbei
29
30 # Calculați înălțimea PVC
31 g1 = initial_grade / 100 # Convertiți în zecimal
32 g2 = final_grade / 100 # Convertiți în zecimal
33 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
34
35 # Calculați distanța de la PVC
36 x = station - pvc_station
37
38 # Calculați diferența algebraică în grade
39 A = g2 - g1
40
41 # Calculați înălțimea folosind ecuația curbei verticale
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 """Calculați punctul înalt sau jos al unei curbe verticale, dacă există."""
49 g1 = initial_grade / 100
50 g2 = final_grade / 100
51
52 # Punctul înalt/jos există doar dacă gradele au semne opuse
53 if g1 * g2 >= 0 and g1 != 0:
54 return None
55
56 # Calculați distanța de la PVC la punctul înalt/jos
57 pvc_station = pvi_station - curve_length / 2
58 x = -g1 * curve_length / (g2 - g1)
59
60 # Verificați dacă punctul înalt/jos se află în limitele curbei
61 if x < 0 or x > curve_length:
62 return None
63
64 # Calculați stația punctului înalt/jos
65 hl_station = pvc_station + x
66
67 # Calculați înălțimea PVC
68 pvc_elevation = pvi_elevation - (g1 * curve_length / 2)
69
70 # Calculați înălțimea la punctul înalt/jos
71 A = g2 - g1
72 hl_elevation = pvc_elevation + g1 * x + (A * x * x) / (2 * curve_length)
73
74 return {"stație": hl_station, "înălțime": hl_elevation}
75
1/**
2 * Calculați valoarea K pentru o curbă verticală
3 * @param {number} curveLength - Lungimea curbei verticale în metri
4 * @param {number} initialGrade - Gradul inițial în procent
5 * @param {number} finalGrade - Gradul final în procent
6 * @returns {number} Valoarea K
7 */
8function calculateKValue(curveLength, initialGrade, finalGrade) {
9 const gradeChange = Math.abs(finalGrade - initialGrade);
10 if (gradeChange < 0.0001) {
11 return Infinity; // Pentru grade egale
12 }
13 return curveLength / gradeChange;
14}
15
16/**
17 * Determinați tipul curbei verticale
18 * @param {number} initialGrade - Gradul inițial în procent
19 * @param {number} finalGrade - Gradul final în procent
20 * @returns {string} Tipul curbei: "vârf", "adâncire" sau "niciuna"
21 */
22function determineCurveType(initialGrade, finalGrade) {
23 if (initialGrade > finalGrade) {
24 return "vârf";
25 } else if (initialGrade < finalGrade) {
26 return "adâncire";
27 } else {
28 return "niciuna";
29 }
30}
31
32/**
33 * Calculați înălțimea la orice stație de-a lungul unei curbe verticale
34 * @param {number} station - Stația de interogare
35 * @param {number} initialGrade - Gradul inițial în procent
36 * @param {number} finalGrade - Gradul final în procent
37 * @param {number} pviStation - Stația PVI
38 * @param {number} pviElevation - Înălțimea PVI în metri
39 * @param {number} curveLength - Lungimea curbei verticale în metri
40 * @returns {number|null} Înălțimea la stație sau null dacă este în afara limitelor curbei
41 */
42function calculateElevationAtStation(
43 station,
44 initialGrade,
45 finalGrade,
46 pviStation,
47 pviElevation,
48 curveLength
49) {
50 // Calculați stațiile PVC și PVT
51 const pvcStation = pviStation - curveLength / 2;
52 const pvtStation = pviStation + curveLength / 2;
53
54 // Verificați dacă stația este în limitele curbei
55 if (station < pvcStation || station > pvtStation) {
56 return null; // În afara limitelor curbei
57 }
58
59 // Convertiți gradele în zecimal
60 const g1 = initialGrade / 100;
61 const g2 = finalGrade / 100;
62
63 // Calculați înălțimea PVC
64 const pvcElevation = pviElevation - (g1 * curveLength / 2);
65
66 // Calculați distanța de la PVC
67 const x = station - pvcStation;
68
69 // Calculați diferența algebraică în grade
70 const A = g2 - g1;
71
72 // Calculați înălțimea folosind ecuația curbei verticale
73 const elevation = pvcElevation + g1 * x + (A * x * x) / (2 * curveLength);
74
75 return elevation;
76}
77
1public class VerticalCurveCalculator {
2 /**
3 * Calculați valoarea K pentru o curbă verticală
4 * @param curveLength Lungimea curbei verticale în metri
5 * @param initialGrade Gradul inițial în procent
6 * @param finalGrade Gradul final în procent
7 * @return Valoarea K
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; // Pentru grade egale
13 }
14 return curveLength / gradeChange;
15 }
16
17 /**
18 * Determinați tipul curbei verticale
19 * @param initialGrade Gradul inițial în procent
20 * @param finalGrade Gradul final în procent
21 * @return Tipul curbei: "vârf", "adâncire" sau "niciuna"
22 */
23 public static String determineCurveType(double initialGrade, double finalGrade) {
24 if (initialGrade > finalGrade) {
25 return "vârf";
26 } else if (initialGrade < finalGrade) {
27 return "adâncire";
28 } else {
29 return "niciuna";
30 }
31 }
32
33 /**
34 * Calculați stația și înălțimea PVC
35 * @param pviStation Stația PVI
36 * @param pviElevation Înălțimea PVI în metri
37 * @param initialGrade Gradul inițial în procent
38 * @param curveLength Lungimea curbei verticale în metri
39 * @return Obiect care conține stația și înălțimea PVC
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 * Calculați stația și înălțimea PVT
50 * @param pviStation Stația PVI
51 * @param pviElevation Înălțimea PVI în metri
52 * @param finalGrade Gradul final în procent
53 * @param curveLength Lungimea curbei verticale în metri
54 * @return Obiect care conține stația și înălțimea PVT
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 * Clasă interioară pentru a reprezenta un punct cu stație și înălțime
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
Exemple Practice
Exemplul 1: Proiectarea Curbei de Vârf a Autostrăzii
Un proiect de autostradă necesită o curbă verticală pentru a tranziționa de la o pantă de +3% la o pantă de -2%. PVI se află la stația 1000+00 cu o înălțime de 150.00 metri. Viteza de proiectare este de 100 km/h, ceea ce necesită o valoare K minimă de 80 conform standardelor de proiectare.
Pasul 1: Calculați lungimea minimă a curbei
Instrumente conexe
Descoperiți mai multe instrumente care ar putea fi utile pentru fluxul dvs. de lucru