小编Bor*_*ris的帖子

在Matlab中关闭"智能行为"

在Matlab上有一件我不喜欢的东西:它有时会过于聪明.例如,如果我有一个负平方根

a = -1; sqrt(a)
Run Code Online (Sandbox Code Playgroud)

Matlab不会抛出错误,而是静默地切换到复数.负对数也会发生同样的情况.这可能导致在更复杂的算法中难以发现错误.

类似的问题是Matlab"解决"静默非二次线性系统,如下例所示:

A=eye(3,2); b=ones(3,1); x = A \ b
Run Code Online (Sandbox Code Playgroud)

显然x不满足A*x==b(它解决了最小二乘问题).

是否有可能关闭"功能",或者至少让Matlab在这种情况下打印警告信息?在许多情况下,这确实会有很大帮助.

matlab warnings behavior

6
推荐指数
1
解决办法
1915
查看次数

标签 统计

behavior ×1

matlab ×1

warnings ×1