MATLAB 帮助中心
平方根
B = sqrt(X)
B = sqrt(X) 返回数组 X 的每个元素的平方根。对于 X 的负元素或复数元素,sqrt(X) 生成复数结果。
X
sqrt(X)
sqrt 函数的域包含负数和复数,如果使用不当,可能会导致意外结果。对于负的复数 z = u + i*w,复数方根 sqrt(z) 返回
sqrt
z = u + i*w
sqrt(z)
sqrt(r)*(cos(phi/2) + 1i*sin(phi/2))
其中 r = abs(z) 是半径,phi = angle(z) 是在闭区间 -pi <= phi <= pi 内的相位角。
r = abs(z)
phi = angle(z)
-pi <= phi <= pi
如果想要负数和复数返回错误消息而不是返回复数结果,改用 realsqrt。
realsqrt
示例
全部折叠
创建一个既包含负值也包含正值的行向量。
X = -2:2
X = 1×5 -2 -1 0 1 2
计算 X 的每个元素的平方根。
Y = sqrt(X)
Y = 1×5 complex 0.0000 + 1.4142i 0.0000 + 1.0000i 0.0000 + 0.0000i 1.0000 + 0.0000i 1.4142 + 0.0000i
输入数组,指定为数值标量、向量、矩阵、多维数组、表或时间表。
数据类型: single | double | table | timetable 复数支持: 是
single
double
table
timetable
对于实数输入,sqrt 的一些行为不同于 IEEE®-754 标准中推荐的行为。特别是,复数输入产生复数结果,而不是 NaN。
NaN
sqrt(-0)
0
-0
X < 0 的指示符为 sqrt(X)
X < 0
0+sqrt(-X)*i
有关矩阵平方根的信息,请参阅 sqrtm。
sqrtm
全部展开
sqrt 函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
用法说明和限制:
仿真生成错误。当输入值 x 为实数,而输出应为复数时,生成的独立代码返回 NaN。要得到复数结果,需要通过传入 complex(x) 使输入值变成复数。
x
complex(x)
如果为独立目标生成代码,并且 MATLAB 代码中 sqrt 的输入不是常量,则生成的代码为 sqrt(-0) 返回的值与 C/C++ 编译器的标准库函数返回的值相同。如果标准库函数符合 IEEE-754 标准,生成的代码将返回 -0。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
sqrt 函数支持 GPU 数组输入,但有以下用法说明和限制:
如果在 GPU 上运行的函数的输出可能为复数,则必须将其输入参量显式指定为复数。有关详细信息,请参阅在 GPU 上处理复数 (Parallel Computing Toolbox)。
有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
sqrt 函数可以对表或时间表中的所有变量执行计算,而无需通过索引访问这些变量。所有变量都必须具有支持计算的数据类型。有关详细信息,请参阅Direct Calculations on Tables and Timetables。
nthroot | sqrtm | realsqrt
nthroot
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处