literate-dotfiles/matlab.org
Thomas Dehaeze bb14d8239c Change indentation of all blocks.
Use (setq org-src-preserve-indentation t) for Emacs.
2021-01-08 01:26:27 +01:00

165 lines
4.5 KiB
Org Mode

#+TITLE: Matlab Configuration
#+SETUPFILE: ./setup/org-setup-file.org
#+PROPERTY: header-args:matlab :mkdir yes
#+PROPERTY: header-args:matlab+ :exports code
#+PROPERTY: header-args:matlab+ :eval no-export
#+PROPERTY: header-args:matlab+ :results silent
* Startup
:PROPERTIES:
:HEADER-ARGS:matlab+: :tangle ~/Documents/MATLAB/startup.m
:END:
** Setup LaTeX as a default interpreter
#+begin_src matlab
set(groot, 'DefaultTextInterpreter', 'LaTeX');
set(groot, 'DefaultAxesTickLabelInterpreter', 'LaTeX');
set(groot, 'DefaultAxesFontName', 'LaTeX');
set(groot, 'DefaultLegendInterpreter', 'LaTeX');
#+end_src
** Default Line Width
#+begin_src matlab
set(groot, 'DefaultLineLineWidth', 1.5);
set(groot, 'DefaultAxesLineWidth', 0.5);
#+end_src
** Default grids on all axis
#+begin_src matlab
set(groot, 'DefaultAxesXGrid','on');
set(groot, 'DefaultAxesYGrid','on');
set(groot, 'DefaultAxesZGrid','on');
#+end_src
** Default Font Size
#+begin_src matlab
set(groot, 'DefaultTextFontUnits', 'points');
set(groot, 'DefaultTextFontSize', 10);
set(groot, 'DefaultAxesFontUnits', 'points');
set(groot, 'DefaultAxesFontSize', 10);
set(groot, 'DefaultUicontrolFontSize', 10);
#+end_src
** Default Fonts
#+begin_src matlab
set(groot, 'DefaultAxesFontName', 'Helvetica');
set(groot, 'DefaultTextFontName', 'Helvetica');
#+end_src
** Make figures into a Box
#+begin_src matlab
set(groot, 'DefaultAxesBox', 'on');
#+end_src
** Default Colors
#+begin_src matlab
set(groot, 'DefaultAxesColor', 'w');
set(groot, 'DefaultAxesXColor', 'k');
set(groot, 'DefaultAxesYColor', 'k');
set(groot, 'DefaultFigureColor', 'w');
#+end_src
** Default Plot Colors
#+begin_src matlab
c1 = [ 0 0.4470 0.7410]; % Blue
c2 = [0.8500 0.3250 0.0980]; % Orange
c3 = [0.9290 0.6940 0.1250]; % Yellow
c4 = [0.4940 0.1840 0.5560]; % Purple
c5 = [0.4660 0.6740 0.1880]; % Green
c6 = [0.3010 0.7450 0.9330]; % Light Blue
c7 = [0.6350 0.0780 0.1840]; % Red
set(groot, 'defaultAxesColorOrder', [c1; c2; c3; c4; c5; c6; c7])
#+end_src
** Figure paper and window style
#+begin_src matlab
set(groot, 'DefaultFigurePaperType', 'A4');
set(groot, 'DefaultFigureWindowStyle', 'normal');
#+end_src
** Set the display format
#+begin_src matlab
format compact;
format long g;
#+end_src
** Home Path
#+begin_src matlab
toolboxes_path = '~/Cloud/thesis/matlab/toolboxes/';
#+end_src
** Add to path
Provides =vecfig3= for FRF fitting ([[https://www.sintef.no/projectweb/vectorfitting/downloads/][link]]).
#+begin_src matlab
addpath([toolboxes_path 'matrix_fitting_toolbox_1'])
#+end_src
Apply and save color schemes in MATLAB with ease ([[https://github.com/scottclowe/matlab-schemer][link]]).
#+begin_src matlab
addpath([toolboxes_path 'matlab-schemer'])
#+end_src
Converts MATLAB figures to TikZ ([[https://github.com/matlab2tikz/matlab2tikz][link]]).
#+begin_src matlab
addpath([toolboxes_path 'matlab2tikz/src'])
#+end_src
MATLAB toolbox for exporting publication quality figures ([[https://github.com/altmany/export_fig][link]]).
#+begin_src matlab
addpath([toolboxes_path 'export_fig'])
#+end_src
MATLAB source code formatter, beautifier ([[https://github.com/davidvarga/MBeautifier][link]]).
#+begin_src matlab
addpath([toolboxes_path 'MBeautifier'])
#+end_src
Toolbox for Convex Programming ([[http://cvxr.com/cvx/][link]]).
#+begin_src matlab
addpath([toolboxes_path 'CVX'])
#+end_src
Useful functions to use with =orgmode= ([[https://github.com/tdehaeze/Org-Mode-Matlab][link]]).
#+begin_src matlab
addpath([toolboxes_path 'Org-Mode-Toolbox/src'])
#+end_src
Some useful function ([[https://github.com/tdehaeze/matlab_useful_functions][link]]).
#+begin_src matlab
addpath([toolboxes_path 'matlab_useful_functions/src'])
#+end_src
H-Infinity Toolbox ([[https://github.com/tdehaeze/hinf-toolbox][link]]).
#+begin_src matlab
% addpath([toolboxes_path 'Hinf-Toolbox/src'])
#+end_src
Toolbox to work with Finite Element Models ([[https://github.com/tdehaeze/fem_matlab_toolbox][link]]).
#+begin_src matlab
addpath([toolboxes_path 'fem_toolbox/src'])
#+end_src
Toolbox to work with fractional order models ([[https://github.com/extall/fomcon-matlab][link]]).
#+begin_src matlab
addpath(genpath([toolboxes_path 'fomcon-matlab']))
#+end_src
** Clear
#+begin_src matlab
clear;
#+end_src
* Setup
:PROPERTIES:
:HEADER-ARGS:matlab+: :tangle ~/Documents/MATLAB/setup.m
:END:
This script should be run once after Matlab is installed.
Import a nice color scheme.
#+begin_src matlab
schemer_import('~/Cloud/thesis/matlab/toolboxes/Add-Ons/matlab-schemer/schemes/monokai.prf');
#+end_src