0
点赞
收藏
分享

微信扫一扫

matlab 定义v(n)个变量以及@(x)函数累加求和的操作

他说Python 2022-03-11 阅读 65

% 首先定义v(i)变量,目的是当输入v(1)~v(16)就可以调用其中一个,查阅好多资料才找到

for i=1:16
    v(i)=sym(['v',num2str(i)]);
end

% 对@(x)函数累加求和
fun_1=0;
for ii=1:17
        fun_1_all=@(x) ((1-x./l_pipe1).*v(ii)+(x./l_pipe1).*v(ii+1)).^2;
        fun_1=fun_1_all+fun_1;
end

若经过以上程序,就会报错!!

未定义与 'function_handle' 类型的输入参数相对应的运算符 '+'。

经查阅大量大量资料,才找到解决方案!!

以下就是最终程序!!!!

for i=1:16
    v(i)=sym(['v',num2str(i)]);
end
fun_1=@(x) 0;
for ii=1:17
        fun_1_all=@(x) ((1-x./l_pipe1).*v(ii)+(x./l_pipe1).*v(ii+1)).^2;
        fun_1=@(x) fun_1_all(x)+fun_1(x);
end

举报

相关推荐

0 条评论