Spec-Zone.ru › Octave 9

Далее: Sums and Products, Предыдущее: Complex Arithmetic, Вверх: Arithmetic [Contents][Index]

17.3 Тригонометрия ¶

Octave предоставляет следующие тригонометрические функции, где углы задаются в радианах. Для преобразования из градусов в радианы умножьте на pi/180 или используйте функцию deg2rad. Например, sin (30 * pi/180) возвращает синус 30 градусов. В качестве альтернативы Octave предоставляет ряд тригонометрических функций, которые работают непосредственно с аргументом, заданным в градусах. Эти функции названы в честь базовой тригонометрической функции с суффиксом ‘d’. Например, sin ожидает угол в радианах, а sind ожидает угол в градусах.

Octave использует тригонометрические функции библиотеки C. Ожидается, что эти функции определены стандартом ISO/IEC 9899. Этот стандарт доступен по адресу: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf. Раздел F.9.1 посвящен тригонометрическим функциям. Поведение большинства функций относительно прямолинейно. Однако есть некоторые исключения из стандартного поведения. Многие из исключений связаны с поведением для -0. Наиболее сложным случаем является atan2. Octave точно реализует поведение, указанное в стандарте. Включая atan2(+- 0, 0) возвращает +- pi.

Следует отметить, что MATLAB использует другие определения, которые, по-видимому, не различают -0.

: rad = deg2rad (deg) ¶

Преобразует градусы в радианы.

Входной параметр deg должен быть скаляром, вектором или N-мерным массивом значений с плавающей точкой двойной или одинарной точности. deg может быть комплексным, в этом случае вещественные и мнимые компоненты преобразуются отдельно.

Выходной параметр rad имеет тот же размер и форму, что и deg, с градусами, преобразованными в радианы с использованием константы преобразования pi/180.

Пример:

deg2rad ([0, 90, 180, 270, 360])
  ⇒  0.00000   1.57080   3.14159   4.71239   6.28319

См. также: rad2deg.

: deg = rad2deg (rad) ¶

Преобразует радианы в градусы.

Входной параметр rad должен быть скаляром, вектором или N-мерным массивом значений с плавающей точкой двойной или одинарной точности. rad может быть комплексным, в этом случае вещественные и мнимые компоненты преобразуются отдельно.

Выходной параметр deg имеет тот же размер и форму, что и rad, с радианами, преобразованными в градусы с использованием константы преобразования 180/pi.

Пример:

rad2deg ([0, pi/2, pi, 3/2*pi, 2*pi])
  ⇒  0    90   180   270   360

См. также: deg2rad.

: y = sin (x) ¶

Вычисляет синус для каждого элемента x в радианах.

См. также: asin, sind, sinh.

: y = cos (x) ¶

Вычисляет косинус для каждого элемента x в радианах.

См. также: acos, cosd, cosh.

: y = tan (z) ¶

Вычисляет тангенс для каждого элемента x в радианах.

См. также: atan, tand, tanh.

: y = sec (x) ¶

Вычисляет секанс для каждого элемента x в радианах.

См. также: asec, secd, sech.

: y = csc (x) ¶

Вычисляет косеканс для каждого элемента x в радианах.

См. также: acsc, cscd, csch.

: y = cot (x) ¶

Вычисляет котангенс для каждого элемента x в радианах.

См. также: acot, cotd, coth.

: y = asin (x) ¶

Вычисляет арксинус в радианах для каждого элемента x.

См. также: sin, asind.

: y = acos (x) ¶

Вычисляет арккосинус в радианах для каждого элемента x.

См. также: cos, acosd.

: y = atan (x) ¶

Вычисляет арктангенс в радианах для каждого элемента x.

См. также: tan, atand.

: y = asec (x) ¶

Вычисляет арксеканс в радианах для каждого элемента x.

См. также: sec, asecd.

: y = acsc (x) ¶

Вычисляет арккосеканс в радианах для каждого элемента x.

См. также: csc, acscd.

: y = acot (x) ¶

Вычисляет арккотангенс в радианах для каждого элемента x.

См. также: cot, acotd.

: y = sinh (x) ¶

Вычисляет гиперболический синус для каждого элемента x.

См. также: asinh, cosh, tanh.

: y = cosh (x) ¶

Вычисляет гиперболический косинус для каждого элемента x.

См. также: acosh, sinh, tanh.

: y = tanh (x) ¶

Вычисляет гиперболический тангенс для каждого элемента x.

См. также: atanh, sinh, cosh.

: y = sech (x) ¶

Вычислить гиперболический секанс каждого элемента x.

См. также: asech.

: y = csch (x) ¶

Вычислить гиперболический косеканс каждого элемента x.

См. также: acsch.

: y = coth (x) ¶

Вычислить гиперболический котангенс каждого элемента x.

См. также: acoth.

: y = asinh (x) ¶

Вычислить обратную гиперболическую синус для каждого элемента x.

См. также: sinh.

: y = acosh (x) ¶

Вычислить обратную гиперболическую косинус для каждого элемента x.

