Mathematica貌似对这个函数积分效果不太好?
mathematica吧
全部回复
仅看楼主
level 9
哲e气象 楼主
Integrate[1/(E^x + 1), x]
积分出来的结果是-2 ArcTanh[1 + 2 E^x],直接超定义域了,将它转换为指数
-2 ArcTanh[1 + 2 E^x] // TrigToExp
得到Log[-2 E^x] - Log[2 + 2 E^x],发现第一个Log里面符号错了,把负号去掉才正确
而用Geogebra则能直接积分得到x-ln(e^x+1)这个最简结果
这是不是Mathematica算法的问题?能不能通过限制条件一步得到x-ln(e^x+1)?
如果不能的话,官方有没有注意到这个问题?或者最新版本有没有对这种积分的算法做出优化?
2023年11月21日 03点11分 1
level 8
12.3版本可以直接算出
2023年11月21日 04点11分 2
好家伙
2023年11月21日 04点11分
合着新版本反而退化了
2023年11月21日 04点11分
@哲e气象 我看了一下你的结果,求导回去答案是对的。然后代个值算出来是复数,所以我猜是mathematica把x当复数导致的[小乖]。你试试把x限定为实数?
2023年11月21日 06点11分
level 9
哲e气象 楼主
谢谢楼上帮助,我试了结果还是一样,谢谢
2023年11月21日 07点11分 3
level 8
看了另一个帖子的灵感[吐舌]
2023年11月21日 08点11分 4
[真棒]
2023年11月21日 08点11分
可算有人看见了。
2023年12月02日 04点12分
吧务
level 9
2023年11月21日 08点11分 5
多谢小吧主[真棒]
2023年11月21日 08点11分
吧务
level 9
2023年11月21日 08点11分 6
吧务
level 15
该说的大家都说了,只补充两点:
1. Mathematica的符号计算几乎都是在复数域上进行。
2. Integrate等函数算出的结果简洁性不如旧版的情况不是很罕见,但是从大规模统计来看,Integrate的性能还是在进步的,具体可参看Stackexchange用户Nasser的测试:
12000.org/my_notes/CAS_integration_tests/indexsection1.htm#x2-10001
2023年12月02日 04点12分 7
level 9
哲e气象 楼主
又探索了一下相关的功能,首先是Wolframalpha官网能直接算出
然后是Wolfram|Alpha模式笔记本虽然直接算出来的结果跟普通笔记本一样不理想,但是分步解答最后还是能得到最简结果
所以如果只是把Mathematica当作算积分求极限什么的计算器的话,就用Wolfram|Alpha模式笔记本吧
2023年12月08日 04点12分 8
……请注意,这个“分步解答”只是在笔记本里显示了Wolfram|Alpha的查询结果。还有,如果只是教学级的简单问题,Wolfram|Alpha用用无妨,但是对于复杂问题,Wolfram|Alpha是指望不上的。
2024年01月06日 06点01分
1