Mathematical functions

Free and open-source software

AIK84 Mathematical functions — это бесплатное программное обеспечение с открытым исходным кодом, предназначенное для очень быстрых математических расчётов. Может быть встроено в другие программные продукты (включая СУБД и языки программирования). Код написан на чистом C без внешних библиотек, что позволяет его запускать на микроконтроллерах вообще без операционной системы.

Пожалуйста, посмотрите список часто задаваемых вопросов.

Скачать версию 20241116 (10 kB, MD5: 6b43891ba6021263ce2e4af60ceedaef)

Пример 1. Фрагмент набора данных (аккуратный разгон автомобиля)

Время (мс) Скорость (км/ч) Дистанция (м)
000
1635102
36062010
52933022
72484041
98615074
1223760110
1501370160
1805080223

Пример 2. Пример конвертации единиц измерения скорости

м/с км/ч км/м
13.600.06
27.200.12
310.800.18
414.400.24
518.000.30
621.600.36
725.200.42
828.800.48
932.400.54
1036.000.60
1139.600.66
1243.200.72
1346.800.78
1450.400.84
1554.000.90
1657.600.96
1761.201.02
1864.801.08
1968.401.14
2072.001.20
2175.601.26
2279.201.32
2382.801.38
2486.401.44
2590.001.50
2693.601.56
2797.201.62
28100.801.68
29104.401.74
30108.001.80
31111.601.86
32115.201.92
33118.801.98
34122.402.04
35126.002.10
36129.602.16
37133.202.22
38136.802.28
39140.402.34
40144.002.40
41147.602.46
42151.202.52
43154.802.58
44158.402.64
45162.002.70
46165.602.76
47169.202.82
48172.802.88
49176.402.94
50180.003.00

Пример 3. Пример расчёта угла установки лазерного датчика

Для получения высоты мишени нужно умножить расстояние до основания мачты (башни) на тангенс угла.

Градусы Радианы Тангенс
10.0174530.017455
20.0349070.034921
30.0523600.052408
40.0698130.069927
50.0872660.087489
60.1047200.105104
70.1221730.122785
80.1396260.140541
90.1570800.158384
100.1745330.176327
110.1919860.194380
120.2094400.212557
130.2268930.230868
140.2443460.249328
150.2617990.267949
160.2792530.286745
170.2967060.305731
180.3141590.324920
190.3316130.344328
200.3490660.363970
210.3665190.383864
220.3839720.404026
230.4014260.424475
240.4188790.445229
250.4363320.466308
260.4537860.487733
270.4712390.509525
280.4886920.531709
290.5061450.554309
300.5235990.577350
310.5410520.600861
320.5585050.624869
330.5759590.649408
340.5934120.674509
350.6108650.700208
360.6283190.726543
370.6457720.753554
380.6632250.781286
390.6806780.809784
400.6981320.839100
410.7155850.869287
420.7330380.900404
430.7504920.932515
440.7679450.965689
450.7853981.000000
460.8028511.035530
470.8203051.072369
480.8377581.110613
490.8552111.150368
500.8726651.191754
510.8901181.234897
520.9075711.279942
530.9250251.327045
540.9424781.376382
550.9599311.428148
560.9773841.482561
570.9948381.539865
581.0122911.600335
591.0297441.664279
601.0471981.732051
611.0646511.804048
621.0821041.880726
631.0995571.962611
641.1170112.050304
651.1344642.144507
661.1519172.246037
671.1693712.355852
681.1868242.475087
691.2042772.605089
701.2217302.747477
711.2391842.904211
721.2566373.077684
731.2740903.270853
741.2915443.487414
751.3089973.732051
761.3264504.010781
771.3439044.331476
781.3613574.704630
791.3788105.144554
801.3962635.671282

Пример 4. Комбинаторика. Число перестановок

Не всегда есть смысл каждый раз вычислять факториал, так как на вход функции поступает только НАТУРАЛЬНОЕ число в интервале от 1 до 14 (нет практического смысла больше). Целесообразнее их заранее просчитать и выдавать ответ из готового массива.

Количество элементов Число перестановок
11
22
36
424
5120
6720
75040
840320
9362880
103628800
1139916800
12479001600
136227020800
1487178291200

Пример 5. Расчёт кинетической энергии

Для примера посчитаем кинетическую энергию объекта, массой ровно 1 кг. Добавим ещё показания некого абстрактного датчика (на основе простого резистивного делителя), который будет определять скорость.

м/с Кинетическая энергия Показания датчика
10.500.01
22.000.02
34.500.04
48.000.05
512.500.06
618.000.07
724.500.08
832.000.10
940.500.11
1050.000.12
1160.500.13
1272.000.14
1384.500.15
1498.000.17
15112.500.18
16128.000.19
17144.500.20
18162.000.21
19180.500.22
20200.000.24
21220.500.25
22242.000.26
23264.500.27
24288.000.28
25312.500.29
26338.000.30
27364.500.32
28392.000.33
29420.500.34
30450.000.35
31480.500.36
32512.000.37
33544.500.38
34578.000.39
35612.500.41
36648.000.42
37684.500.43
38722.000.44
39760.500.45
40800.000.46
41840.500.47
42882.000.48
43924.500.49
44968.000.51
451012.500.52
461058.000.53
471104.500.54
481152.000.55
491200.500.56
501250.000.57

Пример 6. Расчёт объёма автоматического огнетушителя

Будем думать, что у цилиндра фиксированная высота 1 метр.

Радиус Объём цилиндра Объём шара
0.1000.0310.004
0.2000.1260.034
0.3000.2830.113
0.4000.5030.268
0.5000.7850.524
0.6001.1310.905
0.7001.5391.437
0.8002.0112.145
0.9002.5453.054
1.0003.1424.189

(С) Калинин Александр Игоревич