MATLAB sin() против sind()

Я заметил, что в MATLAB есть функции sin() и sind(). Я узнал, что sin() принимает угол в радианах, а sind() принимает угол в градусах. Единственное отличие, которое я знаю, это то, что sind(180) дает 0, а sin(pi) нет:

>> sin(pi)
ans =
  1.2246e-016
>> sind(180)
ans =
     0

Что меня смущает, так это то, есть ли какие-либо сценарии или рекомендации по выбору между использованием sin() или sind()?


person barney    schedule 17.10.2013    source источник
comment
@Magla Я не думаю, что это повторяющийся случай: вопросы сильно связаны, но не совпадают. Здесь вопрос практического характера.   -  person Shai    schedule 17.10.2013


Ответы (1)


Из документации sind:

Для целых чисел n sind(n*180) равно нулю, тогда как sin(n*pi) отражает точность значения с плавающей запятой pi.

Так что, если вас крайне беспокоит тот факт, что sin( pi ) не равно точно нулю, используйте sind, но на практике это просто sin, так что вы на самом деле добавляете крошечный бит накладных расходов.

Лично я предпочитаю элегантность радианов и использую sin.

person Shai    schedule 17.10.2013
comment
Я боюсь, что дети, которые используют MATLAB в старших классах, не доживут до выпуска. - person Eitan T; 17.10.2013
comment
@EitanT Я боюсь, что дети, которые используют градусы вместо радианов, не переживут выпускной ... ;) - person Shai; 17.10.2013
comment
Откуда такая ненависть к дипломам? В некоторых приложениях градусы являются нормой и имеют больше смысла, чем радианы. Я не уверен, почему вы чувствуете необходимость оскорблять ум кого-то, кто вычисляет синус 8 градусов вместо 2 * пи / 45 радиан. - person nispio; 17.10.2013
comment
@nispio попробуйте тождество Эйлера со степенями... Радианы имеют естественно-физическую природу, а градусы искусственные (почему 360 градусов по кругу? почему не 400 или 100 или...??). - person Shai; 17.10.2013
comment
Тот же класс аргументов можно привести против футов, дюймов, галлонов и т. д., но это не означает, что умные люди никогда не должны работать с этими единицами... - person nispio; 17.10.2013