5.1.26 Расширенные математические встроенные функции
GNU Fortran поддерживает расширенный список математических встроенных функций с флагом компиляции -fdec-math для совместимости со старым кодом. Эти встроенные функции подробно описаны в Встроенных процедурах, где отмечается, что они являются расширениями и их следует избегать всякий раз, когда это возможно.
В частности, -fdec-math включает встроенную функцию COTAN и тригонометрические встроенные функции, которые принимают или возвращают значения в градусах вместо радиан. Вот сводка новых встроенных функций:
| Радианы | Градусы |
|---|---|
ACOS |
ACOSD* |
ASIN |
ASIND* |
ATAN |
ATAND* |
ATAN2 |
ATAN2D* |
COS |
COSD* |
COTAN* |
COTAND* |
SIN |
SIND* |
TAN |
TAND* |
* Включено с помощью -fdec-math.
Для опытных пользователей может быть важно знать реализацию этих функций. Они просто оболочки вокруг стандартных функций в радианах, которые имеют более точные встроенные версии. Эти функции преобразуют свои аргументы (или результаты) в градусы (или радианы), взяв значение по модулю 360 (или 2*pi), а затем умножив его на постоянный коэффициент преобразования радиан-градусы (или градусы-радианы), соответственно. Коэффициент вычисляется во время компиляции как 180/pi (или pi/180).
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gfortran/Extended-math-intrinsics.html