1、理论基础
毕奥-萨伐尔定律
2、代码
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import mpl_toolkits.mplot3d
import math
from scipy.fftpack import fft,ifft
from decimal import Decimal
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
matplotlib.rcParams['font.family']='sans-serif'
#x=-0.5:0.05:0.5
#x = np.arange(0,0.05,0.5)
#y=x
x, y = np.mgrid[-0.5:0.5:0.01, -0.5:0.5:0.01]
I=100
mu0=4*np.pi*1e-7
C0=mu0/(4*np.pi)
[X,Y]=np.mgrid[-0.5:0.5:0.05, -0.5:0.5:0.05]
Bx =-2.*C0*I*Y/(X**2+Y**2)**(3/2)/(1/(X**2+Y**2))**(1/2)
By =2.*C0*I*X/(X**2+Y**2)**(3/2)/(1/(X**2+Y**2))**(1/2)
B=(4.*C0**2*I**2*Y**2/(X**2+Y**2)**2+4*C0**2*I**2*X**2/(X**2+Y**2)**2)**(1./2)
plt.figure(2)
plt.quiver(X,Y,Bx,By,angles="xy",color="#666666")
plt.show()
3、运行结果