matlab中 >> x=-1:0.001:1; >> y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);总是显示 log is zero 是因为自变x不能取到0吗?该如何修改?O(∩_∩)O谢谢

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 20:31:33
matlab中 >> x=-1:0.001:1; >> y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);总是显示 log is zero 是因为自变x不能取到0吗?该如何修改?O(∩_∩)O谢谢

matlab中 >> x=-1:0.001:1; >> y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);总是显示 log is zero 是因为自变x不能取到0吗?该如何修改?O(∩_∩)O谢谢
matlab中 >> x=-1:0.001:1; >> y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);
总是显示 log is zero 是因为自变x不能取到0吗?该如何修改?O(∩_∩)O谢谢

matlab中 >> x=-1:0.001:1; >> y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);总是显示 log is zero 是因为自变x不能取到0吗?该如何修改?O(∩_∩)O谢谢
y=log((1+sqrt(1-x.^2))/(x+eps))+sqrt(1-x.^2);

你的matlab是什么版本的。
这个没有问题的。matlab是支持inf 和nan 。因此log的自变量可以取0.
我的matlab2010b运行这个就没有问题。