Уразбаева К. Т., Мақамбаев М. Б. Компьютерлік модельдеу элементтері физика пәнінде



бет12/18
Дата20.06.2018
өлшемі0,85 Mb.
#43509
1   ...   8   9   10   11   12   13   14   15   ...   18

3.6 Кирхгоф заңы. Берілген тізбектегі ток күштерінің (i1, i2, i3) сыртқы кедергіге (R) тәуелділік графиктерін сызыңдар және клеммадағы кернеудің өзгеру аралығын анықтаңдар. R(0,11 Ом; 3,00 Ом) – сыртқы кедергі, ток көздерінің ішкі кедергілері – r1=0.01 Ом; r2=0.02 Ом; r3=0.03 Ом; Е.Қ.К.– E1=2.01 В; E2=1.84 В; E3=2.03 В;

4 сурет. Күрделі тізбек


Тармақталған тізбектер үшін Кирхгоф заңын пайдаланып берілген күрделі тізбектегі ток күштерінің бағыттарын ескерсек

үш белгісізді сызықтық теңдеулер жүйесін аламыз. Оны


сызықтық массивтерін пайдалану арқылы 2 тарауда берілген үш белгісізді сызықтық теңдеулер жүйесін шешу әдісін қолданып шешеміз. Zakon_Circhgofa программасы ток күштерінің R–ге тәуелділігінің графиктерін сызады. Программада үш өлшемді анықтауыштарды есептеу үшін Det функциясы сипатталған және теңдеулер жүйесін шешу үшін Крамер формулалары қолданылған. Клеммадағы кернеуді есептеу үшін U=E1 – r1∙i1 формуласын пайдалануға болады.


Program Zakon_Circhgofa;

uses Crt, Graph;

type TDet=array[1..3] of real;

const x0=32; y0=220; r1=0.01; r2=0.02; r3=0.03;

E1=2.01; E2=1.84; E3=2.03;

var Gd, Gm, a1, b1, c1, ed, rd, x1, y1, y11, y12, y13, j: integer;

R, Ro1, Ro2, dR, x, y, z, xmax, xmin, dt: real; s: string;

A, B, C, D: TDet;

function Det(R: real; V1,V2,V3: TDet): real;

begin


Det:=V1[1]*V2[2]*V3[3]+V1[3]*V2[1]*V3[2]+V1[2]*V2[3]*V3[1]-

V1[1]*V2[3]*V3[2]-V1[2]*V2[1]*V3[3]-V1[3]*V2[2]*V3[1];

end;

begin


Gd:=Detect; InitGraph(Gd,Gm,''); SetTextStyle(7,0,2); SetColor(11);

OutTextXY(108,0,'Zacon Circhgofa dlja razvetvlennoi scepi');

x1:=240; y1:=130; a1:=120; b1:=280; c1:=40; ed:=6; rd:=70;

SetColor(7); Circle(x1,y1-c1,3); Circle(x1,y1+b1+c1,3);

MoveTo(x1,y1); LineRel(-a1,0); LineRel(0,c1);

MoveTo(x1,y1); LineRel(a1,0); LineRel(0,c1);

MoveTo(x1,y1); LineRel(0,-c1); MoveTo(x1,y1); LineRel(0,c1);

y1:=y1+b1; MoveTo(x1,y1); LineRel(-a1,0); LineRel(0,-b1+c1+ed);

MoveTo(x1,y1); LineRel(a1,0); LineRel(0,-b1+c1+ed);

MoveTo(x1,y1); LineRel(0,-c1+15); MoveTo(x1,y1); LineRel(0,c1);

MoveTo(x1,y1-c1-rd); LineRel(0,-b1+2*c1+ed+rd);

y1:=y1-c1-rd; Rectangle(x1-10,y1,x1+10,y1+rd);

y1:=y1+rd+15; MoveTo(x1,y1); LineRel(-30,0); LineRel(0,-15-rd div 2);

LineRel(20,0); LineRel(-10,-3); LineRel(10,3); LineRel(-10,3);

y1:=y1-15+2*c1-b1; Line(x1-a1-20,y1,x1-a1+20,y1);

Line(x1-20,y1,x1+20,y1); Line(x1+a1-20,y1,x1+a1+20,y1);

y1:=y1+ed; Line(x1-a1-10,y1,x1-a1+10,y1);

Line(x1-10,y1,x1+10,y1); Line(x1+a1-10,y1,x1+a1+10,y1);

MoveTo(x1-a1-15,y1+110); LineRel(0,-40); LineRel(-3,10);

