function [s_AB,A_AB,A_BA] = Vinventy(a_fi, a_la, b_fi,b_la,a, e2, eprim2)
f = 1-b/a;
tan_U1 =
tan(a_fi
) *
(1-f
);
tan_U2 =
tan(b_fi
) *
(1-f
);
L = b_la - a_la;
L_1 = L; %pierwsze przyblizenie
etykieta = 0;
while etykieta < 1
L_1 = L_2;
end;
sigma =
atan(sin_sigma/cos_sigma
);
sin_alpha =
(cos(U1
)*
cos(U2
)*
sin(L_1
))/
(sin_sigma
);
cos_2_alpha = 1 - sin_alpha^2;
cos_2_sigma_m = cos_sigma -
(2*
sin(U1
)*
sin(U2
))/
(cos_2_alpha
);
C = (f/16) * cos_2_alpha * (4 + f*(4 - 3*cos_2_alpha));
L_2 = L + (1-C)*f*sin_alpha*(sigma + C*sin_sigma*(cos_2_sigma_m + C*cos_sigma*(-1+2*cos_2_sigma_m^2)));
if abs(L_2 - L_1
)<
(10^
(-
12)) etykieta =
1;
end;
end;
u_2 = cos_2_alpha * eprim2;
A = 1 + (u_2/16384)*(4096 + u_2*(-768+u_2*(320-175*u_2)));
B = (u_2/1024)*(256 + u_2*(-128+u_2*(74-47*u_2)));
delta_sigma = B*sin_sigma * (cos_2_sigma_m + 1/4*B*(cos_sigma*(-1+2*cos_2_sigma_m^2) - 1/6*B*cos_2_sigma_m*(-3+4*cos_2_sigma_m^2)));
s_AB = b*A*(sigma - delta_sigma);
end
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}