Matematické funkcie

JupyterLab
Numpy
Goniometrické funckie
Logaritmické a exponenciálne funkcie
Matematické konštanty
Autor

Jakub Šperka

Publikované

18. septembra 2025

🧮 Úvod

NumPy ponúka vektorové (pole‑po‑poli) implementácie bežných matematických funkcií. Všetky pracujú rýchlo nad ndarray, podporujú broadcasting, maskovanie a často aj komplexné čísla. Nižšie nájdete súhrn bežne pouzívaných matematických funkcií potrebných pre riešenie (nielen) geodetických úloh.


📐 Goniometrické funkcie (trigonometria)

Kategória Funkcia Popis
Základné np.sin(x) Sínus
np.cos(x) Kosínus
np.tan(x) Tangens
Inverzné np.arcsin(x) Inverzný sínus (arcsin)
np.arccos(x) Inverzný kosínus (arccos)
np.arctan(x) Inverzný tangens (arctan)
np.arctan2(y, x) Inverzný tangens s ohľadom na kvadrant (robustnejší výpočet uhla)
Hyperbolické np.sinh(x) Hyperbolický sínus
np.cosh(x) Hyperbolický kosínus
np.tanh(x) Hyperbolický tangens
np.arcsinh(x) Inverzný hyperbolický sínus
np.arccosh(x) Inverzný hyperbolický kosínus
np.arctanh(x) Inverzný hyperbolický tangens

⚠️ Vstup je v radiánoch. Na prevod použite np.deg2rad() a späť np.rad2deg().

⚠️ V geodézii pracujeme s grádmi. Na prevod grádov do radiánov je potrebné použiť prevodovú konštantu \(\frac{\pi}{200}\)

Kód
import numpy as np

uhly_stupne = np.array([0, 30, 45, 60, 90])
uhly_radiany = np.deg2rad(uhly_stupne)

sin = np.sin(uhly_radiany)
cos = np.cos(uhly_radiany)
tan = np.tan(uhly_radiany)

print(sin,cos,tan)
[0.         0.5        0.70710678 0.8660254  1.        ] [1.00000000e+00 8.66025404e-01 7.07106781e-01 5.00000000e-01
 6.12323400e-17] [0.00000000e+00 5.77350269e-01 1.00000000e+00 1.73205081e+00
 1.63312394e+16]

📈 Logaritmické a exponenciálne funkcie

Kategória Funkcia Popis
Exponenciála np.exp(x) Exponenciálna funkcia \(e^x\)
np.expm1(x) Presnejšie pre malé \(x\), vracia \(e^x - 1\) bez straty presnosti
Prirodzený logaritmus np.log(x) Prirodzený logaritmus \(\ln(x)\)
np.log1p(x) Stabilnejší výpočet \(\ln(1+x)\) pre malé \(x\)
Ďalšie logaritmy np.log2(x) Logaritmus pri základe 2
np.log10(x) Logaritmus pri základe 10
Mocniny a korene np.power(x, p) Umocnenie \(x^p\)
np.sqrt(x) Druhá odmocnina \(\sqrt{x}\)
np.cbrt(x) Tretia odmocnina \(\sqrt[3]{x}\)

🔢 Základné matematické konštanty

Kategória Konštanta Popis
Geometrická np.pi Ludolfovo číslo π ≈ 3.14159
Exponenciálna np.e Eulerovo číslo e ≈ 2.71828
Špeciálne np.euler_gamma Euler-Mascheroniho konštanta γ ≈ 0.57721
Limitné hodnoty np.inf Kladná nekonečná hodnota
-np.inf Záporná nekonečná hodnota
np.nan „Not a Number“ – nedefinovaná hodnota
Kód
obvod = 2 * np.pi * 1.5

print(obvod)
9.42477796076938

➕ Ďalšie často používané „základné“ funkcie

Kategória Funkcia Popis
Absolútna hodnota np.abs(x) Absolútna hodnota
Zaokrúhľovanie np.round(x, decimals) Zaokrúhlenie na zadaný počet desatinných miest
np.floor(x) Zaokrúhlenie nadol (najväčšie celé ≤ x)
np.ceil(x) Zaokrúhlenie nahor (najmenšie celé ≥ x)
np.trunc(x) Orezanie desatinnej časti (smerom k nule)
Zvyšok a celé delenie np.mod(x, y) Zvyšok po delení (kladný preklad do mod y)
np.remainder(x, y) Zvyšok po delení (s rovnakým znamienkom ako delenec)
np.divmod(x, y) Súčasne vráti podiel aj zvyšok
Znamenie np.sign(x) Určí znamienko: \(-1, 0, 1\)
Clamps a výmeny np.clip(x, min, max) Orezanie hodnôt do intervalu \([min, max]\)
np.nan_to_num(x) Nahradí nan → 0, +inf → veľké číslo, -inf → malé číslo
Kód
x = np.array([-2.7, -0.1, 0.0, 0.1, 2.7])
rounded = np.round(x, 1)
floored = np.floor(x)
ceiled = np.ceil(x)
signed = np.sign(x)
clipped = np.clip(x, -1, 1)

rounded, floored, ceiled, signed, clipped
(array([-2.7, -0.1,  0. ,  0.1,  2.7]),
 array([-3., -1.,  0.,  0.,  2.]),
 array([-2., -0.,  0.,  1.,  3.]),
 array([-1., -1.,  0.,  1.,  1.]),
 array([-1. , -0.1,  0. ,  0.1,  1. ]))

📚 Oficiálna dokumentácia NumPy

Podrobný popis funkcií, ich parametrov a príkladov použitia nájdete v oficiálnej dokumentácii knižnice NumPy na adrese: https://numpy.org/doc/stable/.


🎞️ Videonávod