为啥不能把所有的解都自动求出来,很明显在1和2之间就还有3个解
mathcad吧
全部回复
仅看楼主
level 1
root函数和find函数也是只能求出这一个2.4,是什么原因呢?纠结了一天了,求帮忙解答疑惑呢
2017年12月28日 08点12分 1
level 15
2017年12月29日 02点12分 2
level 15
2017年12月29日 04点12分 5
rows(X)=39
2017年12月29日 04点12分
@月城翁 谢谢大神[真棒]
2017年12月29日 04点12分
在本吧称“大神”是违反吧规的!
2017年12月29日 05点12分
请看本吧置顶的吧规。
2017年12月29日 05点12分
level 15
2018年01月02日 03点01分 6
level 15
我个人的理解:
1.用MC求方程的解(根),多数时候只能得到近似的解(根)值。就如无理数π的小数值,是无法完全写出的。所以,必要时要用CTOL给出近似值的精度范围。
2.用MC求解,事先要给出x的估计值。MC只计算在估计值附近的解(根)。6楼的上面一个图就是作图来猜测估计值。
3.我在5楼的程序板是用于对多个解给出多个估计值,得到多个解。只有一个解(根)的情况,没有必要使用5楼的程序板。直接用估计值就可以得到结果。例如6楼中的
u(-1.1) = -1.10674
个人理解,仅供参考。
2018年01月02日 03点01分 7
估计值不合适,是得不到解的。
2018年01月02日 03点01分
u(0)=无解,u(-1)= -1.10764,有解。
2018年01月02日 03点01分
这也是楼主在1楼只能得到一个根的原因。
2018年01月02日 03点01分
@月城翁 感觉有的不是因为估值不合适而是求解区间不合适,但又不知道为什么不合适,如后面的贴图
2018年01月02日 04点01分
level 7
2018年01月02日 04点01分 8
-1.2~0的区间求不到解,但-1.2~-0.1的范围能求到,难道还是事先估区间?
2018年01月02日 04点01分
这个问题我也说不清楚,麻烦@朱老剑客@LNSZDZG 老师解释。似乎0是一个分界点,用0值,MC有往正值方向求根的取向。
2018年01月02日 05点01分
麻烦@loupoo2 老师解疑。
2018年01月02日 05点01分
把end值定为10^-6有解,但是10^-7就无解了。
2018年01月02日 05点01分
level 15
原因找到了,因为end值为0时,找不到根,于是程序板报警。在程序板中增加了on error语句就妥了。
2018年01月02日 06点01分 9
level 15
区间值改成(-5 8)也能通过。看来程序板要根据估计值实时调整。
2018年01月02日 06点01分 10
level 15
2018年01月02日 10点01分 11
像sin(1/x)就有点让人抓狂,0~1的根
2018年01月02日 11点01分
level 15
如果m(x):=sin(1/(x+10^-7)),会多一个根x=0
2018年01月02日 12点01分 12
x=0是增根
2018年01月02日 14点01分
@月城翁 你这个显然错误,0.00001~0.0001之间都有一大把根
2018年01月03日 00点01分
level 7
2018年01月03日 00点01分 13
level 15
2018年01月03日 04点01分 14
n(x):=mod(1/x,π)与m(x):=sin(1/x)有相同的解集,所以也可以用n(x) 计算。
2018年01月04日 08点01分
@月城翁 这不对吧,假如1/x=1.5PI,sin(1/x)=-1,但mod(1/x,pi)=0.5pi,我猜你是想说sin(1/x)与sin(mod(1/x,pi))有相同的解,但同样不行
2018年01月05日 01点01分
mod(1.5*pi,pi)<>0不是方程mod(1/x,pi)=0的根。
2018年01月05日 01点01分
mod(1/x,pi)=0仅当1/x是pi的整倍数是成立,这时与之对应的sin(1/x)=0
2018年01月05日 01点01分
level 15
2018年01月05日 01点01分 15
1