Is it possible to disable or get warnings when using .* on mismatched vectors?
조회 수: 2 (최근 30일)
이전 댓글 표시
I've finally moved up from 2014b and I see there is a new feature(s) that lets you do math operations that would have previously resulted in errors. For example, you can now use .* on vectors of different shapes. I can see how this could be handy sometimes, but in practice, I lose track of whether a vector is a row or column and instead of getting an error, MATLAB makes a big matrix and moves on. In bad cases, the math to follow is also valid resulting in weird answers. Is there a way to at least have this give out a warning?
채택된 답변
Jan
2017년 12월 13일
편집: Jan
2017년 12월 13일
No. Modern Matlab versions use "auto-expanding" e.g. for the elementwise multiplication .* . There is no way to produce a warning for this new standard behavior.
This has been discussed repeatedly and emotionally, because it has some advantages, but is an evil break with backward compatibility.
댓글 수: 1
Walter Roberson
2017년 12월 13일
I know that I for one would like to be able to disable it during my test / debugging cycles.
For example it is not uncommon for me to grab existing software to try to assist someone with it -- software I did not write. That software sometimes has bugs in row vs column use. If I just go ahead and run it, then implicit expansion can end up silently giving me strange results, which I might not be able to easily distinguish from the other bugs in the code.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!