问题标签 [function-handle]

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 投票
1 回答
258 浏览

matlab - matlabFunction 删除输入参数

我想计算两个变量的函数的微分。例如:

所以我这样做:

返回:

没关系。但如果 c 为零,则返回:

我不能再用两个参数调用它,但我需要传递两个参数,即使 y 不再在定义中,因为 c 并不总是零。我怎样才能解决这个问题?

0 投票
2 回答
331 浏览

performance - MATLAB 优化:加速大型矩阵的计算

我正在使用以下功能:

通过以下方式计算一系列内核:

然而,由于featureVectors是一个巨大的矩阵(例如 10000x10000),计算内核需要长时间(例如,K)。

是否有可能以某种方式加快计算速度?


编辑:上下文

libsvm正如您可能已经从变量名和语义中注意到的那样,我正在使用带有高斯内核的分类器。

我现在正在使用(或多或少)#terms~=10000#docs~=10000. 这个#terms 是在停用词删除和词干提取之后产生的。本课程表明拥有10000功能是有意义的。

不幸的是,libsvm不会自动实现高斯内核。因此,需要手动计算。我从这里得到了这个想法,但是内核计算(正如引用的问题所建议的那样)真的很慢。

0 投票
2 回答
84 浏览

matlab - 包内的`localfunctions`

localfunctions将函数句柄返回到 m 文件中的所有本地函数。但是,这在包中不起作用。例如,以下保存为“am”的代码运行良好:

从 MATLAB 控制台调用:

但是当它作为'+aaa/bm'在一个包中时,我什么也得不到:

我不认为这种行为有据可查。我该如何克服呢?我需要使用localfunctions对包中的某些功能进行单元测试,并且我不想仅仅因为这个而将其保留在包之外。

0 投票
1 回答
335 浏览

matlab - Dynamically generate function for use in function handle

I'd like to dynamically construct a function that can then be referred to with a function handle for later use in Matlab functions such as integral(fun,a,b).

As an example imagine a function with terms:

where x is a variable and A,B,C,D are constants from a vector (call it K=[A,B,C,D]' as an example) generated by a different function.

I could do:

However, this restricts me to three terms. I'd like to be able to take an arbitrary length vector of constants and generate a function of similar form to the one above. Normally this is easy in Matlab, but it seems like function handles expect 'x' to be a scalar, so something like:

returns an error.

0 投票
1 回答
717 浏览

matlab - 将两个函数句柄相乘并将 ode45 应用于结果

我有以下离散形式的函数(这意味着它们是数组):

函数p1_1, p1_2, p1_3已被评估为点和点处的x1 = 0:(10/199):10函数。p2_1, p2_2, p2_3x2 = 0:(10/199):10

由于我有函数值和函数被评估的点,我可以执行以下操作:

然后我需要能够执行以下操作:

最后

-valuesgamma只是常量(实数值常量)。在我定义之后last_fun,我需要申请ode45它但我不知道该怎么做,我尝试了:

但它不起作用。实际上我不知道我所做的一切是否正确,因此非常感谢一些反馈!

0 投票
1 回答
1753 浏览

matlab - 绘制两个变量的函数句柄

我有以下代码:

要绘制f1_p1并且f2_p2很容易,我会:

我的问题

如何绘制第二个函数 ( new_p1x1)?我已经尝试过和以前一样的方法,但它不起作用....(fplot(new_p1x1, [30,70]))我得到:

谢谢你的帮助!!!

0 投票
2 回答
97 浏览

matlab - 创建灵活的函数句柄

我在 MATLAB 中使用数值积分,用一个变量进行积分,但该函数还包含可变数量的项,具体取决于我的数据维度。现在这对于二维情况如下所示:

我希望这个功能灵活,因为可以有任意数量的数据点,每个数据点都在以下术语中:

我希望这是可以理解的。

0 投票
2 回答
763 浏览

matlab - 使用具有多个输入的函数时出错

我正在尝试在具有多个输入的 MATLAB 中评估一个 duffing 振荡器,但我遇到了一个奇怪的错误,我希望有人能够帮助我。

这是代码:

以及调用 duffing 函数的文件:

当我运行它时,我收到以下错误:

使用 odearguments 时出错(第 92 行) DUFFING 返回长度为 1 的向量,但初始条件向量的长度为 2。DUFFING 返回的向量和初始条件向量必须具有相同数量的元素。

但是当我将函数 duffing 定义为

并传入

y0上面相同,它运行良好,我可以绘制它。

我究竟做错了什么?

0 投票
3 回答
729 浏览

matlab - 强制评估 MATLAB 匿名函数中的变量

MATLAB 将变量与匿名函数一起存储。这是文档中的一个示例,说明了它是如何工作的。

表达式中的变量

函数句柄不仅可以存储表达式,还可以存储表达式求值所需的变量。

例如,为需要系数 a、b 和 c 的匿名函数创建函数句柄。

因为 a、b 和 c 在您创建抛物线时可用,所以函数句柄包括这些值。即使您清除变量,这些值也会保留在函数句柄中:

假设 ab 和 c 的值与函数一起存储,即使它是从 mat 文件保存和重新加载的。在实践中,我发现这些值不会持续存在,尤其是在编辑最初创建函数的代码时。

有没有办法根据变量的数值定义函数句柄?我想要某种形式的东西

编辑:也许我的问题出在文件关联上,但是当我编辑最初定义匿名函数的文件时,出现如下错误:

无法在 C: 中找到函数 @(ydata)nr/(na*dt)*normpdf(ydata,mu(j),s(j))./normpdf(ydata,mu_a(j),s_a(j))。 ..\m文件名.m。(我已将我的 mfile 的名称更改为 mfilename)

我通常对这类东西的解决方案是使用 func2str() 来删除文件依赖项,但这也会删除包括参数值在内的工作区信息。所以我想强制所有参数在函数定义中采用它们的数值。

0 投票
1 回答
691 浏览

matlab - 如何从 cfit 创建函数句柄,与其他函数句柄相乘并整合该术语?

我尝试在 Matlab 中获得两个函数句柄的积分。第一个函数句柄是威布尔概率密度函数,第二个函数句柄基于我用单点线性插值创建的 cfit。

我收到以下错误:

问题必须与“fun2”有关,因为代码可以正常工作,例如

注意:如果我用 cfitObject 绘制 fun2 ,我不会得到错误。也可以使用 quad() 来集成该函数。

任何帮助是极大的赞赏!