См. также: cosh.

: y = atanh (x) ¶

Вычислить обратную гиперболическую тангенс для каждого элемента x.

См. также: tanh.

: y = asech (x) ¶

Вычислить обратный гиперболический секанс каждого элемента x.

См. также: sech.

: y = acsch (x) ¶

Вычислить обратный гиперболический косеканс каждого элемента x.

См. также: csch.

: y = acoth (x) ¶

Вычислить обратный гиперболический котангенс каждого элемента x.

См. также: coth.

: angle = atan2 (y, x) ¶

Вычислить atan (y / x) для соответствующих элементов y и x.

y и x должны совпадать по размеру и ориентации. Знаки элементов y и x используются для определения квадрантов каждого результирующего значения.

Эта функция эквивалентна arg (complex (x, y)).

См. также: tan, tand, tanh, atanh.

Octave предоставляет следующие тригонометрические функции, где углы заданы в градусах. Эти функции создают истинные нули в соответствующих интервалах, а не небольшую ошибку округления, которая возникает при использовании радиан. Например:

cosd (90)
     ⇒ 0
cos (pi/2)
     ⇒ 6.1230e-17
: y = sind (x) ¶

Вычислить синус для каждого элемента x в градусах.

Функция более точная, чем sin для больших значений x и для кратных 180 градусов (x/180 - целое число), где sind возвращает 0, а не малое значение порядка eps.

См. также: asind, sin.

: y = cosd (x) ¶

Вычислить косинус для каждого элемента x в градусах.

Функция более точная, чем cos для больших значений x и для кратных 90 градусов (x = 90 + 180*n с n - целым числом), где cosd возвращает 0, а не малое значение порядка eps.

См. также: acosd, cos.

: y = tand (x) ¶

Вычислить тангенс для каждого элемента x в градусах.

Возвращает ноль для элементов, где x/180 - целое число и Inf для элементов, где (x-90)/180 - целое число.

См. также: atand, tan.

: y = secd (x) ¶

Вычислить секанс для каждого элемента x в градусах.

См. также: asecd, sec.

: y = cscd (x) ¶

Вычислить косеканс для каждого элемента x в градусах.

См. также: acscd, csc.

: y = cotd (x) ¶

Вычислить котангенс для каждого элемента x в градусах.

См. также: acotd, cot.

: y = asind (x) ¶

Вычислить обратный синус в градусах для каждого элемента x.

См. также: sind, asin.

: y = acosd (x) ¶

Вычислить обратный косинус в градусах для каждого элемента x.

См. также: cosd, acos.

: y = atand (x) ¶

Вычислить обратную тангенс в градусах для каждого элемента x.

См. также: tand, atan.

: d = atan2d (y, x) ¶

Вычислить atan (y / x) в градусах для соответствующих элементов y и x.

См. также: tand, atan2.

: y = asecd (x) ¶

Вычислить обратный секанс в градусах для каждого элемента x.

См. также: secd, asec.

: y = acscd (x) ¶

Вычислить обратный косеканс в градусах для каждого элемента x.

См. также: cscd, acsc.

: y = acotd (x) ¶

Вычислить обратную котангенс в градусах для каждого элемента x.

См. также: cotd, acot.

Наконец, есть две тригонометрические функции, которые вычисляют особые аргументы с повышенной точностью.

: y = sinpi (x) ¶

Вычислить синус (x * π) для каждого элемента x точно.

Обычная sin функция использует числа с плавающей запятой IEEE и может давать результаты, очень близкие (в пределах нескольких eps) к правильному значению, но не точные. Функция sinpi более точна и возвращает 0 точно для целых значений x и +1/-1 для полуцелых значений (например, …, -3/2, -1/2, 1/2, 3/2, …).

Пример
сравнения sin и sinpi для целых значений x

sin ([0, 1, 2, 3] * pi)
⇒
     0   1.2246e-16  -2.4493e-16   3.6739e-16

sinpi ([0, 1, 2, 3])
⇒
       0   0   0   0

См. также: cospi, sin.

: y = cospi (x) ¶

Вычислить косинус (x * π) для каждого элемента x точно.

Обычная cos функция использует числа с плавающей запятой IEEE и может давать результаты, очень близкие (в пределах нескольких eps) к правильному значению, но не точные. Функция cospi более точна и возвращает 0 точно для полуцелых значений x (например, …, -3/2, -1/2, 1/2, 3/2, …), и +1/-1 для целых значений.

Пример
сравнения cos и cospi для полуцелых значений x

cos ([-3/2, -1/2, 1/2, 3/2] * pi)
⇒
     -1.8370e-16   6.1232e-17   6.1232e-17  -1.8370e-16

cospi ([-3/2, -1/2, 1/2, 3/2])
⇒
       0   0   0   0

См. также: sinpi, cos.

Далее: Суммы и произведения, Предыдущее: Комплексные вычисления, Вверх: Арифметика [Оглавление][Индекс]

© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.2.0/Trigonometry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API