在R中找到3d表面的根

时间:2018-03-08 21:17:41

标签: r 3d contour

我有一个函数foo(x,y),它可以从x,y坐标创建一个3d表面。我需要找到(x,y)的所有值,其中foo = 0。目前,我正在(x,y)搜索网格上的每个点计算foo,但这在计算上是昂贵的。有没有办法给R foo,让它返回(x,y)的所有值,其中foo = 0?

1 个答案:

答案 0 :(得分:0)

使用contourLines

foo <- function(x,y) x^2 + y^2 - 1
x <- y <- seq(-2, 2, len=200)
z <- outer(x, y, foo)
cr <- contourLines(x, y, z, levels=0)

> x <- cr[[1]]$x
> y <- cr[[1]]$y
> foo(x[10], y[10])
[1] -4.438003e-05