# Chapter 02 : Magnetic Circuits and Induction¶

## Example 2.1, Page No 148¶

In [1]:
import math
#initialisation of variables
U_o=4*math.pi*10**-7
U_r=6000
l_g=0.0006
l_c=.40
A_c=.04*.04
B_c=1.2
N=600

#Calculataions
i=(1/(U_o*N))*(((B_c*l_c)/U_r)+(B_c*l_g))
phi=B_c*A_c
lmda=N*phi
A_g=(.04+l_g)**2
B_g=phi/A_g

#Results
print("Neglecting fringing,current(A)=%.2f ohm" %i)
print("Flux(Wb)=%.4f " %phi)
print("Fringing taken into account,current(A)=%.2f " %B_g)

Neglecting fringing,current(A)=1.06 ohm
Flux(Wb)=0.0019
Fringing taken into account,current(A)=1.16


## Example 2.2, Page No 149¶

In [4]:
import math
#initialisation of variables
#Calculation of current reqd to produce flux in the given magnetic circuit.

U_o=4*math.pi*10**-7
U_r=4000
N=600
l_c=.30
l_g=0
dia=.02
phi=.5*10**-3        #flux

#Calculations
A=(math.pi/4)*dia**2
i=0;
R=((l_c/U_r)+l_g)/(U_o*A)
i=(phi*R)/N

print("no air gap current(A) =%.4f " %i)
#l_g=0.001
R=((l_c/U_r)+l_g)/(U_o*A)
i=(phi*R)/N
print("no air gap current(A) =%.4f " %i)

B_g=phi/A
print("B(T) =%.4f " %B_g)
H_g=B_g/U_o

AT_g=H_g*0.001

print("AT_g =%.4f " %AT_g)

H_c=3000
AT_c=H_c*0.30
print("AT_c =%.4f " %AT_c)

i=(AT_g+AT_c)/N

#Results
print("from magnetisation data, current(A) =%.4f " %i)

no air gap current(A) =0.1583
no air gap current(A) =0.1583
B(T) =1.5915
AT_g =1266.5148
AT_c =900.0000
from magnetisation data, current(A) =3.6109


## Example 2.3, Page No 149¶

In [7]:
import math
#initialisation of variables
#Determination of mmf of the exciting coil

U_o=4*math.pi*10**-7
A1=.0001
A2=.0002
l1=.025*10**-2
l2=.02*10**-2
phi=.75*10**-3

#Calculations
def reluctance(l,U_r,A):
Re=l/(U_o*U_r*A)
return Re

def mmf(R1,R2,R3):
Ni=phi*(R3+((R1*R2)/(R1+R2)))
return Ni

R_g1=reluctance(l1,1,A1)
R_g2=reluctance(l2,1,A1)
R_g3=reluctance(l2,1,A2)
print("when U_r=1,mmf(AT) =%.4f " %mmf(R_g1,R_g2,R_g3))
L1=l1*2*10**3
L2=l2*10**3
R_c1=reluctance(L1,5000,A1)
R_c2=reluctance(L1,5000,A1)
R_c3=reluctance(L2,5000,A2)

#Results
print("when U_r=5000,mmf(AT) =%.4f " %mmf(R_c1+R_g1,R_c2+R_g2,R_c3+R_g3))

when U_r=1,mmf(AT) =1259.9766
when U_r=5000,mmf(AT) =1680.3089


## Example 2.4 Page No 150¶

In [2]:
import math
#initialisation of variablesimport math
# Exciting current calculation needed to setup reqd flux

U_o=4*math.pi*10**-7
A1=800*10**-6
A2=600*10**-6
l1=1*10**-3            #air gap length
l2=160*10**-3          #length of central limb
l3=400*10**-3          #length of side limb
phi=.8*10**-3
N=500

#Calculations
def fd(A):
B=phi/A
return B

def mmf(l,B):
F=l/B
return F

#air gap
B_g=fd(A1)
F_g=mmf(l1,B_g)/U_o
print("F_g(AT) =%.4f " %F_g)
#central limb
B_c=B_g
F_c=mmf(l2,B_c)/10**-3
print("F_c(AT)=%.4f " %F_c)
#outer limb                flux is divided into half
B_o=fd(A2)/2
F_o=mmf(l3,B_o)/(4*10**-3)
print("F_o(AT)=%.4f " %F_o)
i=(F_g+F_c+F_o)/N            #    total mmf/no of turns

