Electromotive force (voltage)

조회 수: 2 (최근 30일)
Kutlu Yigitturk
Kutlu Yigitturk 2021년 6월 18일
This Matlab program below implements the two operations, print the eVec& eMag and animate the Faraday’s law for any specified v,B & l , &.
B = [0 0 1]'; v = [0 1 0]'; length = [1 1 1]'; length = length/norm(length);
eVec = cross(v,B); eMag = dot(eVec,length); az = 50; el = 15;
close all;
grn = [0 .8 0]; brn = [.8 .5 0];
Fig = figure; Fig.Position = Fig.Position + [-200 0 100 0];
subplot(1,2,1)
plot3([0 B(1)],[0 B(2)],[0 B(3)],'b','linewidth',3); hold on, grid on
plot3([0 v(1)],[0 v(2)],[0 v(3)],'color',grn,'linewidth',3);
plot3([0 eVec(1)],[0 eVec(2)],[0 eVec(3)],'r','linewidth',3);
text(B(1),B(2),B(3)*1.2,'B','color','b')
text(v(1),v(2)*1.2,v(3),'v','color',grn)
text(eVec(1)*1.0,eVec(2)-.2,eVec(3)+.2,'eVec','color','r')
text(-1.2,-1.5,-1,num2str(B),'color','b'), text(-1.2,-1.5,-.2,'B','color','b'),
text(-.5,-1.5,-1,num2str(v),'color',grn), text(-.5,-1.5,-.2,'v','color','b'),
text(0.2,-1.5,-1,num2str(eVec),'color','r'),text(0.2,-1.7,-.2,'eVec','color','r'),
text(0.9,-1.5,-1,num2str(length,4),'color',brn), text(0.9,-1.6,-.3,'Rod','color',brn)
title('eVec = cross(v,B) eMag = dot(eVec,length)')
set(gca,'color',[1 1 1]*.9)
axis('equal'), axis([-1 1 -1 1 -1 1]*1.5), view(az,el)
Rod0 = [-length length]*0.75; Rod = Rod0 + v*0;
plot3(Rod(1,:),Rod(2,:),Rod(3,:),'linewidth',6,'color',brn);
text(Rod(1,1),Rod(2,1),Rod(3,1)+.3,'Rod','color',brn)
text(Rod(1,2)-.4,Rod(2,2),Rod(3,2)-.3,['eMag = ',num2str(eMag)],'color',brn)
xlabel('x'), ylabel('y'), zlabel('z')
subplot(1,2,2)
plot3([0 B(1)],[0 B(2)],[0 B(3)],'b','linewidth',1); hold on, grid on
plot3([0 v(1)],[0 v(2)],[0 v(3)],'g','linewidth',1);
plot3([0 eVec(1)],[0 eVec(2)],[0 eVec(3)],'r','linewidth',1);
set(gca,'color',[1 1 1]*.9)
axis('equal'), axis([-1 1 -1 1 -1 1]*2),view(az,el)
xlabel('x'), ylabel('y'), zlabel('z')
BFldx = [0 0 -.02 .02 0 0 0 0]; BFldy = [0 0 0 0 0 -.02 .02 0]; BFldz = [-1 1 0.9 0.9 1 .9 .9 1]*1.5;
for i = -2:0.5:2
for j = -2:0.5:2
plot3(BFldx'+i,BFldy'+j,BFldz','linewidth',0.1,'color',[.5 .5 1]);
end
end
drawnow
DrawRod = plot3(Rod(1,:),Rod(2,:),Rod(3,:),'linewidth',6,'color',brn);
TexteMag = text(Rod(1,2)+.1,Rod(2,2)+.1,Rod(3,2)+.1,['+',num2str(eMag)],'color',brn);
Tit = title(['eVec^t = [',num2str([0 0 0]),'] eMag = ',num2str(0)]);
for n = 1:3
Rod = Rod0;
set(DrawRod,'xdata',Rod(1,:),'ydata',Rod(2,:),'zdata',Rod(3,:));
set(TexteMag,'pos',Rod(:,2)+.1,'string',num2str(0))
set(Tit,'string',['eVec^t = [',num2str([0 0 0]),'] eMag = ',num2str(0)]), pause(1)
for m = 0:0.02:1
eVec = cross(v,B); eMag = dot(eVec,length);
Rod = Rod0 + v*m;
set(DrawRod,'xdata',Rod(1,:),'ydata',Rod(2,:),'zdata',Rod(3,:));
set(TexteMag,'pos',Rod(:,2)+.1,'string',num2str(eMag))
set(Tit,'string',['eVec^t = [',num2str(eVec'),'] eMag = ',num2str(eMag)])
drawnow, pause(0.001)
end
end
At this point I don't know how to change the I matrix. How can I do that? Thank you for your help.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Animation에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by