Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
matlab:implicit_expansion [2020/04/03 21:12]
rg created
matlab:implicit_expansion [2020/04/04 06:57] (current)
rg [Temnota přichází...]
Line 63: Line 63:
 <code matlab> <code matlab>
 B = A - repmat(min(A),2,1) B = A - repmat(min(A),2,1)
-</code>+</code>  
 +nebo  
 +<code matlab> 
 +B = bsxfun(@minus, A, min(A)) 
 +</code>  
 +kde [[https://www.mathworks.com/help/matlab/ref/bsxfun.html|''bsxfun'']] je funkce speciálně zavedená ve verzi 2017a právě pro implicitní expanzi.
  
 ===== Příklady k procvičení a demonstraci síly temnot ===== ===== Příklady k procvičení a demonstraci síly temnot =====
Line 74: Line 79:
 </code> </code>
  
 +===== Postoj mechatronikův =====
 +Z hlediska našich potřeb a aplikací je implicitní expanze 
 +- jak je asi zřejmo i z okolního textu a nadpisů sekcí - nepříjemná. 
 +
 +Při programování maticových operací se //každý// a //často// splete a zamění rozměry matic. 
 +Dosti (i zkušených) MATLABistů mi jistě potvrdí, že často pracujeme stylem "pokus-omyl" a tak ladíme náš kód. 
 +Za krásných starých dobrých časů platilo, že hned v řádku, kde byla použita chybná maticová operace, jsme to zjistili. 
 +Nyní nám tato chybička může prosakovat někam zcela jinam, musíme být ostražití a opatrní, 
 +případně kontrolovat dimenzi matic/vektorů - což jde ale zcela proti filosofii MATLABu 
 +jako nástroje pro techniky/vědce a nikoli programátory. 
 +
 +A samozřejmě, o to více je tato vlastnost nepříjemná pro studenty, kteří se MATLAB učí. 
 ===== Další kritika tototo báječného zjednodušení, hereze i pokusy o vysvětlení ===== ===== Další kritika tototo báječného zjednodušení, hereze i pokusy o vysvětlení =====
   - https://undocumentedmatlab.com/blog/afterthoughts-on-implicit-expansion   - https://undocumentedmatlab.com/blog/afterthoughts-on-implicit-expansion