#Results
print("exciting current(A)=%.4f " %i)

F_g(AT) =795.7747
F_c(AT)=160.0000
F_o(AT)=150.0000
exciting current(A)=2.2115


## Example 2.5, Page No 151¶

In [4]:
import math
#initialisation of variables
# determination of excitation coil mmf
U_o=4*math.pi*10**-7
A1=25*10**-4
A2=12.5*10**-4
A3=25*10**-4
l1=.5             #length of side limb(ab+cd)
l3=.5             #length of side limb(dea)
l4=.25*10**-3           #length of air gap
phi=.75*10**-3
N=500

#Calculations
def fd(A):
B=phi/A
return B

def flux(B,l):
F=B*l/(U_o)
return F

def fl(H,l):
f=H*l
return f

B_abcd=fd(A1)
F_bc=flux(B_abcd,l4)
print("B_abcd(T) =%.4f " %B_abcd)
H_ab=200                         #for cast iron for B=0.3
F_abcd=fl(H_ab,l1)
B_ad=1.04                        #for cast iron for H=800
B_dea=phi_dea/A3
H_dea=500                         #for cast iron for B=.82
F_dea=H_dea*l3

#Results
print("reqd mmf(AT) =%.4f " %F)

B_abcd(T) =0.3000
reqd mmf(AT) =409.6831


## Example 2.7, Page No 152¶

In [6]:
import math
#initialisation of variables
#determination of self and mutual inductance b/w 2 coils

U_o=4*math.pi*10**-7
U_r=1600
A1=4*10**-4
A2=4*10**-4
A0=2*10**-4
N1=500
N2=1000

#Calculations
l1=.01*((6+0.5+1)*2+(4+2))
l2=.01*((3+0.5+1)*2+(4+2))
l0=.01*(4+2)

def reluc(l,A):
R=l/(U_o*U_r*A)
return R

R1=reluc(l1,A1)
R2=reluc(l2,A2)
R0=reluc(l0,A0)

def re(r0,r1,r2):
re=r0+((r1*r2)/(r1+r2))
return re

print('coil 1 excited with 1A')
R_1=re(R1,R0,R2)
phi1=N1/R_1
phi2=phi1*R0/(R0+R2)
L11=N1*phi1
print("self inductance(H) =%.4f " %L11)
M21=N2*phi2
print("mutual inductance(H) =%.4f " %M21)
print('coil 2 excited with 1A')
R_2=re(R2,R0,R1)
phi2=N2/R_2
L22=N2*phi2
print("self inductance(H) =%.4f " %L22)
M12=M21

#Results
print("mutual inductance(H) =%.4f " %M12)

coil 1 excited with 1A
self inductance(H) =0.7267
mutual inductance(H) =0.6460
coil 2 excited with 1A
self inductance(H) =3.5529
mutual inductance(H) =0.6460


## Example 2.8 Page No 163¶

In [7]:
import math
#initialisation of variables
#determination of R_c,R_g,L,W_f

U_o=4*math.pi*10**-7
U_r=6000
l_g=0.0006
l_c=.40
A_c=.04*.04
B_c=1.2
N=600

#Calculations
def current(B_g):
i=(1/(U_o*N))*(((B_c*l_c)/U_r)+(B_g*l_g))
return i

print("neglecting fringing,current(A)= %.4f " %current(B_c))

phi=B_c*A_c
print("flux(Wb)=%.4f " %phi)

lmda=N*phi
return lmda

def reluc(l,U,A):
R=l/(U_o*U*A)
return R
R_c=reluc(l_c,U_r,A_c)
print("R_c=%.4f " %R_c)
R_g=reluc(l_g,1,A_c)
print("R_g=%.4f " %R_g)

L=N**2/(R_c+R_g)
print("coil inductance(H)=%.4f " %L)
W_f=(N*phi)**2/(2*L)

#Results
print("energy stored in the magnetic field(J)=%.4f " %W_f)

neglecting fringing,current(A)= 1.0610
flux(Wb)=0.0019