matlab 一道积分运算题目求解释用matlab计算两种方法两种答案,法1:int(0.12*x/(2.8-x),x,0,1.27273)ans =- (42*log(34391063014470689/63050394783186944))/125 - 17195599061229753/112589990684262400>> - (42*log(34391063014470689/630503

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 01:43:15

matlab 一道积分运算题目求解释用matlab计算两种方法两种答案,法1:int(0.12*x/(2.8-x),x,0,1.27273)ans =- (42*log(34391063014470689/63050394783186944))/125 - 17195599061229753/112589990684262400>> - (42*log(34391063014470689/630503
matlab 一道积分运算题目求解释
用matlab计算
两种方法两种答案,
法1:
int(0.12*x/(2.8-x),x,0,1.27273)
ans =
- (42*log(34391063014470689/63050394783186944))/125 - 17195599061229753/112589990684262400
>> - (42*log(34391063014470689/63050394783186944))/125 - 17195599061229753/112589990684262400
ans =
0.0509
这是对的
法2:
> int(0.12*x/(2.8-x))
ans =
- (3*x)/25 - (42*log(x - 14/5))/125
>> subs(ans,x,1.27273)
ans =
-0.2950 - 1.0556i
错误!
为什么呢?

matlab 一道积分运算题目求解释用matlab计算两种方法两种答案,法1:int(0.12*x/(2.8-x),x,0,1.27273)ans =- (42*log(34391063014470689/63050394783186944))/125 - 17195599061229753/112589990684262400>> - (42*log(34391063014470689/630503
方法一中的
int(0.12*x/(2.8-x),x,0, 1.27273)
表示对表达式中指定的符号变量x计算从0到1.27273的定积分,所以是一个确定值:
ans = 0.05093463000
而方法二中的
int(0.12*x/(2.8-x))
表示对符号表达式中的符号变量x计算不定积分,其中x=findsym(0.12*x/(2.8-x)).当把积分区间代入,可计算出积分值.但subs(ans,x,1.27273)仅是将x用1.27273替代,故与方法一答案不一致.需将区间值代入,如下所示:
>> int(0.12*x/(2.8-x))
ans =
18 17
-0.1200000000 x - 0.3360000000 log(-0.1400000000 10 + 0.5000000000 10 x)
>> subs(ans,x,1.27273) - subs(ans,x,0)
ans = 0.05093463 + 0. i