MATLAB 电磁场可视化:绘制电场和磁场的三维图形
以下是一个简单的 MATLAB 代码,用于绘制电场和磁场的三维图形:
% 定义网格范围
x = linspace(-2, 2, 20);
y = linspace(-2, 2, 20);
z = linspace(-2, 2, 20);
[X, Y, Z] = meshgrid(x, y, z);
% 定义电荷和电流
q = 1;
I = 1;
% 计算电场和磁场
[Ex, Ey, Ez, Bx, By, Bz] = emfFields(q, I, X, Y, Z);
% 绘制电场和磁场的三维图形
quiver3(X, Y, Z, Ex, Ey, Ez, 'b');
hold on;
quiver3(X, Y, Z, Bx, By, Bz, 'r');
xlabel('X');
ylabel('Y');
zlabel('Z');
title('Electric and Magnetic Fields');
legend('Electric Field', 'Magnetic Field');
% 定义计算电场和磁场的函数
function [Ex, Ey, Ez, Bx, By, Bz] = emfFields(q, I, X, Y, Z)
% 计算电场
k = 9e9; % 真空中的库仑常数
r = sqrt(X.^2 + Y.^2 + Z.^2);
Ex = k*q*X./r.^3;
Ey = k*q*Y./r.^3;
Ez = k*q*Z./r.^3;
% 计算磁场
mu0 = 4*pi*1e-7; % 真空中的磁导率
r = sqrt(X.^2 + Y.^2);
Bx = mu0*I*Y./r.^2;
By = -mu0*I*X./r.^2;
Bz = 0;
end
这段代码定义了一个网格范围,并计算了一个带电粒子(点电荷)和一个电流产生的电场和磁场。然后,使用 quiver3 函数绘制了电场和磁场的三维图形。
原文地址: https://www.cveoy.top/t/topic/oM8M 著作权归作者所有。请勿转载和采集!