6. Kotitehtävä – vektorikentän piirtäminen Matlabilla

Magneettikentän ja Poyntingin vektorin laskeminen pitäisi toivoin mukaan olla varsin suoraviivaista, mutta vektorikentän piirtäminen saattaa olla vähemmän tuttua. Onhan kuvan piirtäminen käsin mahdollista, mutta helpommalla pääsee tietokoneen avulla. Sopiva ohjelma voi esimerkiksi olla Matlab, Mathematica tai Maple. Näistä minulle tutuin on Matlab, joten seuraavassa pieni Matlab-esimerkki.


%% Esimerkki miten 2D-vektorikentän voi visualisoida
clear all; close all;

% sopiva pisteistö
x = 0.025:0.05:1;
y = 0.025:0.05:0.5;
[X,Y] = meshgrid(x,y);

% Vektorikentän komponentit
Ex = 2*cos(pi*X).*sin(2*pi*Y);
Ey = -sin(pi*X).*cos(2*pi*Y);

% Kuva jossa vektorinuolet
figure;
quiver(x,y,Ex,Ey,0.6, 'linewidth', 1);
xlabel('x');
ylabel('y');
title('TE_{11}-aaltomuodon sähkökenttä');
axis equal;
axis([0,1,0,0.5]);

Vektorinuolet

% Amplitudi tiheämmässä pisteistössä
x2 = linspace(0,1,200);
y2 = linspace(0,0.5,100);
[X2,Y2] = meshgrid(x2,y2);
E = sqrt(4*cos(pi*X2).^2.*sin(2*pi*Y2).^2 ...
+ sin(pi*X2).^2.*cos(2*pi*Y2).^2);

% Toinen kuva jossa lisäksi amplitudi väreillä
figure;
contourf(X2,Y2,E,30);
hold on;
quiver(x,y,Ex,Ey, 0.6, 'w', 'linewidth', 1);
xlabel('x');
ylabel('y');
title('TE_{11}-aaltomuodon sähkökenttä');
axis equal;
axis([0,1,0,0.5]);

vektorinuolet + väriasteikko