LineRel(3,-10); LineRel(3,10); MoveTo(x1-15,y1+110);

LineRel(0,-40); LineRel(-3,10); LineRel(3,-10); LineRel(3,10);

MoveTo(x1+a1-15,y1+110); LineRel(0,-40); LineRel(-3,10);

LineRel(3,-10); LineRel(3,10); SetColor(11); SetTextStyle(0,0,1);

OutTextXY(x1-a1-24,y1+4,'E1'); OutTextXY(x1-24,y1+4,'E2');

OutTextXY(x1+a1-24,y1+4,'E3'); OutTextXY(x1-a1+12,y1+4,'r1');

OutTextXY(x1+12,y1+4,'r2'); OutTextXY(x1+a1+12,y1+4,'r3');

OutTextXY(x1-a1-24,y1+56,'i1'); OutTextXY(x1-24,y1+56,'i2');

OutTextXY(x1+a1-24,y1+56,'i3');

OutTextXY(x1+20,y1-2*c1-ed+b1-rd div 2-4,'R');

Ro1:=0.11; Ro2:=3.00; R:=Ro1; dR:=0.0005;

SetTextStyle(0,0,1); SetColor(13);

Str(r1:4:2,s); OutTextXY(460,200,'r1 = '+s+' Oм');

Str(E1:4:2,s); OutTextXY(460,220,'E1 = '+s+' В');

Str(r2:4:2,s); OutTextXY(460,250,'r2 = '+s+' Oм');

Str(E2:4:2,s); OutTextXY(460,270,'E2 = '+s+' В');

Str(r3:4:2,s); OutTextXY(460,300,'r3 = '+s+' Oм');

Str(E3:4:2,s); OutTextXY(460,320,'E3 = '+s+' В');

Str(Ro1:4:2,s); OutTextXY(460,350,'R о ('+s+';');

Str(Ro2:4:2,s); OutTextXY(544,350,s+') Oм');

Readln; ClearDevice;

SetColor(7); Line(0,y0,640,y0); Line(x0,0,x0,480);

Line(640,y0,630,y0-4); Line(640,y0,630,y0+4);

Line(x0,0,x0-4,10); Line(x0,0,x0+4,10);

SetColor(7); OutTextXY(600,y0-15,'R(Oм)');

OutTextXY(x0+8,0,'i(A)'); OutTextXY(16,y0+4,'0');

SetColor(8);

For j:=1 to 12 do

begin


str(0.2*j:3:1,s); line(x0-5,y0-40*j,640,y0-40*j);OutTextXY(6,y0-40*j-8,s);

str(-0.2*j:3:1,s); line(x0-5,y0+40*j,640,y0+40*j);

OutTextXY(0,y0+40*j-8,s); str(0.25*j:4:2,s);

line(x0+50*j,0,x0+50*j,480); OutTextXY(50*j-2,y0+4,s);

end;

SetTextStyle(7,0,2); SetColor(11); xmax:=0; xmin:=0;



OutTextXY(136,0,'Zacon Circhgofa dlja razvetvlennoi scepi');

A[1]:=1; A[2]:=r1; A[3]:=r1;

B[1]:=1; B[2]:=0; B[3]:=0;

C[1]:=1; C[2]:=0; C[3]:=-r3;

D[1]:=0; D[2]:=E1-E2; D[3]:=E1-E3;

Repeat


B[2]:=-r2-R;

x:= Det(R,D,B,C)/Det(R,A,B,C);

y:= Det(R,A,D,C)/Det(R,A,B,C);

z:= Det(R,A,B,D)/Det(R,A,B,C);

if x>xmax then xmax:=x;

if x

x1:=Round(x0+R*200);

y11:=Round(y0-x*200); PutPixel(x1,y11,11);

y12:=Round(y0-y*200); PutPixel(x1,y12,12);

y13:=Round(y0-z*200); PutPixel(x1,y13,13);

R:=R+dR;

until R>Ro2;

SetTextStyle(0,0,1);

SetColor(11); OutTextXY(x1-8,y11-12,'i1');

SetColor(12); OutTextXY(x1-8,y12-12,'i2');

SetColor(13); OutTextXY(x1-8,y13-12,'i3');



Str(E1-r1*xmin:5:3,s); OutTextXY(456,396,'U ('+s+';');

Str(E1-r1*xmax:5:3,s); OutTextXY(550,396,s+') B');

Readln; CloseGraph;

end.



Достарыңызбен бөлісу:
1   ...   8   9   10   11   12   13   14   15   ...   18




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет