Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Вища геодезія

.pdf
Скачиваний:
31
Добавлен:
19.02.2016
Размер:
1.24 Mб
Скачать

% Пiставляємо значення змiнних u та v та спрощуємо отриманi вирази.

% В результатi змiнним r та n присвоєнi вирази, якi залежать лише вiд t

r= simplify(subs(r));

n= simplify(subs(n));

%

˙

¨

Знаходимо похiднi | r | та | r |

 

#„

#„

dr

= simplify(diff(r, t));

d2r = simplify(diff(r, t, 2));

%

Вектор головної нормалi

до кривої функцiя t

N = cross(cross(dr, d2r), dr);

% Кривизна кривої як функцiя t

k = norm(cross(dr, d2r)) / norm(dr)^3;

% Вектор кривизни як функцiя t

k_vector = k * N / norm(N);

% Нормальна i геодезична кривизна як функцiї t

kn = k * abs(dot(N, n)) / norm(N) / norm(n); kg = sqrt(k^2 - kn^2);

% Значення t, яке буде пiдставлено в аналiтичнi вирази t = 0.5;

% Видаємо результати у вiкно Web Browser

ShowSym(...

' Рiвняння кривої ' ,

' \vec{r}(t) = r ' , ...

 

 

' Вектор кривизни ' ,

' \vec{k}(t=0.5) = double(subs(k_vector)) ' , ...

' Кривизна кривої ' ,

 

' k (t=0.5) = double(subs(k_vector)) ' , ...

 

 

' Нормальна кривизна ' ,

' k_n(t=0.5) = double(subs(kn)) ' , ...

 

 

' Геодезична кривизна ' ,

' k_g(t=0.5) = double(subs(kg)) ' )

 

 

 

3.9. Геодезична лiнiя

Геодезичною лiнiєю називається така крива на поверхнi, у якої геодезична кривизна дорiвнює нулю в усiх її точках. Серед геометричних властивостей геодезичної лiнiї найважливiшою є те, що вона є найкоротшим шляхом мiж двома точками на криволiнiйнiй поверхнi.

Для рiвностi нулю геодезичної кривизни лiнiї на поверхнi необхiдно i

#„

достатньо, щоб вектор кривизни k кривої був в усiх точках направлений по

#„

нормалi до поверхнi, а тому достатньо, щоб вектор N був перпендикулярний до поверхнi всюди вздовж кривої.

Пiд натуральним параметром s для даної точки кривої розумiють довжину дуги кривої мiж даною точкою i деякою точкою кривої, прийнятою

з початкову.

 

 

 

 

 

Позначимо через θ

кут мiж кривою

на поверхнi та лiнiєю v = const

(з рис. 3.10 видно, що

θ — це кут мiж

векторами

˙

та

ru). Очевидно,

r

 

 

 

#„

 

#„

при перемiщеннi точки вздовж кривої змiнюються не тiльки її криволiнiйнi

координати u, v, а може змiнюватись також i кут θ, тобто для кривої на поверхнi величини u, v, θ є функцiями натурального параметру s.

На поверхнi, координатна сiтка якої є ортогональною, геодезична лiнiя описується наступною системою диференцiальних рiвнянь:

 

du

=

cos θ

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ds

 

#„

 

 

 

 

 

 

 

 

 

 

| ru|

 

 

 

 

 

 

 

 

dv

 

sin θ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

=

 

 

 

,

 

 

 

 

 

(3.34)

 

 

#„

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

ds

 

 

v

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#„

 

 

 

 

 

 

 

#„

 

 

 

 

 

 

 

 

 

 

| |

 

 

 

 

 

 

 

 

 

dθ

 

∂| ru|

cos θ

 

∂| rv|

sin θ

 

 

 

=

 

v

 

 

 

#„

 

 

.

 

 

 

 

 

 

 

#„ u

 

 

 

 

 

 

 

 

 

 

ru

 

 

rv

 

 

 

ds

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|

 

|·|

 

|

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Система (3.34) має єдиний розв’язок

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u = u(s),

 

 

 

v = v(s),

 

 

θ = θ(s)

при заданих початкових умовах

 

 

 

 

 

 

 

 

 

 

 

 

u(0) = u0,

 

 

v(0) = v0,

 

 

θ(0) = θ0.

Першi двi початковi умови визначають криволiнiйнi координати (u0, v0) точки поверхнi, через яку проходить геодезична в початковiй точцi (при s = 0), а остання умова задає напрямок геодезичної в початковiй точцi. Єдинiсть розв’язку означає, що через точку поверхнi з координатами (u0, v0) в заданому напрямку проходить лише одна геодезична лiнiя.

4. Кривi на поверхнi елiпсоїда обертання

4.1. Криволiнiйнi координати на поверхнi елiпсоїда

Якщо в формулах (1.9) на стор.10 покласти H = 0, то отримаємо рiвня-

ння поверхнi елiпсоїда, записане в параметричнiй формi:

 

(4.1)

 

 

 

 

 

 

 

Y (B, L) = N cos B sin L,

 

 

 

 

 

 

 

 

 

 

 

X(B, L) = N cos B cos L,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Z(B, L) = N(1 −e ) sin B,

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

де позначено N =

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 −e2 sin2 B

 

 

 

 

 

 

 

 

 

 

 

Звичайно,

(4.1) можна переписати i у виглядi векторної функцiї

 

 

p

r (B, L) =

N cos B sin L

.

 

 

(4.2)

 

 

 

 

 

 

 

 

 

 

 

N cos B cos L

 

 

 

 

 

 

 

 

 

 

 

#„

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N(1 −e2) sin B

 

 

 

 

Результати з попереднiх пунктiв застосуємо до елiпсоїда. В першу чергу

знайдемо координатнi вектори:

 

 

 

 

 

 

 

 

 

 

 

 

 

#„

 

 

M sin B cos L

 

 

 

 

 

#„

 

N cos B sin L

 

 

#„

r

 

 

M cos B

 

 

#„

 

r

 

 

 

 

(4.3)

rB

B =

2

rL

 

L =

0

 

M sin B sin L ,

 

 

 

N cos B cos L

де введено позначення M =

a(1 −e )

.

 

 

 

 

 

 

 

 

 

 

#„

 

 

 

 

 

(1 −e2 sin2 B)3/2

 

 

 

 

 

 

 

 

#„

Вектор rB

 

направлений по дотичнiй до меридiану, а вектор

rL — по

дотичнiй до паралелi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

З (4.3) можна знайти, що

 

 

 

 

 

 

 

r B ·

r L = 0,

 

(4.4)

 

 

 

 

 

rB2

= M2,

 

rL2 = N2 cos2 B,

 

 

 

 

 

 

 

 

#„

 

 

 

#„

 

 

 

 

 

 

 

#„

#„

 

 

причому остання рiвнiсть в (4.4) показує, що лiнiї меридiанiв та паралелей утворюють ортогональну координатну сiтку.

У вiдповiдностi з (3.23) та (4.4) запишемо для елiпсоїда першу квадра-

тичну форму

+ rL2 dL2

= M2 dB2 + N2 cos2 B dL2.

(4.5)

ds2 = rB2 dB2

#„

#„

 

 

4.2.Радiус кривизни меридiану, паралелi, нормального перерiзу на елiпсоїдi

Для знаходження радiуса кривизни меридiану покладемо L = const в

формулах (4.1). Тодi цi вирази можна розглядати як рiвняння, що описують

меридiан як задану в параметричнiй формi просторову криву:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X(B) =

 

 

 

 

1 −e2 sin2

B ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a cos B cos L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a cos B sin L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y (B) =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

(4.6)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

e

sin

 

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a(1

e2) sin B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Z(B) =

p

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

e

2

sin

2

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

меридiану

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Радiус кривизни

 

 

 

 

 

 

 

 

знайдемо за формулою (3.8), пiдставивши

в неї (4.6):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

v

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

2

 

 

dB

 

 

dB

dB

 

 

2

 

2

 

 

 

 

 

 

 

 

 

 

dX

 

 

 

dY

 

 

 

 

dZ

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

2

 

 

 

 

2

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

dX d Y

dY d X

 

 

 

 

dY d Z

dZ d Y

 

 

 

 

 

dZ d X

dX d Z

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. (4.7)

Rм =u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

2

 

 

2

 

 

 

 

 

 

 

 

 

2

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

dB

dB2

 

dB

 

dB2

 

dB

dB2

 

 

dB

 

dB2

 

 

dB

dB2

 

dB

 

dB2

 

 

 

Обчислення похiдних та спрощення отриманого виразу можна автоматизувати, якщо скористатись можливостями символьної математики системи MATLAB, як це показано в наступному прикладi.

clc, clear

% Оголошуємо символьнi змiннi

syms a e B L

%Задаємо властивостi символьних змiнних область їх допустимих значень

%(це необхiдно для коректного спрощення символьних виразiв)

assume(a>0 & e>0 & e<1 & B>-pi/2 & B<pi/2)

% Вирази для залежностей N(B), X(B),Y (B), Z(B)

N = a/sqrt(1-e^2*sin(B)^2); X = N * cos(B) * cos(L);

Y = N * cos(B) * sin(L);

Z = N *(1-e^2) * sin(B);

% Знаходимо вирази для перших та других похiдних та заносимо їх в змiннi dX = diff(X, B);

dY = diff(Y, B); dZ = diff(Z, B);

d2X = diff(X, B, 2); d2Y = diff(Y, B, 2); d2Z = diff(Z, B, 2);

%Промiжнi обчислення: окремо обчислюємо та спрощуємо чисельник та

%знаменник в пiдкореневому виразi формули (4.7).

%Застосування функцiй factor (розкладання на множники) та simplify

%

(спрощення) впливають на результат символьних обчислень;

необхiднiсть

%

та порядок їх використання визначають експериментально в

ходi роботи.

p1 = simplify(factor(dX^2 + dY^2 + dZ^2));

p2 = simplify((dX*d2Y - d2X*dY)^2 + (dX*d2Z - d2X*dZ)^2 + ...

(dZ*d2Y - d2Z*dY)^2);

1 −e2 sin2 B

% Остаточно знаходимо вираз для радiусу кривизни меридiана

R= simplify(sqrt(p1^3/p2))

В результатi роботи програми маємо:

R = -(a*(e^2 - 1))/(-(e^2*sin(B)^2 - 1)^3)^(1/2)

тобто радiус кривизни меридiана дорiвнює

Rм =

a(1 −e2)

,

(4.8)

(1 −e2 sin2 B)3/2

 

 

 

що спiвпадає з введеною ранiше величиною M.

Аналогiчно, покладаючи B = const в (4.1) i розглядаючи X, Y , Z як функцiї скалярного параметру L, знайдемо радiус кривизни паралелi:

a cos B

 

Rп = N cos B = p1 −e2 sin2 B .

(4.9)

На рис. 4.1 та 4.2 показано залежнiсть радiусу кривизни меридiана та паралелi вiд геодезичної широти для Землi.

Через деяку точку Q на елiпсоїдi проведемо нормаль до поверхнi елiп-

соїда (вектор n на рис. 4.3). Площина, яка проходить через вектор n (так

#„

#„

звана нормальна площина) перетинає поверхню елiпсоїда вздовж лiнiї, яка називається нормальним перерiзом. Проводячи рiзнi площини через нормаль до поверхнi елiпсоїда, можна отримати безлiч нормальних перерiзiв. На рис. 4.3 зображено лише один з них — той, який утворений за допомогою нормальної площини, дотичної до паралелi, тобто розташованої пiд

кутом 90до меридiану. Цей перерiз називається першим вертикалом.

Введена ранiше величина N = p

a

— це радiус кривизни першого

 

вертикалу, який проходить через точку з широтою B.

0O

10O

20O

30O

40O

50O

60O

70O

80O

90O

Рис. 4.1. Залежнiсть радiусу кривизни

меридiана вiд геодезичної широти B

 

0

0O

10O

20O

30O

40O

50O

60O

70O

80O

90O

Рис. 4.2. Залежнiсть радiусу кривизни паралелi вiд геодезичної широти B

В загальному випадку нормальна площина може перетинатися з меридiаном пiд довiльним кутом A. В цьому випадку радiус кривизни нормального перерiзу буде виражатись формулою

RA =

 

 

 

 

1

 

 

 

.

(4.10)

 

 

 

 

 

 

 

 

2

A

2

A

 

 

cos

+

sin

 

 

 

 

M

 

 

N

 

 

 

 

 

 

 

 

 

 

 

 

 

Очевидно, пiдставляючи в (4.10) A= 0 та A= π/2, одержимо вiдповiдно радiуси кривизни меридiану та першого вертикалу.

При будь-якому розташуваннi нормального перерiзу, проведеного через точку Q, вiн буде залишатись плоскою кривою, а тому вектор головної нормалi до нього, побудований в точцi Q буде лежати в нормальнiй площинi, а значить, буде перпендикулярний до поверхнi елiпсоїда. Звiдси випливає, що в точцi Q геодезична кривизна нормального перерiзу дорiвнює 0.

Середнiм радiусом кривизни Rсер поверхнi в точцi називають границю середнього арифметичного значення радiусiв кривизни RA всiх можливих нормальних перерiзiв, проведених через дану точку поверхнi в рiзних напрямках:

 

 

 

R dA=

 

 

dA

=

 

 

 

a

 

 

 

R

 

1

1

 

 

=

 

1 −e2

 

 

=

 

 

NM

 

. (4.11)

 

Z

 

cos2 A

+ sin2 A

 

 

 

B

сер

 

Z

A

 

1

e2 sin2

 

 

 

 

0

 

 

0

 

M

 

 

N

 

 

 

 

 

 

 

 

 

Повною або гаусовою кривизною поверхнi називається добуток кривизн головних нормальних перерiзiв поверхнi в данiй точцi

K =

1

.

(4.12)

 

 

NM

 

Z

#„

n

Q

Y

B

X

Рис. 4.3. До поняття першого вертикалу

4.3. Довжина дуги меридiана та паралелi

Оскiльки паралель являє собою коло, то довжина дуги паралелi отримується як добуток радiуса даної паралелi Rп = N cos B на рiзницю довгот L2 L1 крайнiх точок дуги:

sп = (L2 L1) N cos B = (L2 L1)

 

a cos B

 

 

 

.

(4.13)

 

 

 

1 −e2 sin2 B

Меридiан же на елiпсоїдi має форму

елiпса, а тому обчислення довжи-

 

p

 

 

 

ни дуги меридiану дещо складнiше. Нехай точка A1 на меридiональному перерiзi елiпсоїда (рис. 4.4) має геодезичну широту B. Вiзьмемо на нескiнченно малiй вiдстанi вiд точки A1 точку A2, яка має широту B + dB. Тодi рiзниця широт точок A1 i A2, якiй вiдповiдає дуга меридiана ds, буде dB. Розглядаючи елементарну дугу ds як дугу кола з радiусом M, будемо мати:

ds = M dB

де M — радiус кривизни меридiана в точцi з широтою B.

Довжина дуги меридiана на елiпсоїдi мiж точками з широтами B1 та B2 визначається iнтегралом

B2

B2

 

 

dB

 

 

 

sм = Z

M dB = a(1 −e2) Z

 

 

 

,

(4.14)

 

 

 

 

(1

e2 sin2

B)3/2

B1

B1

 

 

 

 

 

