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/11/15 01:56:45
matlab中>>x=-1:0.001:1;>>y=log((1+sqrt(1-x.^2))/x)+sqrt(1-x.^2);总是显示logiszero是因为自变x不能取到0吗?该如何修改?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运行这个就没有问题。