Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MATLAB积分变量内插函数_Matlab_Interpolation_Symbolic Math_Numerical Integration - Fatal编程技术网

MATLAB积分变量内插函数

MATLAB积分变量内插函数,matlab,interpolation,symbolic-math,numerical-integration,Matlab,Interpolation,Symbolic Math,Numerical Integration,我希望执行如下所示的集成 我面临一个错误,因为我在插值函数中使用了积分变量'u'。(如果我用某个常数替换插值函数中的“u”,则积分运行良好。) 你能提供一些指针来修复它吗 附言:为了澄清,y=f(x)[分段函数],这就是为什么我要插值来确定中间值 非常感谢 您应该用一个更简单的集成例程替换int,而不要考虑syms。尝试内置集成,或 或者,您可以找到interp1的替代方案,并在其每个子间隔上调用int。感谢大家的帮助, 我发现integral()解决了这个问题,而不是符号整数。非常感谢 为什么

我希望执行如下所示的集成

我面临一个错误,因为我在插值函数中使用了积分变量'u'。(如果我用某个常数替换插值函数中的“u”,则积分运行良好。)

你能提供一些指针来修复它吗

附言:为了澄清,y=f(x)[分段函数],这就是为什么我要插值来确定中间值


非常感谢

您应该用一个更简单的集成例程替换
int
,而不要考虑syms。尝试内置
集成
,或

或者,您可以找到
interp1
的替代方案,并在其每个子间隔上调用
int

感谢大家的帮助,
我发现integral()解决了这个问题,而不是符号整数。非常感谢

为什么要使用
syms u
?输入的是数字数据,我也会使用数字插值和积分。@DanielR,谢谢回复。如果省略
syms u
则集成失败:
>double(int(2*interp1(x,y,u),u,0,0.1))
未定义的函数或变量“u”。
如果初始化u=0,则得到:
>u=0
>>double(int(2*interp1(x,y,u),u,0,0.1))`
未定义函数“int”,用于输入类型为“double”的参数。
我肯定不太熟悉,请原谅我的无知:)
>>syms u
>>double(int(2*interp1(x,y,u),u,0,0.1))
   Error using interp1>Interp1D (line 330)
   Inputs must be floats, namely single or double.
    Error in interp1 (line 220)
    Vq = Interp1D(X,V,Xq,method);