问题标签 [exp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
166 浏览

php - 坏的exp calc函数?

这个功能有什么问题?当我使用 31 forexp时,这个函数变成了一个无限循环!我该如何解决?如果可以的话,请帮我优化这个功能,谢谢。

0 投票
3 回答
3041 浏览

c++ - exp函数使用c++

我不知道为什么我一直得到结果 1.#INF 从my_exp()我给它 1 作为输入。这是代码:

0 投票
2 回答
410 浏览

php - 使用 PHP 在字符串中查找链接。不同于普通链接和 youtube 链接

我有一个包含链接的字符串。我希望我的 php 对我的链接做不同的事情,具体取决于 url。

回答:

0 投票
2 回答
487 浏览

oracle - .dmp 文件的实际类型

我经常得到需要加载到数据库中的 .dmp 文件。其中一些是使用 datapump 创建的,有些是使用 exp 创建的。有没有一种简单的方法可以将它们区分开来,我可以将它们放入脚本中?

0 投票
6 回答
577 浏览

c - Ubuntu 中计算工作负载的性能令人失望

我发现在我用于科学计算的全新无头工作站机器上,在 Ubuntu 下运行一些计算代码的性能相当差。我注意到在 Ubuntu 上运行一些稍微复杂的代码的速度与在我用于开发的旧 Mac 笔记本电脑上运行的速度不同。但是,我设法将其提炼成一个非常简单的示例,该示例仍然比我的旧机器表现出不那么出色的改进:

现在,Mac 是一台运行 OS X 10.5 的 2.4GHz Core 2 Duo MacBook Pro 近 5 年,运行此代码大约需要 6.8 秒。然而,在运行 Ubuntu 11.10 的全新 3.4GHz Core i7 Dell 上,大约需要 6.1 秒!有人能告诉我这里发生了什么吗,因为一台使用了将近 5 年的笔记本电脑与全新的台式工作站相差不到 10% 是荒谬的?更荒谬的是,我可以看到 Core i7 使用监控工具加速到近 4GHz!

Mac 编译:

Ubuntu编译:

谢谢,

路易斯

0 投票
6 回答
60187 浏览

python - 使用 numpy 处理 exp 中的溢出

使用 numpy,我有一个函数的定义:

这个函数在优化例程中被评估了很多次。它经常引发异常:

我知道操作数不能存储在为浮点数分配的空间中。但是我该如何克服这个问题呢?

0 投票
1 回答
1296 浏览

oracle - 尝试使用 SQL-Developer 分析使用“exp”创建的系统表转储

我正在尝试从我之前执行的系统表转储中存在的特定表中恢复数据。我想将转储中存在的行附加到活动表中可能存在的任何行中。问题是,转储中的表名可能与数据库中当前存在的表名不同(它们是动态创建的,前缀为 ARC_TREND_)。另外,我不知道表的名称,因为它存在于转储中,我希望使用 SQL Developer 来分析转储文件,因为我可以通过它的列和现有的行来识别正确的表。

虽然我盲目相信 SQL Developer 可以使用我的转储文件,但在尝试打开它时,我收到了 Java Heap OutOfMemory 异常。我已经将 sqldeveloper.bat 和 sqldeveloper.conf 中的最大堆大小从 640m 调整为 1024m,但无济于事。

有人可以推荐我采取的措施来从 exp 创建的转储文件中存在的表中恢复数据吗?图形工具会很好,但我对命令行并不陌生。我需要分析转储中存在的表以选择正确的表。然后我假设我可以用imp TABLE=它把它带回活动实例。它可能与现有的表名不匹配,因此我将使用 SQL Developer 将导入表中的行复制到我需要它们所在的表中。

转储取自运行 10g 的 Linux 服务器,并将导入(相同的服务器和数据库实例,已升级)相同数据库的 11g 实例。

谢谢

0 投票
2 回答
8402 浏览

matlab - 近似指数函数的 Matlab 代码

有谁知道在处理大实数和负实数时如何使以下 Matlab 代码更准确地逼近指数函数?

例如,当 x = 1 时,代码运行良好,当 x = -100 时,当它应该更接近 3.7201e-44 时,它返回 8.7364e+31 的答案。

代码如下:

任何帮助表示赞赏,欢呼。

编辑:

好的,所以问题如下:

这段代码近似于哪个数学函数?(我说的是指数函数。)当 x = 1 时它是否有效?(是的。)不幸的是,当 x = -100 时使用它会产生答案 s = 8.7364e+31。您的同事认为程序中存在愚蠢的错误,并请求您的帮助。仔细解释行为并给出一个简单的修复方法,从而产生更好的结果。[您必须建议对上述代码进行修改,否则它会被使用。您还必须检查您的简单修复工作。]

所以我有点理解,当术语之间有 16 个(或更多)数量级时,问题围绕着大量数字,精度会丢失,但解决方案却让我望而却步。

谢谢

编辑:

所以最后我选择了这个:

不确定它是否完全正确,但它返回了一些很好的近似值。

exp(-100) = 3.720075976020836e-044
s = 3.722053303838800e-044

经过进一步分析(不幸的是提交了作业),我意识到增加迭代次数,从而增加项,进一步提高效率。事实上,以下方法更有效:

这使:

exp(-100) = 3.720075976020836e-044
s = 3.720075976020701e-044

0 投票
5 回答
16591 浏览

c# - 快速 Exp 计算:可以在不损失太多性能的情况下提高准确性吗?

我正在尝试之前在这个关于提高 C# 计算速度的 SO 问题的答案中描述的快速 Exp(x) 函数:

该表达式使用了一些 IEEE 浮点“技巧”,主要用于神经集合。该函数比常规Math.Exp(x)函数快大约 5 倍。

不幸的是,相对于常规函数,数值精度仅为 -4% -- +2% Math.Exp(x),理想情况下,我希望精度至少在低于百分比的范围内。

我已经绘制了近似和常规 Exp 函数之间的商,从图中可以看出,相对差异似乎以几乎恒定的频率重复。

快速和常规 exp 函数之间的商

是否有可能在不大幅降低计算速度的情况下利用这种规律性进一步提高“快速 exp”函数的精度,或者精度提高的计算开销是否会超过原始表达式的计算增益?

(作为旁注,我还尝试了在同一个 SO 问题中提出的替代方法之一,但这种方法在 C# 中的计算效率似乎并不高,至少对于一般情况而言不是。)

5月14日更新

应@Adriano 的要求,我现在执行了一个非常简单的基准测试。我已经使用[-100, 100] 范围内的浮点值的每个替代exp函数执行了 1000 万次计算。由于我感兴趣的值范围从 -20 到 0,因此我还明确列出了 x = -5 处的函数值。结果如下:

ExpNeural等效于本文开头指定的Exp函数。ExpSeries8是我最初声称在 .NET 上效率不高的公式;当像 Neil 一样实现它时,它实际上非常快。ExpSeries16是类似的公式,但有 16 次乘法而不是 8次。 exp1exp7是下面阿德里亚诺回答的不同函数。exp7的最后一个变体是检查x符号的变体;如果为负,则函数返回1/exp(-x)

不幸的是,在我正在考虑的更广泛的负值范围内, Adriano列出的expN函数都不够。Neil Coffey的级数展开方法似乎更适合“我的”值范围,尽管它在较大的负x下发散太快,尤其是在使用“仅”8 次乘法时。

0 投票
1 回答
532 浏览

php - exp() returns NaN stuff

Ok, I'm stuck. I have this PHP code:

just like on the PHP.net page. And what I have on the screen:

but then there comes the weirdest thing ever. I thought that maybe there's some PHP.ini problem with numbers like 2.67e8 and so (I mean with the 'e' inside) or something. But then, when I changed the above code into:

suddenly I saw this whatever:

It's kind of WTF especially because of the last NAN, when first it was a quite normal, calm float 298.86740096706 but then just with no reason it went to hell replaced by NAN. Do you have any ideas? Please?