Question: Plotting Variables From Indexed Table.

How do I access and plot the values from indexed tables QQ vs  PP? 
 


 

``

with(LinearAlgebra)

``

Xd := 1.6Xq := 1.55; Xpd := .32; Xe := .4; re := 0; Xe := .4; et := 1.0

M := 3; Tdo := 6.0; Ke := 5; Te := 0.5e-1

Q := -2.7; k := 0.2e-1; m := 1; FORW := 1; P := k

``

``

while `or`(P < 1.0 and FORW = 1, `and`(k > 0.1e-1, FORW = 0)) do PP[m] := k; P := PP[m]; if FORW = 1 then Q := -2.7 else Q := 3 end if; Test := 0; while `or`(Test = 0 and Q < 3 and FORW = 1, `and`(`and`(Test = 0, k > 0.1e-1), FORW = 0)) do if FORW = 1 then Q := Q+0.1e-1 else Q := Q-0.1e-1 end if; eto := abs(et); Ipo := P/eto; Iqo := Q/eto; Eqo := sqrt((Iqo*Xq+eto)^2+(Ipo*Xq)^2); Eo := sqrt((-Ipo*re-Iqo*Xe+eto)^2+(Ipo*Xe-Iqo*re)^2); `sin&delta;o` := (eto*Ipo*(Xq+Xe)-re*Xq*(Ipo^2+Iqo^2)-eto*Iqo*re)/(Eqo*Eo); `cos&delta;o` := (eto*(eto+Iqo*(Xq+Xe)-Ipo*re)-Xe*Xq*(Ipo^2+Iqo^2))/(Eqo*Eo); iqo := (Ipo*(Iqo*Xq+eto)-Iqo*Ipo*Xq)/Eqo; ido := (Ipo^2*Xq+Iqo*(Iqo*Xq+eto))/Eqo; eqo := eto*(Iqo*Xq+eto)/Eqo; edo := iqo*Xq; A := re^2+(Xe+Xpd)*(Xq+Xe); K1 := Eqo*Eo*(re*`sin&delta;o`+(Xe+Xpd)*`cos&delta;o`)/A+iqo*Eo*((Xq+Xpd)*(Xq+Xe)*`sin&delta;o`-re*(Xq-Xpd)*`cos&delta;o`)/A; K2 := re*Eqo/A+iqo*(1+(Xq+Xe)*(Xq-Xpd)/A); K3 := 1/(1+(Xq+Xe)*(Xd-Xpd)/A); K4 := Eo*(Xd-Xpd)*(Xq+Xe)*`sin&delta;o`/A-re*`cos&delta;o`; K5 := edo*Xq*(re*Eo*`sin&delta;o`+(Xe+Xpd)*Eo*`cos&delta;o`)/(eto*A)+eqo*Xpd*(re*Eo*`cos&delta;o`-(Xq+Xe)*Eo*`sin&delta;o`)/(eto*A); K6 := eqo*(1-Xpd*(Xq+Xe)/A)/eto+edo*Xq*re/(eto*A); A3 := Matrix(4, 4, {(1, 1) = 0, (1, 2) = 377, (1, 3) = 0, (1, 4) = 0, (2, 1) = -K1/M, (2, 2) = 0, (2, 3) = -K2/M, (2, 4) = 0, (3, 1) = -K4/Tdo, (3, 2) = 0, (3, 3) = -1/(K3*Tdo), (3, 4) = 1/Tdo, (4, 1) = -Ke*K5/Te, (4, 2) = 0, (4, 3) = -Ke*K6/Te, (4, 4) = -1/Te}); Eig := Eigenvalues(A3); if `and`(`and`(`and`(Re(Eig[1]) < 0, Re(Eig[2]) < 0), Re(Eig[3]) < 0), Re(Eig[4]) < 0) then Test := 1 else Test := 0 end if end do; if `and`(FORW = 1, Q > 2.8) then m := m-2; k := k-0.2e-1 else QQ[m] := Q end if; m := m+1; if FORW = 1 then k := k+.1 else k := k-.1 end if end do
``

`` 

PP[]; QQ[]; PP[() .. ()]

PP[() .. ()]

(1)

PP[9]; QQ[9]

-.70

(2)

PP()

(table( [( 1 ) = 0.2e-1, ( 2 ) = .12, ( 3 ) = .22, ( 4 ) = .32, ( 5 ) = .42, ( 6 ) = .52, ( 7 ) = .62, ( 9 ) = .82, ( 8 ) = .72, ( 11 ) = 1.02, ( 10 ) = .92 ] ))()

(3)

``

QQ()

(table( [( 1 ) = -.42, ( 2 ) = -.45, ( 3 ) = -.49, ( 4 ) = -.55, ( 5 ) = -.60, ( 6 ) = -.64, ( 7 ) = -.67, ( 9 ) = -.70, ( 8 ) = -.69, ( 11 ) = -.69, ( 10 ) = -.70 ] ))()

(4)

 

 

 

NULL

NULL


 

Download SS_Stability(Ks)_3.mw

Please Wait...