发布网友 发布时间:2022-04-24 18:06
共1个回答
热心网友 时间:2023-10-30 03:16
由于使用的匿名函数过多,造成自定义函数命名错误。所以自定义函数的匿名函数只能是一个。根据要求,可以这样来处理,分段赋值变量,组合变量匿名函数:
syms x
a=(1+x)/(x^2);
b=2*(1+x)/(1+2*x);
c=log(1+2*x)/x;
d=log(1+2*x)/(2*x);
e=(1+3*x)/(1+2*x)^2;
fun=@(x)2*pi*(2.818e-13)^2*(eval(a)*(eval(b)-eval(c))+eval(d)-eval(e))
验证:
当x=1时,y=fun(x)=2.8655e-25
整体自定义函数的匿名函数:
>> f=@(x) 2*pi*(2.818e-13)^2*((1+x)/x^2*(2*(1+x)/(1+2*x)-log(1+2*x)/x)+log(1+2*x)/(2*x)-(1+3*x)/(1+2*x)^2);
>> x=1;y=f(x)
y = 2.8655e-25
结果是一样的。