在R中,应用于复数的函数Arg返回-pi和+pi之间的角度。例如: Arg((1+i)^5) = -2.356...(-3*pi/4弧度)
我可以有一个函数返回正角度,甚至大于+pi吗?例如,我希望:"function"((1+i)^5) = 3.926...(5*pi/4弧度)
Arg似乎是不适应的;也许在一些包中存在一些其他函数?
谢谢你的帮助。
发布于 2015-11-17 00:36:29
5*pi/4等同于-3*pi/4。所以你可以这样做:
Arg_positive = function(complex) {
initial = Arg(complex)
ifelse(initial < 0,
initial + 2*pi,
initial)
}发布于 2015-11-17 00:44:54
只需将除法的其余部分取为2pi:
Arg((1+1i)^5) %% (2*pi)
#[1] 3.926991发布于 2015-11-17 00:51:39
您可以创建自己的函数来解决此问题。
pos.arg <- function(num)
{
arg = Arg(num)
if (arg < 0)
arg <- arg + 2*pi
arg
}
x <- complex(length.out = 1, 1, 1)
y <- x^5
pos.arg(y)
[1] 3.926991https://stackoverflow.com/questions/33740187
复制相似问题