所以这就是我想要的,我有一个函数:f(x,t)=...
其中x
是“真正的”变量而t
是一个参数。但是,我需要将此函数用作Calculus包的derivative
中的参数。此功能需要一个只有一个参数的功能。为此,我想到的是重新定义一个方法f(x)=f(x,t)
,我在将t
参数传递给derivative
函数之前修复它。这必须在另一个功能中完成。
但是,执行此操作会返回此错误:
syntax: cannot add method to function argument f
我相信由于可变范围问题,您只需为新功能选择一个不同的名称。您还可以使用匿名函数而不是命名定义。
function foo(t_val)
newf(x) = f(x, t_val)
derivative(newf, otherparams...)
end
使用匿名函数,
function foo(t_val)
derivative(x -> f(x, t_val), otherparams...)
end
您还可以将匿名函数分配给变量,并将变量用作函数。
function foo(t_val)
newf = x -> f(x, t_val)
derivative(newf, otherparams...)
end