Całkowita siła działająca na obwód z prądem w kształcie skomplikowanej pętli w jednorodnym polu magnetycznym

rp={R*2Cos[6t],R*50Sin[17t],(R/26)*6Sin[7*t]}

R=2;plot1=ParametricPlot3D[rp,{t,0,2*Pi},AxesLabel->{"x","y","z"},PlotStyle->{Thick}];R=.;

Show[plot1]

dlpodt=D[rp,t]

B={B1,B2,B3}

v1=Cross[dlpodt,B]

i1=Integrate[v1,{t,0,2*Pi-1/10000000}]

N[i1]

i2=Integrate[v1,{t,0,2*Pi}]

ClearAll["Global`*"]

Całkowita siła działająca na “złamaną” kwadratową ramkę z prądem w jednorodnym polu magnetycznym

P1={-a/2,-a/(2*Sqrt[2]),a/(2*Sqrt[2])};

P2={ a/2,-a/(2*Sqrt[2]),a/(2*Sqrt[2])};

P3={ a/2,0,0};

P4={ a/2,a/(2*Sqrt[2]),a/(2*Sqrt[2])};

P5={- a/2,a/(2*Sqrt[2]),a/(2*Sqrt[2])};

P6={-a/2,0,0};

rp1=P1+t*(P2-P1);

rp2=P2+t*(P3-P2);

rp3=P3+t*(P4-P3);

rp4=P4+t*(P5-P4);

rp5=P5+t*(P6-P5);

rp6=P6+t*(P1-P6);

a=2;plot1=ParametricPlot3D[{rp1,rp2,rp3,rp4,rp5,rp6},{t,0,1},AxesLabel->{"x","y","z"}];
a=.;

Show[plot1]

dl1podt=D[rp1,t]

dl2podt=D[rp2,t]

dl3podt=D[rp3,t]

dl4podt=D[rp4,t]

dl5podt=D[rp5,t]

dl6podt=D[rp6,t]

B={B1,B2,B3}

v1=Cross[dl1podt,B]

v2=Cross[dl2podt,B]

v3=Cross[dl3podt,B]

v4=Cross[dl4podt,B]

v5=Cross[dl5podt,B]

v6=Cross[dl6podt,B]

v=v1+v2+v3+v4+v5+v6

F=Integrate[v,{t,0,1}]

ClearAll["Global`*"]

Całkowita siła działająca na (prawie) dowolny obwód z prądem w kształcie łamanej zbudowanej na n punktach w jednorodnym polu magnetycznym

n=11;

Pm=Array[P,{n,3}]

Pm[[1]]

Do[rp[i]=Pm[[i]]+t*(Pm[[i+1]]-Pm[[i]]),{i,1,n-1}];

rp[4]

rp[n]=Pm[[n]]+t*(Pm[[1]]-Pm[[n]]);

rp[2]

D[rp[2],t]

Do[dlpodt[i]=D[rp[i],t],{i,1,n}]

B={B1,B2,B3};

Do[v[i]=Cross[dlpodt[i],B],{i,1,n}]

v=Sum[v[i],{i,1,n}]

Oznacza to w istocie, że dla dowolnego obwodu z prądem w kształcie zamkniętej łamanej siła działająca ze strony stałego jednorodnego pola magnetycznego znika !

F=Integrate[v,{t,0,1}]

ClearAll["Global`*"]

Ilustracja do prawa Ampere’a

Najpierw liczymy indukcję magnetyczną pochodzącą od prostoliniowego przewodnika z prądem rozciągającego się między punktami P1 i P2

P1={-1,-3,-12};

P2={1,2,10};

rp1=P1+(P2-P1)*t

s=Solve[rp1[[3]]==0,t]

rp1z0=rp1/.s[[1]]

Rmin=N[Norm[rp1z0]]

plot1=ParametricPlot3D[rp1,{t,0,1}]

dl1podt=D[rp1,t]

r={x,y,z}

d1=Simplify[Sqrt[(r-rp1).(r-rp1)]]

v1=Simplify[Cross[dl1podt,r-rp1]/d1^3]

ft=Simplify[Integrate[v1,t],Element[t,Reals]&&Element[x,Reals]&&Element[y,Reals]&&Element[z,Reals]];

ft1=Simplify[ft/.{t->1}];

ft0=Simplify[ft/.{t->0}];

B=Simplify[ft1-ft0];

FTPLUSINF=Limit[ft,t->Infinity]

FTMINUSINF=Limit[ft,t->-Infinity]

BINF=Simplify[FTPLUSINF-FTMINUSINF]

Krążenie pola B liczymy po okręgu o promieniu R=1, środku w początku układu współrzędnych i leżącym w płaszczyźnie z=0

rp={R*Cos[t],R*Sin[t],0}

plot2=ParametricPlot3D[rp/.{R->1},{t,0,2*Pi},PlotStyle->Thick];

Show[plot1,plot2,AxesLabel->{"x","y","z"}]

dlpodt=D[rp,t]

Brp=B/.{x->R*Cos[t],y->R*Sin[t],z->0};

BINFrp=BINF/.{x->R*Cos[t],y->R*Sin[t],z->0};

cc[R_]=Simplify[Brp.dlpodt];

CCINF[R_]=Simplify[BINFrp.dlpodt];

i3[R_]:=NIntegrate[cc[R],{t,0,2*Pi},Method->{"GlobalAdaptive",Method->{"TrapezoidalRule","Points"->5000},"SingularityHandler"->None},WorkingPrecision->16,PrecisionGoal->12]/(4*Pi)

i4[R_]:=NIntegrate[cc[R],{t,0,2*Pi},Method->{"GlobalAdaptive",Method->{"TrapezoidalRule","Points"->5000},"SingularityHandler"->None},WorkingPrecision->18,PrecisionGoal->16]/(4*Pi)

(* Plot[i3[R],{R,1/1000,1}] *)

i3inf[R_]:=NIntegrate[CCINF[R],{t,0,2*Pi},Method->{"GlobalAdaptive",Method->{"TrapezoidalRule","Points"->5000},"SingularityHandler"->None},WorkingPrecision->16,PrecisionGoal->12]/(4*Pi)

i4inf[R_]:=NIntegrate[CCINF[R],{t,0,2*Pi},Method->{"GlobalAdaptive",Method->{"TrapezoidalRule","Points"->5000},"SingularityHandler"->None},WorkingPrecision->18,PrecisionGoal->16]/(4*Pi)

i3[1/100]

(* i3inf[1/100] *)

i3[1/2]

i3inf[1/2]

i4[1/100]

i4inf[1/100]

i3inf[3/2]

i3inf[2]

i3inf[10]

i3[10]

i3inf[20]

i3[20]

(* Plot[i3inf[R],{R,1/100,1},PlotPoints->10,PlotRange->{0,6/5}] *)

Plot[i3[R],{R,2/10,1},PlotPoints->10,PlotRange->{0,6/5}]

Plot[i3[R],{R,1,20},PlotPoints->10,PlotRange->{-1/7,8/7}]