2013-05-10 48 views
-1

有没有人有办法生成一个对数间隔数组数组。该方法的签名是:对数空间

public static List<double> logSpace (double start, double end, double numValues) 

这类似于matlab函数“LOGSPACE”

+1

你尝试过什么吗? – axiom 2013-05-10 20:48:34

+0

为什么关闭?对我来说问题和答案是有帮助的。这是我的谷歌搜索的第一个结果。 – Goswin 2017-11-30 14:52:55

回答

3

我不熟悉MATLAB,但它听起来像你正在寻找的东西是这样的:

public IEnumerable<double> logspace(double start, double end, int count) 
{ 
    double d = (double)count, p = end/start; 
    return Enumerable.Range(0, count).Select(i => start * Math.Pow(p, i/d)); 
} 

logspace(0.1, 1, 10); // 0.1, 0.13, 0.16, 0.2, 0.25, 0.32, 0.4, 0.5, 0.63, 0.79