Basic MATLAB Matlab Postprocesser Graphics Analytical solution comparisons
Basic MATLAB
Matlab • Post-processer • Graphics • Analytical solution comparisons
Vectors >> a=[1 2 3 4] a= 1 >> a' ans = 1 2 3 4
Autofilling and addressing Vectors > a=[1: 0. 2: 3]' a= 1. 0000 1. 2000 1. 4000 1. 6000 1. 8000 2. 0000 2. 2000 2. 4000 2. 6000 2. 8000 3. 0000 >> a(2: 3) ans = 1. 2000 1. 4000
xy Plots >> x=[1 3 6 8 10]; >> y=[0 2 1 3 1]; >> plot(x, y)
Matrices >> b=[1 2 3 4; 5 6 7 8] b= 1 5 2 6 >> b' ans = 1 2 3 4 5 6 7 8 3 7 4 8
Matrices >> b=2. 2*ones(4, 4) b= 2. 2000 2. 2000
Reshape >> a=[1: 9] a= 1 2 3 4 5 6 >> bsquare=reshape(a, 3, 3) bsquare = 1 2 3 >> 4 5 6 7 8 9
Load and if • a = load(‘filename’); (semicolon suppresses echo) • if(1) … else … end
For • for i = 1: 10 • … • end
Grad [dhdx, dhdy]=gradient(h);
BMP Output bsq=rand(100, 100); %bmp 1 output e(: , 1)=1 -bsq; %r e(: , 2)=1 -bsq; %g e(: , 3)=ones(100, 100); %b imwrite(e, 'junk. bmp', 'bmp'); image(imread('junk. bmp')) axis('equal')
Contours • h=[…]; • contour(h) • [C, H]=contour(h) • Clabel(C, H)
Contours (load data, prepare matrix) • • rho=load('rho_frame 0012_subs 00. dat') p_vector=rho/3 rows=100 columns=20 • • • for j=1: columns j for i=1: rows p(i, j)=p_vector(j+(i-1)*columns); %Get rid of '0 pressure' solids that dominate pressure field if p(i, j)==0 p(i, j)=Na. N; end end
Contours • [C, H]=contour(p) • clabel(C, H) • axis equal
Quiver (vector plots) >> scale=10; >> d=rand(100, 4); >> quiver(d(: , 1), d(: , 2), d(: , 3), d(: , 4), scale)
Quiver (and Quiver 3) • uv_vector=load('u_frame 0012_subs 00. dat') • • rows=100 columns=20 for j=1: columns j for i=1: rows u(i, j)=uv_vector(j+(i-1)*20, 1); v(i, j)=uv_vector(j+(i-1)*20, 2); • • end • • hold on quiver(u, v)
Streamline • [Stream]= stream 2(u, v, 5, 100) • streamline(Stream)
Streamlines • [Stream]= stream 2(u, v, [1: 20], 100*ones(20, 1)); • streamline(Stream) • (This is for streamlines starting at y = 100 from x = 1 to 20 along the x axis. Different geometries will require different starting points. )
- Slides: 20