який не обчислюється в елементарних функцiях. Розкладемо пiдiнтеграль-

Q

2 Q1

M dB

B

Рис. 4.4. До знаходження довжини дуги меридiана

ний вираз в (4.14) в ряд за степенями e

 

 

 

 

 

sм = a(1 −e2) ZB2

1 +

3

e2 sin2

B +

15

e4 sin4 B +

35

e6 sin6 B + . . . dB

4

8

16

B1

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

та виконаємо почленне iнтегрування:

(B2 B1)−

sм = a(1 −e2)"

1 + 43 e2 + 6445 e4

+ 256175 e6 + . . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

e2 +

15

e4 +

525

e6 + . . .

(sin 2B

sin 2B )+

 

 

 

 

8

 

 

 

 

 

32

 

 

 

 

1024

 

 

 

2

1

 

15

 

 

 

 

105

 

 

 

 

 

(4.15)

+

 

e4 +

 

e6 + . . . (sin 4B2 −sin 4B1)−

256

1024

35

e6 + . . . (sin 6B2 −sin 6B1) + . . .#

3072

MeridianArcLength Функцiя призначена для обчислення довжини дуги меридiана на елiпсоїдi. Формат її виклику наступний:

s = MeridianArcLength(B1, B2, a, e)

Тут B1, B2 — геодезичнi широти початкової та кiнцевої точок дуги (в радiанах); a, e — велика пiввiсь та ексцентриситет елiпсоїда. Довжина дуги повертається в тих же одиницях, в яких задана велика пiввiсь. Обчислення реалiзовано за формулою типу (4.15), в якiй взято дещо бiльшу кiлькiсть доданкiв (врахованi степенi e8, e10, e12).

На практицi можна користуватися наступною наближеною формулою:

sм = Mm(B2 B1)

1 + e8 (B2 B1)2 cos 2Bm

,

(4.16)

 

2

 

 

 

похибка якої складає не бiльше 0,2 мм при довжинi дуги S < 100 км. В (4.16) Mm означає радiус кривизни меридiана, обчислений в точцi з широ-

тою B

=

1

(B + B ) (B

i B вимiрюються в радiанах, B > B ).

 

m

2

1

2

1

2

2

1

При довжинi дуги S 6 40 км в (4.16) можна вiдкинути доданок, який

мiстить e2, i скористатись формулою

 

 

 

 

 

 

 

 

sм = Mm(B2 B1),

 

(4.17)

похибка якої не перевищує 1,5 мм.

Використовуючи формулу Сiмпсона чисельного iнтегрування, отримає-

мо iншу наближену формулу для обчислення Sm:

 

sм =

1

(B2 B1)(M1 + 4Mm + M2),

(4.18)

6

де M1, M2, Mm — радiуси кривизни, обчисленi в точках

з широтами

B1, B2, Bm вiдповiдно. Похибка формули (4.18) не перевищує 0,2 мм при довжинi дуги до 400 км.

Якщо довжина дуги меридiана перевищує 400–500 км та при використаннi формул (4.16), (4.18) необхiдно зберегти вказану точнiсть обчислення, то дугу слiд роздiлити на частини i до кожної частини окремо застосувати формулу (4.16) або (4.18).

Можна наближено розв’язати i обернену задачу: за вiдомою довжиною дуги меридiана знайти широту (передбачається, що дуга починається на

екваторi). По сутi, ця задача зводиться до розв’язання рiвняння

Z B

 

sм =

M dB

 

 

 

 

0

 

 

 

вiдносно B. Будемо шукати розв’язок у виглядi ряду

 

B = C +C e +C e2

+C e3

+ . . . ,

(4.19)

0

1

2

3

 

 

де C0, C2, C2, C3, . . . — невiдомi коефiцiєнти. Пiдставимо B1 = 0 та B2 =(4.19)

в (4.15):

1 sм 2

4 0

4

 

 

 

 

0

 

 

 

 

0

 

3

2 1

2 1

0

 

 

a =

