c/c++语言开发共享c等于matlab的sind和cosd函数

所以我正在使用一些matlab代码手动转换为c代码。 我只是想知道是否有相当于我在matlab代码中看到的sind和cosd函数的交流。 我想这会以度为单位返回答案而不是以弧度为单位给出结果的c sin和cos函数。 我想我可以将结果乘以180 / pi,但只是想知道math.h中是否有库函数我没有看到。 或者即使gsl库中有某些内容可以执行此操作。

    由于M_PI的不精确,H2CO3的解决方案将对大型参数造成灾难性的精度损失。 任何参数的一般安全版本是:

     #define sind(x) (sin(fmod((x),360) * M_PI / 180)) 

    不,C标准库中的三角函数都以弧度为单位。 但是你可以轻松地使用宏或内联函数:

     #define sind(x) (sin((x) * M_PI / 180)) 

    要么

     inline double sind(double x) { return sin(x * M_PI / 180); } 

    请注意,当您想要更改函数的返回值 (所谓的反函数或“arcus”函数)时,需要与转换相反:

     inline double asind(double x) { return asin(x) / M_PI * 180; } 

    不,它们在C库中不可用。 您只能在C库中找到弧度值参数或返回值。

    另外,请注意sind和cosd等不以度数返回结果,它们以度为单位获取参数。 asind和acosd以度数返回结果。

    不在C库中。 所有三角C库函数都将参数作为弧度值而非度数。 正如您所说,您需要自己执行转换或使用专用库。

      以上就是c/c++开发分享c等于matlab的sind和cosd函数相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      www.ctvol.com true Article c/c++语言开发共享c等于matlab的sind和cosd函数

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/544746.html

      (0)
      上一篇 2021年1月9日 下午4:49
      下一篇 2021年1月9日 下午4:52

      精彩推荐