+++ title = "Matlab" author = ["Dehaeze Thomas"] draft = false +++ Tags : [Simulink]({{< relref "simulink.md" >}}) ## Resources on Matlab {#resources-on-matlab} Books: - (Higham 2017) - (Attaway 2018) - (OverFlow 2018) - (Johnson 2010) - (Hahn and Valentine 2016) ## Useful Commands {#useful-commands} | Command | Description | |------------------------|-------------------------------------------------------------| | `desktop` | Open the Matlab Desktop | | `workspace` | Open the Workspace | | `who` | List all variables in the workspace | | `edit ` | Edit the file using Matlab Desktop (usefully for debugging) | | `help ` | | | `doc ` | | | `checkcode ` | Check Matlab code files for possible problems | | `preferences` | Open Matlab preferences | ## Tips {#tips} - Folder that starts with a `+` are automatically added to the path. It is useful to add function inside such folder. Then the function is accessible with `folder.function`. ## Figures {#figures} ### Bode Plot {#bode-plot} ## Snippets {#snippets} ### Do not show legend for one plot {#do-not-show-legend-for-one-plot} ```matlab figure; hold on; plot(x, y1, 'DisplayName, 'lengendname'); plot(x, y2, 'HandleVisibility', 'off'); hold off; legend('Location', 'northeast'); ``` ## Linux Installation {#linux-installation} If a single user is using the Matlab installation on the machine: ```bash sudo chown -R $LOGNAME: /usr/local/MATLAB/R2017b ``` Then, Toolboxes can be installed by the user without any problem. To install Toolboxes, the best is to Download the Matlab installer from mathworks and just select the wanted toolboxes. ## Used Toolboxes {#used-toolboxes} Nice functions: - - - Matlab's `exportgraphics` - `vfit3` ([link](https://www.sintef.no/projectweb/vectorfitting/)): used to identify transfer functions ## Debug Scripts {#debug-scripts} | Command | Effect | |------------|--------------------------------------------------------------| | `dbclear` | Remove breakpoints | | `dbcont` | Resume execution | | `dbdown` | Reverse dbup workspace shift | | `dbquit` | Quit debug mode | | `dbstack` | Function call stack | | `dbstatus` | List all breakpoints | | `dbstep` | Execute next executable line from current breakpoint | | `dbstop` | Set breakpoints for debugging | | `dbtype` | Display file with line numbers | | `dbup` | Shift current workspace to workspace of caller in debug mode | | `keyboard` | Give control to keyboard | | `echo` | Display statements during function execution | ## Bibliography {#bibliography}
Attaway, Stormy. 2018. Matlab : a Practical Introduction to Programming and Problem Solving. Amsterdam: Butterworth-Heinemann.
Hahn, Brian, and Daniel T Valentine. 2016. Essential Matlab for Engineers and Scientists. Academic Press.
Higham, Desmond. 2017. Matlab Guide. Philadelphia: Society for Industrial and Applied Mathematics.
Johnson, Richard K. 2010. The Elements of Matlab Style. Cambridge University Press.
OverFlow, Stack. 2018. Matlab Notes for Professionals. GoalKicker.com.