0 +

 

 

 

 

 

 

 

 

 

sм

C

C e+

C

 

1

C

 

 

3

sin C

cos C

e2+

C +

1

C

3

C

cos2 C

e3 +. . .

 

 

 

 

 

 

 

 

 

Перенесемо

 

в праву частину та прирiвняємо 0 вирази, що стоять при

a

степенях e. Отримаємо систему рiвнянь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C1

= 0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C0

sм

= 0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

C

 

 

 

 

sin C cos C = 0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

0

 

 

 

 

 

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C3 +

 

C1

 

C1 cos C0 = 0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

3

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

з якої послiдовно

знайдемо C , C , C , C , . . . i остаточно отримаємо формулу,

 

 

 

 

 

 

0 2

 

2 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

яка наближено розв’язує поставлену задачу:

B = ξ +

3sc + ξ

e2

+

21

sc3 +

3

c2ξ

3

sc

5

ξ e42+

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

4

32

8

64

64

9

6

(4.20)

 

 

151 5

 

21 4

 

 

25

 

3

 

39 2

 

21 −72ξ

 

 

+

 

sc

+

 

c

 

ξ −

 

sc

 

 

c

ξ +

 

 

sc

 

ξ e

+ . . .

192

32

 

192

128

 

768

256

де позначено ξ = saм , s = sin ξ, c = cos ξ.

B_via_ArcLength Функцiя за вiдомою довжиною s дуги меридiана, що вiдкладається вiд екватора, на основi формули типу (4.20) повертає вiдповiдне значення геодезичної широти B.

Формат її виклику наступний:

B= B_via_ArcLength(s, a, e)

4.3.1.Приклад обчислення довжини дуги меридiана

Для елiпсоїда WGS–84 обчислити довжину дуги меридiана мiж точками з широтами

B = 453017,221′′,

B = 492958,938′′.

1

2

Розв’язання

Переводимо широти з градусної мiри в радiанну:

B = 0,7942082994,

B = 0,8639328310,

B =

B1 + B2

= 0,8290705652.

 

1

2

m

2

 

Знаходимо радiуси кривизни меридiана в точках з широтами B1, B2, Bm:

M1

=

 

a(1 −e2)

= 6 367 947,027 м

(1 −e2 sin2 B1)3/2

 

 

 

M2

=

 

a(1 −e2)

= 6 372 402,675 м

(1 −e2 sin2 B2)3/2

 

 

 

Mm

=

 

a(1 −e2)

= 6 370 181,006 м

(1 −e2 sin2 Bm)3/2

 

 

 

Обчислюємо довжину дуги за формулою (4.16):

Sм = Mm(B2 B1)

1 + e8 (B2 B1)2 cos 2Bm = 444 157,729 м

 

 

 

2

 

 

Обчислюємо довжину дуги за формулою (4.18):

Sм = 16 (B2 B1)(M1 + 4Mm + M2) = 444 157,744 м

Нарештi, скористаємось MATLAB для чисельного обрахунку значення iнтегралу (4.14). В наведеному нижче прикладi вiн обчислюється за допомогою функцiї integral. Єдине зауваження: функцiю, яка обчислює пiдiнтегральний вираз, потрiбно оформити так, щоб вона могла на входi сприймати не просто число, а вектор; для цього достатньо скористатись поелементними операцiями, як це показано нижче.

clc, clear

 

 

load WGS84_data.mat

 

a = WGS84.a;

e =

WGS84.e;

% Переводимо широти з градусної мiри в радiанну

B1 = dms2rad(45, 30, 17.221);

B2 = dms2rad(49, 29, 58.938);

% Функцiя, яка обчислює значення пiдiнтегрального виразу

f = @(B) 1./(1-e^2*sin(B).^2).^(3/2);

% Обчислюємо значення iнтегралу

S = a*(1-e^2) * integral(f, B1, B2) % в результатi S = 444 157,743 7 м

% Приклад використання функцiї MeridianArcLength