matlab对负数开立方根得到虚数的解决方案

问题描述:在matlab中,对负数开立方根,不出意外你将得到虚数。


例如 − 27 3 \sqrt[3]{-27} 327 ,我们知道其实数解是-3,但在matlab中的计算结果如下:


在这里插入图片描述

问题原因:matlab中的立方根运算是在复数域进行的,有3个,而matlab取的是辐角最小的那个。

解决方案:最小辐角是 π 3 \frac{\pi}{3} 3π,相邻两立方根辐角之差为 2 π 3 \frac{2\pi}{3} 32π,因此这三个根中,有一个实数根、两个复数根。

所以在matlab中对负数进行立方根运算时,可以按如下方式处理:

x = -27
root = solveCubr(x)

function root = solveCubr(x)
	if x >= 0
		root = x^(1/3)
	else
		root = cos(pi)*(abs(x)^(1/3))
	end
end

在这里插入图片描述


参考链接:

  • https://www.zhihu.com/question/23107259/answer/2132830703

相关推荐

  1. tomca打不index.html解决方案

    2024-01-28 00:00:05       33 阅读
  2. Linux虚拟解决VNC打不问题

    2024-01-28 00:00:05       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-28 00:00:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-28 00:00:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-28 00:00:05       82 阅读
  4. Python语言-面向对象

    2024-01-28 00:00:05       91 阅读

热门阅读

  1. python Fabric实现文件上传

    2024-01-28 00:00:05       52 阅读
  2. 物理服务器

    2024-01-28 00:00:05       60 阅读
  3. Python中的进制转换——bin/oct/hex函数与int函数

    2024-01-28 00:00:05       53 阅读
  4. bxCAN接收处理

    2024-01-28 00:00:05       54 阅读
  5. 【硅谷甄选】环境变量的配置

    2024-01-28 00:00:05       59 阅读
  6. 14. Spring Boot的自动配置

    2024-01-28 00:00:05       55 阅读
  7. linux动态库,静态库

    2024-01-28 00:00:05       52 阅读
  8. 用Spring Validation优雅实现参数校验

    2024-01-28 00:00:05       55 阅读
  9. springboot核心有几层架构

    2024-01-28 00:00:05       55 阅读
  10. 第十四届蓝桥杯C组题目 三国游戏

    2024-01-28 00:00:05       60 阅读
  11. python入门Flask框架学习(二)

    2024-01-28 00:00:05       59 阅读