Matlab

by VM

Pozor na překlepy

Každý překlep je automaticky nová proměnná, tudíž to nemusí být syntakticky špatně a taková chyba se projeví až za běhu. Pokud je to navíc uvnitž try – catch bloku není vidět, kde chyba vznikla.

Aktuální adresář

je ten, ve kterém se nachází matlabí file explorer. I přestože pustíte skript z cesty, aktuální adresář je stále ten, který ukazuje matlabí explorer.

Path

Adresáře se skripty je potřeba přidat do cesty spustitelných souborů buďto přes addpath() nebo z lokálního menu (pravé tlačítko myši) „Add to Path“.

Crtl – C

zarazí aktuálně běžící skirpt, ale musí být focus na „Command window“.

Zkrácené vyhodnocování

jde v tomto případě zleva doprava.

Diary

Fungující postup je následující:
diary on; %zapnout logování………diary([‚..\log\test‘, datestr(now, ‚-yyyy-mm-dd‘), ‚.txt‘]); %zapsat do souboru s časovou značkoudiary off; %ulozi soubor, nikde to není receno explicitne, ale tak to funguje

Spojování matic

jde [ A; B ] v prvním rozměru (submatice se skládají na sebe) nebo [ A B ] ve druhém rozměru (vedle sebe), ostatní dimenze musí být shodné.

Class handle

jde o to, že defaultně se v Matlabu vytváří Class variable, která je předávaná hodnotou a při volání funkce se vždy udělá kopie. Pokud funkce změní hodnotu, nepromítne se to dokud neuděláte A = A.write(x); Pro Class handle to funguje jak bych očekával, tedy A.write(x) zapíše hodnotu do property třídy. link link