No BSD License  

Highlights from
Dynamic Simulations of Electric Machinery : Using MATLAB/SIMULINK

image thumbnail
from Dynamic Simulations of Electric Machinery : Using MATLAB/SIMULINK by Wei Jiang
Modelling and simulation of electrical machines with matlab/simulink

[ret,x0,str,ts,xts]=s5(t,x,u,flag);
function [ret,x0,str,ts,xts]=s5(t,x,u,flag);
%s5	is the M-file description of the SIMULINK system named s5.
%	s5 has a the following characteristics:
%		9 continuous states
%		0 discrete states
%		0 outputs
%		0 inputs
%		does not have direct feedthrough
%		1 sample times
%
%	The block-diagram can be displayed by typing: s5.
%
%	SYS=s5(T,X,U,FLAG) returns depending on FLAG certain
%	system values given time point, T, current state vector, X,
%	and input vector, U.
%	FLAG is used to indicate the type of output to be returned in SYS.
%
%	Setting FLAG=1 causes s5 to return state derivatives, FLAG=2
%	discrete states, FLAG=3 system outputs and FLAG=4 next sample
%	time. For more information and other options see SFUNC.
%
%	Calling s5 with a FLAG of zero:
%	[SIZES]=s5([],[],[],0),  returns a vector, SIZES, which
%	contains the sizes of the state vector and other parameters.
%		SIZES(1) number of states
%		SIZES(2) number of discrete states
%		SIZES(3) number of outputs
%		SIZES(4) number of inputs
%		SIZES(5) number of roots (currently unsupported)
%		SIZES(6) direct feedthrough flag
%		SIZES(7) number of sample times
%
%	For the definition of other parameters in SIZES, see SFUNC.
%	See also, TRIM, LINMOD, LINSIM, EULER, RK23, RK45, ADAMS, GEAR.

% Note: This M-file is only used for saving graphical information;
%       after the model is loaded into memory an internal model
%       representation is used.

% the system will take on the name of this mfile:
sys = mfilename;
new_system(sys)
simver(1.3)
if (0 == (nargin + nargout))
     set_param(sys,'Location',[12,63,803,536])
     open_system(sys)
end;
set_param(sys,'algorithm',     'Adams/Gear')
set_param(sys,'Start time',    '0.0')
set_param(sys,'Stop time',     'tstop')
set_param(sys,'Min step size', '1e-6')
set_param(sys,'Max step size', '1e-2')
set_param(sys,'Relative error','1e-6')
set_param(sys,'Return vars',   '')
set_param(sys,'AssignWideVectorLines','on');

add_block('built-in/Gain',[sys,'/','vbg'])
set_param([sys,'/','vbg'],...
		'Gain','400*Zb',...
		'position',[510,190,530,210])

add_block('built-in/Transfer Fcn',[sys,'/',['Flux ',13,'controller']])
set_param([sys,'/',['Flux ',13,'controller']],...
		'Numerator','[16 4]',...
		'Denominator','[1 0]',...
		'position',[160,365,215,405])

add_block('built-in/Sum',[sys,'/','Sum4'])
set_param([sys,'/','Sum4'],...
		'inputs','+-',...
		'position',[130,368,145,397])

add_block('built-in/Fcn',[sys,'/','Vs-Tem'])
set_param([sys,'/','Vs-Tem'],...
		'Expr','VsTem(1)*u[1]*u[1] + VsTem(3)',...
		'position',[60,365,100,385])


%     Subsystem  'Tmech'.

new_system([sys,'/','Tmech'])
set_param([sys,'/','Tmech'],'Location',[5,40,315,196])

add_block('built-in/Outport',[sys,'/','Tmech/out_1'])
set_param([sys,'/','Tmech/out_1'],...
		'position',[285,60,305,80])

add_block('built-in/Look Up Table',[sys,'/','Tmech/Look-Up Table'])
set_param([sys,'/','Tmech/Look-Up Table'],...
		'Input_Values','t',...
		'Output_Values','y',...
		'position',[210,58,250,82])

add_block('built-in/Fcn',[sys,'/','Tmech/Fcn1'])
set_param([sys,'/','Tmech/Fcn1'],...
		'Expr','rem(u[1],period)',...
		'position',[110,60,150,80])

add_block('built-in/Clock',[sys,'/','Tmech/Clock'])
set_param([sys,'/','Tmech/Clock'],...
		'position',[45,60,65,80])
add_line([sys,'/','Tmech'],[255,70;280,70])
add_line([sys,'/','Tmech'],[70,70;105,70])
add_line([sys,'/','Tmech'],[155,70;205,70])
set_param([sys,'/','Tmech'],...
		'Mask Display','plot([t,t+period,t+2*period],[y,y,y])',...
		'Mask Type','Repeating table',...
		'Mask Dialogue','Repeating table.\nEnter values of time and output for first cycle.|Time values:|Output values:')
set_param([sys,'/','Tmech'],...
		'Mask Translate','period = max(@1); t = @1; y = @2;',...
		'Mask Help','Repeats cycle given in table. Time values should be monotonically increasing.',...
		'Mask Entries','tmech_time\/tmech_value\/')


%     Finished composite block 'Tmech'.

set_param([sys,'/','Tmech'],...
		'position',[625,260,650,280])


%     Subsystem  'pm_motor'.

new_system([sys,'/','pm_motor'])
set_param([sys,'/','pm_motor'],'Location',[182,400,716,773])

add_block('built-in/Inport',[sys,'/','pm_motor/vq'])
set_param([sys,'/','pm_motor/vq'],...
		'position',[60,65,80,85])

add_block('built-in/Product',[sys,'/','pm_motor/prod1'])
set_param([sys,'/','pm_motor/prod1'],...
		'orientation',2,...
		'Font Number',3,...
		'position',[165,148,185,172])

add_block('built-in/Product',[sys,'/','pm_motor/prod2'])
set_param([sys,'/','pm_motor/prod2'],...
		'orientation',2,...
		'Font Number',3,...
		'position',[165,193,185,222])

add_block('built-in/Outport',[sys,'/','pm_motor/id_motor'])
set_param([sys,'/','pm_motor/id_motor'],...
		'Port','2',...
		'position',[240,310,260,330])


%     Subsystem  'pm_motor/Rotor'.

new_system([sys,'/','pm_motor/Rotor'])
set_param([sys,'/','pm_motor/Rotor'],'Location',[361,139,920,407])

add_block('built-in/Outport',[sys,'/','pm_motor/Rotor/Tem'])
set_param([sys,'/','pm_motor/Rotor/Tem'],...
		'position',[275,188,300,212])

add_block('built-in/Inport',[sys,'/','pm_motor/Rotor/id'])
set_param([sys,'/','pm_motor/Rotor/id'],...
		'Port','4',...
		'position',[85,200,105,220])

add_block('built-in/Inport',[sys,'/','pm_motor/Rotor/iq'])
set_param([sys,'/','pm_motor/Rotor/iq'],...
		'position',[85,85,105,105])

add_block('built-in/Inport',[sys,'/','pm_motor/Rotor/Tmech'])
set_param([sys,'/','pm_motor/Rotor/Tmech'],...
		'Port','5',...
		'position',[85,45,105,65])

add_block('built-in/Integrator',[sys,'/','pm_motor/Rotor/wr//wb'])
set_param([sys,'/','pm_motor/Rotor/wr//wb'],...
		'Initial','wrbywbo',...
		'position',[410,111,440,149])

add_block('built-in/Note',[sys,'/','pm_motor/Rotor/Tem_'])
set_param([sys,'/','pm_motor/Rotor/Tem_'],...
		'position',[225,130,230,135])

add_block('built-in/Product',[sys,'/','pm_motor/Rotor/Prod'])
set_param([sys,'/','pm_motor/Rotor/Prod'],...
		'position',[145,114,160,136])

add_block('built-in/Inport',[sys,'/','pm_motor/Rotor/psiq'])
set_param([sys,'/','pm_motor/Rotor/psiq'],...
		'Port','3',...
		'position',[85,160,105,180])

add_block('built-in/Product',[sys,'/','pm_motor/Rotor/Prod2'])
set_param([sys,'/','pm_motor/Rotor/Prod2'],...
		'position',[145,165,160,185])

add_block('built-in/Sum',[sys,'/','pm_motor/Rotor/Sum12'])
set_param([sys,'/','pm_motor/Rotor/Sum12'],...
		'inputs','+-',...
		'position',[185,101,205,199])

add_block('built-in/Inport',[sys,'/','pm_motor/Rotor/psid '])
set_param([sys,'/','pm_motor/Rotor/psid '],...
		'Port','2',...
		'position',[85,120,105,140])

add_block('built-in/Gain',[sys,'/','pm_motor/Rotor/D'])
set_param([sys,'/','pm_motor/Rotor/D'],...
		'orientation',2,...
		'Gain','Domega',...
		'position',[320,58,395,92])

add_block('built-in/Sum',[sys,'/','pm_motor/Rotor/Tacc'])
set_param([sys,'/','pm_motor/Rotor/Tacc'],...
		'inputs','-++',...
		'position',[275,100,295,160])

add_block('built-in/Gain',[sys,'/','pm_motor/Rotor/1//2H'])
set_param([sys,'/','pm_motor/Rotor/1//2H'],...
		'Gain','1/(2*H)',...
		'position',[315,110,385,150])

add_block('built-in/Outport',[sys,'/','pm_motor/Rotor/wr//wb '])
set_param([sys,'/','pm_motor/Rotor/wr//wb '],...
		'Port','2',...
		'position',[510,120,530,140])
add_line([sys,'/','pm_motor/Rotor'],[315,75;255,75;255,110;270,110])
add_line([sys,'/','pm_motor/Rotor'],[210,150;270,150])
add_line([sys,'/','pm_motor/Rotor'],[165,175;180,175])
add_line([sys,'/','pm_motor/Rotor'],[390,130;405,130])
add_line([sys,'/','pm_motor/Rotor'],[300,130;310,130])
add_line([sys,'/','pm_motor/Rotor'],[165,125;180,125])
add_line([sys,'/','pm_motor/Rotor'],[110,95;120,95;120,120;140,120])
add_line([sys,'/','pm_motor/Rotor'],[110,130;140,130])
add_line([sys,'/','pm_motor/Rotor'],[110,170;140,170])
add_line([sys,'/','pm_motor/Rotor'],[110,210;120,210;120,180;140,180])
add_line([sys,'/','pm_motor/Rotor'],[210,150;245,150;245,200;270,200])
add_line([sys,'/','pm_motor/Rotor'],[445,130;460,130;460,75;400,75])
add_line([sys,'/','pm_motor/Rotor'],[110,55;240,55;240,130;270,130])
add_line([sys,'/','pm_motor/Rotor'],[445,130;505,130])


%     Finished composite block 'pm_motor/Rotor'.

set_param([sys,'/','pm_motor/Rotor'],...
		'Font Number',3,...
		'position',[345,230,395,330])

add_block('built-in/Inport',[sys,'/','pm_motor/Tmech'])
set_param([sys,'/','pm_motor/Tmech'],...
		'Port','4',...
		'position',[295,310,315,330])


%     Subsystem  'pm_motor/q_cct'.

new_system([sys,'/','pm_motor/q_cct'])
set_param([sys,'/','pm_motor/q_cct'],'Location',[159,307,956,658])

add_block('built-in/Integrator',[sys,'/','pm_motor/q_cct/psiq_'])
set_param([sys,'/','pm_motor/q_cct/psiq_'],...
		'Initial','Psiqo',...
		'position',[390,127,420,153])

add_block('built-in/Fcn',[sys,'/','pm_motor/q_cct/Fcn'])
set_param([sys,'/','pm_motor/q_cct/Fcn'],...
		'Expr','wb*(u[2]-u[3]+(rs/xls)*(u[1]-u[4]))',...
		'position',[180,125,375,155])

add_block('built-in/Inport',[sys,'/','pm_motor/q_cct/In_wrpsid'])
set_param([sys,'/','pm_motor/q_cct/In_wrpsid'],...
		'Port','2',...
		'position',[50,160,70,180])

add_block('built-in/Inport',[sys,'/','pm_motor/q_cct/In_vq'])
set_param([sys,'/','pm_motor/q_cct/In_vq'],...
		'position',[50,105,70,125])

add_block('built-in/Mux',[sys,'/','pm_motor/q_cct/Mux'])
set_param([sys,'/','pm_motor/q_cct/Mux'],...
		'position',[135,86,160,189])

add_block('built-in/Mux',[sys,'/','pm_motor/q_cct/Mux4'])
set_param([sys,'/','pm_motor/q_cct/Mux4'],...
		'inputs','2',...
		'position',[495,179,520,246])

add_block('built-in/Fcn',[sys,'/','pm_motor/q_cct/Fcn4'])
set_param([sys,'/','pm_motor/q_cct/Fcn4'],...
		'Expr','(u[1]-u[2])/xls',...
		'position',[540,202,630,228])

add_block('built-in/Outport',[sys,'/','pm_motor/q_cct/Out_iq'])
set_param([sys,'/','pm_motor/q_cct/Out_iq'],...
		'Port','2',...
		'position',[665,205,685,225])

add_block('built-in/Fcn',[sys,'/','pm_motor/q_cct/Fcn5'])
set_param([sys,'/','pm_motor/q_cct/Fcn5'],...
		'Expr','xMQ*u[1]/xls',...
		'position',[510,127,600,153])

add_block('built-in/Outport',[sys,'/','pm_motor/q_cct/Out_psiq'])
set_param([sys,'/','pm_motor/q_cct/Out_psiq'],...
		'position',[460,90,480,110])

add_block('built-in/Note',[sys,'/','pm_motor/q_cct/psimq'])
set_param([sys,'/','pm_motor/q_cct/psimq'],...
		'position',[645,115,650,120])

add_block('built-in/Outport',[sys,'/','pm_motor/q_cct/Out_psimq'])
set_param([sys,'/','pm_motor/q_cct/Out_psimq'],...
		'Port','3',...
		'position',[725,130,745,150])
add_line([sys,'/','pm_motor/q_cct'],[75,170;95,170;95,150;130,150])
add_line([sys,'/','pm_motor/q_cct'],[75,115;95,115;95,125;130,125])
add_line([sys,'/','pm_motor/q_cct'],[165,140;175,140])
add_line([sys,'/','pm_motor/q_cct'],[380,140;385,140])
add_line([sys,'/','pm_motor/q_cct'],[425,140;435,140;435,205;115,205;115,175;130,175])
add_line([sys,'/','pm_motor/q_cct'],[525,215;535,215])
add_line([sys,'/','pm_motor/q_cct'],[425,140;470,140;470,195;490,195])
add_line([sys,'/','pm_motor/q_cct'],[635,215;660,215])
add_line([sys,'/','pm_motor/q_cct'],[425,140;435,140;435,100;455,100])
add_line([sys,'/','pm_motor/q_cct'],[425,140;505,140])
add_line([sys,'/','pm_motor/q_cct'],[605,140;700,140;700,275;470,275;470,230;490,230])
add_line([sys,'/','pm_motor/q_cct'],[605,140;700,140;700,80;115,80;115,100;130,100])
add_line([sys,'/','pm_motor/q_cct'],[605,140;720,140])


%     Finished composite block 'pm_motor/q_cct'.

set_param([sys,'/','pm_motor/q_cct'],...
		'position',[155,57,195,133])

add_block('built-in/Note',[sys,'/','pm_motor/psid'])
set_param([sys,'/','pm_motor/psid'],...
		'position',[205,240,210,245])

add_block('built-in/Inport',[sys,'/','pm_motor/vd'])
set_param([sys,'/','pm_motor/vd'],...
		'Port','2',...
		'position',[55,250,75,270])

add_block('built-in/Inport',[sys,'/','pm_motor/Ipm'])
set_param([sys,'/','pm_motor/Ipm'],...
		'Port','3',...
		'position',[55,300,75,320])


%     Subsystem  'pm_motor/d_cct'.

new_system([sys,'/','pm_motor/d_cct'])
set_param([sys,'/','pm_motor/d_cct'],'Location',[71,250,938,576])

add_block('built-in/Outport',[sys,'/','pm_motor/d_cct/Out_psid'])
set_param([sys,'/','pm_motor/d_cct/Out_psid'],...
		'position',[585,45,605,65])

add_block('built-in/Fcn',[sys,'/','pm_motor/d_cct/Fcn3'])
set_param([sys,'/','pm_motor/d_cct/Fcn3'],...
		'Expr','xMD*(u[1]/xls+u[2])',...
		'position',[565,113,735,147])

add_block('built-in/Mux',[sys,'/','pm_motor/d_cct/Mux3'])
set_param([sys,'/','pm_motor/d_cct/Mux3'],...
		'inputs','2',...
		'position',[520,91,545,169])

add_block('built-in/Integrator',[sys,'/','pm_motor/d_cct/psid_'])
set_param([sys,'/','pm_motor/d_cct/psid_'],...
		'Initial','Psido',...
		'position',[390,127,420,153])

add_block('built-in/Fcn',[sys,'/','pm_motor/d_cct/Fcn'])
set_param([sys,'/','pm_motor/d_cct/Fcn'],...
		'Expr','wb*(u[2]+u[3]+(rs/xls)*(u[1]-u[4]))',...
		'position',[180,125,375,155])

add_block('built-in/Inport',[sys,'/','pm_motor/d_cct/In_wrpsiq'])
set_param([sys,'/','pm_motor/d_cct/In_wrpsiq'],...
		'Port','2',...
		'position',[50,160,70,180])

add_block('built-in/Inport',[sys,'/','pm_motor/d_cct/In_vd'])
set_param([sys,'/','pm_motor/d_cct/In_vd'],...
		'position',[50,105,70,125])

add_block('built-in/Mux',[sys,'/','pm_motor/d_cct/Mux'])
set_param([sys,'/','pm_motor/d_cct/Mux'],...
		'position',[135,86,160,189])

add_block('built-in/Inport',[sys,'/','pm_motor/d_cct/In_Ipm'])
set_param([sys,'/','pm_motor/d_cct/In_Ipm'],...
		'Port','3',...
		'position',[50,225,70,245])

add_block('built-in/Mux',[sys,'/','pm_motor/d_cct/Mux4'])
set_param([sys,'/','pm_motor/d_cct/Mux4'],...
		'inputs','2',...
		'position',[520,194,540,261])

add_block('built-in/Fcn',[sys,'/','pm_motor/d_cct/Fcn4'])
set_param([sys,'/','pm_motor/d_cct/Fcn4'],...
		'Expr','(u[1]-u[2])/xls',...
		'position',[570,217,660,243])

add_block('built-in/Outport',[sys,'/','pm_motor/d_cct/Out_id'])
set_param([sys,'/','pm_motor/d_cct/Out_id'],...
		'Port','2',...
		'position',[795,220,815,240])

add_block('built-in/Outport',[sys,'/','pm_motor/d_cct/Out_psimd'])
set_param([sys,'/','pm_motor/d_cct/Out_psimd'],...
		'Port','3',...
		'position',[795,120,815,140])
add_line([sys,'/','pm_motor/d_cct'],[75,170;95,170;95,150;130,150])
add_line([sys,'/','pm_motor/d_cct'],[75,115;95,115;95,125;130,125])
add_line([sys,'/','pm_motor/d_cct'],[165,140;175,140])
add_line([sys,'/','pm_motor/d_cct'],[380,140;385,140])
add_line([sys,'/','pm_motor/d_cct'],[425,140;435,140;435,205;115,205;115,175;130,175])
add_line([sys,'/','pm_motor/d_cct'],[425,140;435,140;435,110;515,110])
add_line([sys,'/','pm_motor/d_cct'],[550,130;560,130])
add_line([sys,'/','pm_motor/d_cct'],[545,230;565,230])
add_line([sys,'/','pm_motor/d_cct'],[425,140;470,140;470,210;515,210])
add_line([sys,'/','pm_motor/d_cct'],[740,130;755,130;755,275;495,275;495,245;515,245])
add_line([sys,'/','pm_motor/d_cct'],[740,130;755,130;755,80;115,80;115,100;130,100])
add_line([sys,'/','pm_motor/d_cct'],[740,130;790,130])
add_line([sys,'/','pm_motor/d_cct'],[665,230;790,230])
add_line([sys,'/','pm_motor/d_cct'],[425,140;435,140;435,55;580,55])
add_line([sys,'/','pm_motor/d_cct'],[75,235;450,235;450,150;515,150])


%     Finished composite block 'pm_motor/d_cct'.

set_param([sys,'/','pm_motor/d_cct'],...
		'position',[150,248,190,322])

add_block('built-in/Note',[sys,'/','pm_motor/id'])
set_param([sys,'/','pm_motor/id'],...
		'position',[205,265,210,270])

add_block('built-in/Outport',[sys,'/','pm_motor/iq_motor'])
set_param([sys,'/','pm_motor/iq_motor'],...
		'position',[340,85,360,105])

add_block('built-in/Note',[sys,'/','pm_motor/iq'])
set_param([sys,'/','pm_motor/iq'],...
		'position',[210,75,215,80])

add_block('built-in/Note',[sys,'/','pm_motor/psiq'])
set_param([sys,'/','pm_motor/psiq'],...
		'position',[215,50,220,55])

add_block('built-in/Outport',[sys,'/','pm_motor/Tem'])
set_param([sys,'/','pm_motor/Tem'],...
		'Port','3',...
		'position',[460,245,480,265])

add_block('built-in/Outport',[sys,'/','pm_motor/wr//wb'])
set_param([sys,'/','pm_motor/wr//wb'],...
		'Port','4',...
		'position',[460,295,480,315])

add_block('built-in/Scope',[sys,'/','pm_motor/Scope'])
set_param([sys,'/','pm_motor/Scope'],...
		'Vgain','100.000000',...
		'Hgain','1.000000',...
		'Vmax','100.000000',...
		'Hmax','2.000000',...
		'Window',[184,667,647,821],...
		'position',[440,92,460,118])
add_line([sys,'/','pm_motor'],[320,320;340,320])
add_line([sys,'/','pm_motor'],[195,260;340,260])
add_line([sys,'/','pm_motor'],[195,285;220,285;220,300;340,300])
add_line([sys,'/','pm_motor'],[200,95;290,95;290,240;340,240])
add_line([sys,'/','pm_motor'],[200,70;255,70;255,280;340,280])
add_line([sys,'/','pm_motor'],[200,95;335,95])
add_line([sys,'/','pm_motor'],[195,285;220,285;220,320;235,320])
add_line([sys,'/','pm_motor'],[160,160;120,160;120,115;150,115])
add_line([sys,'/','pm_motor'],[85,75;150,75])
add_line([sys,'/','pm_motor'],[195,260;235,260;235,165;190,165])
add_line([sys,'/','pm_motor'],[200,70;255,70;255,215;190,215])
add_line([sys,'/','pm_motor'],[80,310;145,310])
add_line([sys,'/','pm_motor'],[80,260;145,260])
add_line([sys,'/','pm_motor'],[160,210;120,210;120,285;145,285])
add_line([sys,'/','pm_motor'],[400,305;415,305;415,155;190,155])
add_line([sys,'/','pm_motor'],[400,305;415,305;415,200;190,200])
add_line([sys,'/','pm_motor'],[400,305;455,305])
add_line([sys,'/','pm_motor'],[400,255;455,255])


%     Finished composite block 'pm_motor'.

set_param([sys,'/','pm_motor'],...
		'position',[670,156,710,284])

add_block('built-in/Note',[sys,'/','v0'])
set_param([sys,'/','v0'],...
		'position',[618,214,623,219])

add_block('built-in/Constant',[sys,'/','Ipm'])
set_param([sys,'/','Ipm'],...
		'Value','Ipm',...
		'position',[630,225,655,245])

add_block('built-in/Note',[sys,'/','vd'])
set_param([sys,'/','vd'],...
		'position',[618,184,623,189])


%     Subsystem  'abc2qd0'.

new_system([sys,'/','abc2qd0'])
set_param([sys,'/','abc2qd0'],'Location',[454,254,1125,632])

add_block('built-in/Outport',[sys,'/','abc2qd0/vq'])
set_param([sys,'/','abc2qd0/vq'],...
		'position',[595,70,615,90])

add_block('built-in/Outport',[sys,'/','abc2qd0/vd'])
set_param([sys,'/','abc2qd0/vd'],...
		'Port','2',...
		'position',[590,145,610,165])

add_block('built-in/Outport',[sys,'/','abc2qd0/vd0'])
set_param([sys,'/','abc2qd0/vd0'],...
		'Port','3',...
		'position',[590,225,610,245])

add_block('built-in/Fcn',[sys,'/','abc2qd0/abc2q'])
set_param([sys,'/','abc2qd0/abc2q'],...
		'Expr','(2*u[1]- u[2] - u[3])/3',...
		'position',[150,129,290,151])

add_block('built-in/Fcn',[sys,'/','abc2qd0/abc20'])
set_param([sys,'/','abc2qd0/abc20'],...
		'Expr','(u[1] + u[2]  + u[3])/3',...
		'position',[150,224,290,246])

add_block('built-in/Fcn',[sys,'/','abc2qd0/abc2d'])
set_param([sys,'/','abc2qd0/abc2d'],...
		'Expr','(u[3] -u[2])/sqrt(3)',...
		'position',[150,174,290,196])

add_block('built-in/Inport',[sys,'/','abc2qd0/vc'])
set_param([sys,'/','abc2qd0/vc'],...
		'Port','3',...
		'position',[40,210,60,230])

add_block('built-in/Inport',[sys,'/','abc2qd0/vb'])
set_param([sys,'/','abc2qd0/vb'],...
		'Port','2',...
		'position',[40,175,60,195])

add_block('built-in/Inport',[sys,'/','abc2qd0/va'])
set_param([sys,'/','abc2qd0/va'],...
		'position',[40,140,60,160])

add_block('built-in/Mux',[sys,'/','abc2qd0/Mux'])
set_param([sys,'/','abc2qd0/Mux'],...
		'inputs','3',...
		'position',[90,129,115,241])

add_block('built-in/Note',[sys,'/','abc2qd0/vds'])
set_param([sys,'/','abc2qd0/vds'],...
		'position',[325,150,330,155])

add_block('built-in/Inport',[sys,'/','abc2qd0/cos_thetar'])
set_param([sys,'/','abc2qd0/cos_thetar'],...
		'Port','4',...
		'position',[40,60,60,80])

add_block('built-in/Mux',[sys,'/','abc2qd0/Mux1'])
set_param([sys,'/','abc2qd0/Mux1'],...
		'position',[375,56,400,189])

add_block('built-in/Inport',[sys,'/','abc2qd0/sin_thetar'])
set_param([sys,'/','abc2qd0/sin_thetar'],...
		'Port','5',...
		'position',[40,95,60,115])

add_block('built-in/Note',[sys,'/','abc2qd0/abc2qd0'])
set_param([sys,'/','abc2qd0/abc2qd0'],...
		'position',[205,275,210,280])

add_block('built-in/Note',[sys,'/','abc2qd0/qds2qdr'])
set_param([sys,'/','abc2qd0/qds2qdr'],...
		'position',[470,275,475,280])

add_block('built-in/Fcn',[sys,'/','abc2qd0/qds2dr'])
set_param([sys,'/','abc2qd0/qds2dr'],...
		'Expr','u[2]*u[3] + u[1]*u[4] ',...
		'position',[425,143,560,167])

add_block('built-in/Fcn',[sys,'/','abc2qd0/qds2qr'])
set_param([sys,'/','abc2qd0/qds2qr'],...
		'Expr','u[1]*u[3] - u[2]*u[4]',...
		'position',[425,68,560,92])

add_block('built-in/Note',[sys,'/','abc2qd0/vqs'])
set_param([sys,'/','abc2qd0/vqs'],...
		'position',[325,118,330,123])
add_line([sys,'/','abc2qd0'],[120,185;125,185;125,140;145,140])
add_line([sys,'/','abc2qd0'],[120,185;145,185])
add_line([sys,'/','abc2qd0'],[405,125;405,80;420,80])
add_line([sys,'/','abc2qd0'],[405,125;405,155;420,155])
add_line([sys,'/','abc2qd0'],[65,150;85,150])
add_line([sys,'/','abc2qd0'],[65,185;85,185])
add_line([sys,'/','abc2qd0'],[65,220;85,220])
add_line([sys,'/','abc2qd0'],[565,80;590,80])
add_line([sys,'/','abc2qd0'],[565,155;585,155])
add_line([sys,'/','abc2qd0'],[120,185;125,185;125,235;145,235])
add_line([sys,'/','abc2qd0'],[65,70;370,70])
add_line([sys,'/','abc2qd0'],[65,105;370,105])
add_line([sys,'/','abc2qd0'],[295,140;370,140])
add_line([sys,'/','abc2qd0'],[295,185;325,185;325,175;370,175])
add_line([sys,'/','abc2qd0'],[295,235;585,235])


%     Finished composite block 'abc2qd0'.

set_param([sys,'/','abc2qd0'],...
		'Font Number',3,...
		'position',[575,156,610,254])


%     Subsystem  'qdr2abc1'.

new_system([sys,'/','qdr2abc1'])
set_param([sys,'/','qdr2abc1'],'Location',[56,346,800,637])

add_block('built-in/Mux',[sys,'/','qdr2abc1/Mux'])
set_param([sys,'/','qdr2abc1/Mux'],...
		'position',[125,34,155,196])

add_block('built-in/Inport',[sys,'/','qdr2abc1/id'])
set_param([sys,'/','qdr2abc1/id'],...
		'Port','2',...
		'position',[60,165,80,185])

add_block('built-in/Inport',[sys,'/','qdr2abc1/iq'])
set_param([sys,'/','qdr2abc1/iq'],...
		'position',[60,125,80,145])

add_block('built-in/Inport',[sys,'/','qdr2abc1/sin(thetar)'])
set_param([sys,'/','qdr2abc1/sin(thetar)'],...
		'Port','4',...
		'position',[60,85,80,105])

add_block('built-in/Inport',[sys,'/','qdr2abc1/cos(thetar)'])
set_param([sys,'/','qdr2abc1/cos(thetar)'],...
		'Port','3',...
		'position',[60,45,80,65])

add_block('built-in/Fcn',[sys,'/','qdr2abc1/qdr2qs'])
set_param([sys,'/','qdr2abc1/qdr2qs'],...
		'Expr','u[1]*u[3] + u[2]*u[4]',...
		'position',[190,64,310,86])

add_block('built-in/Fcn',[sys,'/','qdr2abc1/qdr2ds'])
set_param([sys,'/','qdr2abc1/qdr2ds'],...
		'Expr','u[1]*u[4] - u[2]*u[3]',...
		'position',[190,140,310,160])

add_block('built-in/Note',[sys,'/','qdr2abc1/qds2abc'])
set_param([sys,'/','qdr2abc1/qds2abc'],...
		'position',[530,20,535,25])

add_block('built-in/Mux',[sys,'/','qdr2abc1/Mux1'])
set_param([sys,'/','qdr2abc1/Mux1'],...
		'inputs','2',...
		'position',[350,38,380,187])

add_block('built-in/Fcn',[sys,'/','qdr2abc1/qds2a'])
set_param([sys,'/','qdr2abc1/qds2a'],...
		'Expr','u[1] ',...
		'position',[440,49,610,71])

add_block('built-in/Outport',[sys,'/','qdr2abc1/ia'])
set_param([sys,'/','qdr2abc1/ia'],...
		'position',[640,49,665,71])

add_block('built-in/Outport',[sys,'/','qdr2abc1/ib'])
set_param([sys,'/','qdr2abc1/ib'],...
		'Port','2',...
		'position',[645,104,670,126])

add_block('built-in/Fcn',[sys,'/','qdr2abc1/qds2b'])
set_param([sys,'/','qdr2abc1/qds2b'],...
		'Expr','-u[1]/2 -sqrt(3)*u[2]/2',...
		'position',[435,104,600,126])

add_block('built-in/Outport',[sys,'/','qdr2abc1/ic'])
set_param([sys,'/','qdr2abc1/ic'],...
		'Port','3',...
		'position',[645,158,670,182])

add_block('built-in/Fcn',[sys,'/','qdr2abc1/qds2c'])
set_param([sys,'/','qdr2abc1/qds2c'],...
		'Expr','-u[1]/2 +sqrt(3)*u[2]/2 ',...
		'position',[435,159,605,181])

add_block('built-in/Note',[sys,'/','qdr2abc1/qdr2qds'])
set_param([sys,'/','qdr2abc1/qdr2qds'],...
		'position',[250,20,255,25])
add_line([sys,'/','qdr2abc1'],[85,55;120,55])
add_line([sys,'/','qdr2abc1'],[85,95;120,95])
add_line([sys,'/','qdr2abc1'],[85,135;120,135])
add_line([sys,'/','qdr2abc1'],[85,175;120,175])
add_line([sys,'/','qdr2abc1'],[160,115;165,115;165,75;185,75])
add_line([sys,'/','qdr2abc1'],[160,115;165,115;165,150;185,150])
add_line([sys,'/','qdr2abc1'],[315,75;345,75])
add_line([sys,'/','qdr2abc1'],[315,150;345,150])
add_line([sys,'/','qdr2abc1'],[385,115;430,115])
add_line([sys,'/','qdr2abc1'],[385,115;400,115;400,60;435,60])
add_line([sys,'/','qdr2abc1'],[615,60;635,60])
add_line([sys,'/','qdr2abc1'],[605,115;640,115])
add_line([sys,'/','qdr2abc1'],[385,115;400,115;400,170;430,170])
add_line([sys,'/','qdr2abc1'],[610,170;640,170])


%     Finished composite block 'qdr2abc1'.

set_param([sys,'/','qdr2abc1'],...
		'Font Number',3,...
		'position',[390,167,425,238])

add_block('built-in/Gain',[sys,'/','vag'])
set_param([sys,'/','vag'],...
		'Gain','400*Zb',...
		'position',[515,155,535,175])

add_block('built-in/Sum',[sys,'/','Sa'])
set_param([sys,'/','Sa'],...
		'inputs','-+',...
		'position',[475,155,495,175])

add_block('built-in/Sum',[sys,'/','Sa2'])
set_param([sys,'/','Sa2'],...
		'inputs','-+',...
		'position',[470,235,490,255])

add_block('built-in/Gain',[sys,'/','vcg'])
set_param([sys,'/','vcg'],...
		'Gain','400*Zb',...
		'position',[510,235,530,255])

add_block('built-in/Sum',[sys,'/','Sa1'])
set_param([sys,'/','Sa1'],...
		'inputs','-+',...
		'position',[470,190,490,210])

add_block('built-in/Note',[sys,'/','vq'])
set_param([sys,'/','vq'],...
		'position',[618,159,623,164])

add_block('built-in/Scope',[sys,'/','Scope2'])
set_param([sys,'/','Scope2'],...
		'Vgain','2.000000',...
		'Hgain','2.000000',...
		'Vmax','2.000000',...
		'Hmax','4.000000',...
		'Window',[677,690,1140,844],...
		'position',[815,27,835,53])


%     Subsystem  'Feedback'.

new_system([sys,'/','Feedback'])
set_param([sys,'/','Feedback'],'Location',[97,258,961,527])

add_block('built-in/Outport',[sys,'/','Feedback/out_id'])
set_param([sys,'/','Feedback/out_id'],...
		'Port','2',...
		'position',[705,70,725,90])

add_block('built-in/Outport',[sys,'/','Feedback/out_iq'])
set_param([sys,'/','Feedback/out_iq'],...
		'position',[705,35,725,55])

add_block('built-in/Fcn',[sys,'/','Feedback/psiqgap'])
set_param([sys,'/','Feedback/psiqgap'],...
		'Expr','u[1]*xq',...
		'position',[305,94,375,116])

add_block('built-in/Inport',[sys,'/','Feedback/cos_thetar'])
set_param([sys,'/','Feedback/cos_thetar'],...
		'position',[75,75,95,95])

add_block('built-in/Inport',[sys,'/','Feedback/sin_thetar'])
set_param([sys,'/','Feedback/sin_thetar'],...
		'Port','2',...
		'position',[75,115,95,135])

add_block('built-in/Note',[sys,'/','Feedback/iq'])
set_param([sys,'/','Feedback/iq'],...
		'position',[215,95,220,100])

add_block('built-in/Inport',[sys,'/','Feedback/ic'])
set_param([sys,'/','Feedback/ic'],...
		'Port','5',...
		'position',[75,225,95,245])

add_block('built-in/Inport',[sys,'/','Feedback/ia'])
set_param([sys,'/','Feedback/ia'],...
		'Port','3',...
		'position',[75,155,95,175])

add_block('built-in/Inport',[sys,'/','Feedback/ib'])
set_param([sys,'/','Feedback/ib'],...
		'Port','4',...
		'position',[75,190,95,210])


%     Subsystem  'Feedback/abc2qd'.

new_system([sys,'/','Feedback/abc2qd'])
set_param([sys,'/','Feedback/abc2qd'],'Location',[50,271,596,583])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/abc2qd0'])
set_param([sys,'/','Feedback/abc2qd/abc2qd0'],...
		'position',[150,265,155,270])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/qds2qdr'])
set_param([sys,'/','Feedback/abc2qd/qds2qdr'],...
		'position',[370,240,375,245])

add_block('built-in/Mux',[sys,'/','Feedback/abc2qd/Mux1'])
set_param([sys,'/','Feedback/abc2qd/Mux1'],...
		'position',[250,66,280,239])

add_block('built-in/Mux',[sys,'/','Feedback/abc2qd/Mux'])
set_param([sys,'/','Feedback/abc2qd/Mux'],...
		'inputs','3',...
		'position',[50,148,75,252])

add_block('built-in/Fcn',[sys,'/','Feedback/abc2qd/abc2q'])
set_param([sys,'/','Feedback/abc2qd/abc2q'],...
		'Expr','(2*u[1]- u[2] - u[3])/3',...
		'position',[100,163,225,187])

add_block('built-in/Fcn',[sys,'/','Feedback/abc2qd/abc2d'])
set_param([sys,'/','Feedback/abc2qd/abc2d'],...
		'Expr','(u[3] -u[2])/sqrt(3)',...
		'position',[100,209,225,231])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/iqs'])
set_param([sys,'/','Feedback/abc2qd/iqs'],...
		'position',[235,153,240,158])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/ids'])
set_param([sys,'/','Feedback/abc2qd/ids'],...
		'position',[235,190,240,195])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/id'])
set_param([sys,'/','Feedback/abc2qd/id'],...
		'position',[455,160,460,165])

add_block('built-in/Note',[sys,'/','Feedback/abc2qd/iq'])
set_param([sys,'/','Feedback/abc2qd/iq'],...
		'position',[458,111,463,116])

add_block('built-in/Fcn',[sys,'/','Feedback/abc2qd/qds2qr'])
set_param([sys,'/','Feedback/abc2qd/qds2qr'],...
		'Expr','u[1]*u[3] - u[2]*u[4]',...
		'position',[310,118,445,142])

add_block('built-in/Fcn',[sys,'/','Feedback/abc2qd/qds2dr'])
set_param([sys,'/','Feedback/abc2qd/qds2dr'],...
		'Expr','u[2]*u[3] + u[1]*u[4] ',...
		'position',[310,168,445,192])

add_block('built-in/Inport',[sys,'/','Feedback/abc2qd/in_1'])
set_param([sys,'/','Feedback/abc2qd/in_1'],...
		'position',[15,75,35,95])

add_block('built-in/Inport',[sys,'/','Feedback/abc2qd/in_2'])
set_param([sys,'/','Feedback/abc2qd/in_2'],...
		'Port','2',...
		'position',[15,120,35,140])

add_block('built-in/Inport',[sys,'/','Feedback/abc2qd/in_3'])
set_param([sys,'/','Feedback/abc2qd/in_3'],...
		'Port','3',...
		'position',[15,155,35,175])

add_block('built-in/Inport',[sys,'/','Feedback/abc2qd/in_4'])
set_param([sys,'/','Feedback/abc2qd/in_4'],...
		'Port','4',...
		'position',[15,190,35,210])

add_block('built-in/Inport',[sys,'/','Feedback/abc2qd/in_5'])
set_param([sys,'/','Feedback/abc2qd/in_5'],...
		'Port','5',...
		'position',[15,225,35,245])

add_block('built-in/Outport',[sys,'/','Feedback/abc2qd/out_iq'])
set_param([sys,'/','Feedback/abc2qd/out_iq'],...
		'position',[500,120,520,140])

add_block('built-in/Outport',[sys,'/','Feedback/abc2qd/out_id'])
set_param([sys,'/','Feedback/abc2qd/out_id'],...
		'Port','2',...
		'position',[500,170,520,190])
add_line([sys,'/','Feedback/abc2qd'],[230,220;245,220])
add_line([sys,'/','Feedback/abc2qd'],[230,175;245,175])
add_line([sys,'/','Feedback/abc2qd'],[285,155;290,155;290,180;305,180])
add_line([sys,'/','Feedback/abc2qd'],[285,155;290,155;290,130;305,130])
add_line([sys,'/','Feedback/abc2qd'],[80,200;85,200;95,220])
add_line([sys,'/','Feedback/abc2qd'],[80,200;85,200;95,175])
add_line([sys,'/','Feedback/abc2qd'],[40,85;245,85])
add_line([sys,'/','Feedback/abc2qd'],[450,130;495,130])
add_line([sys,'/','Feedback/abc2qd'],[40,130;245,130])
add_line([sys,'/','Feedback/abc2qd'],[40,165;45,165])
add_line([sys,'/','Feedback/abc2qd'],[450,180;495,180])
add_line([sys,'/','Feedback/abc2qd'],[40,200;45,200])
add_line([sys,'/','Feedback/abc2qd'],[40,235;45,235])


%     Finished composite block 'Feedback/abc2qd'.

set_param([sys,'/','Feedback/abc2qd'],...
		'position',[155,77,210,253])

add_block('built-in/Note',[sys,'/','Feedback/id'])
set_param([sys,'/','Feedback/id'],...
		'position',[215,185,220,190])

add_block('built-in/Mux',[sys,'/','Feedback/Mux3'])
set_param([sys,'/','Feedback/Mux3'],...
		'position',[445,83,470,232])

add_block('built-in/Fcn',[sys,'/','Feedback/psidgap'])
set_param([sys,'/','Feedback/psidgap'],...
		'Expr','Ipm*xmd + u[1]*xd',...
		'position',[300,138,415,162])

add_block('built-in/Fcn',[sys,'/','Feedback/psigap'])
set_param([sys,'/','Feedback/psigap'],...
		'Expr','sqrt(u[1]*u[1] + u[2]*u[2])',...
		'position',[500,122,660,148])

add_block('built-in/Outport',[sys,'/','Feedback/out_psigap'])
set_param([sys,'/','Feedback/out_psigap'],...
		'Port','3',...
		'position',[705,125,725,145])

add_block('built-in/Fcn',[sys,'/','Feedback/Tem'])
set_param([sys,'/','Feedback/Tem'],...
		'Expr','u[2]*u[3] - u[1]*u[4]',...
		'position',[500,172,670,198])

add_block('built-in/Outport',[sys,'/','Feedback/out_Tem'])
set_param([sys,'/','Feedback/out_Tem'],...
		'Port','4',...
		'position',[705,175,725,195])
add_line([sys,'/','Feedback'],[100,165;150,165])
add_line([sys,'/','Feedback'],[100,200;150,200])
add_line([sys,'/','Feedback'],[100,235;150,235])
add_line([sys,'/','Feedback'],[100,85;135,85;135,95;150,95])
add_line([sys,'/','Feedback'],[100,125;120,125;120,130;150,130])
add_line([sys,'/','Feedback'],[380,105;440,105])
add_line([sys,'/','Feedback'],[420,150;425,150;425,140;440,140])
add_line([sys,'/','Feedback'],[475,160;475,185;495,185])
add_line([sys,'/','Feedback'],[475,160;475,135;495,135])
add_line([sys,'/','Feedback'],[215,120;235,120;235,175;440,175])
add_line([sys,'/','Feedback'],[215,210;440,210])
add_line([sys,'/','Feedback'],[675,185;700,185])
add_line([sys,'/','Feedback'],[665,135;700,135])
add_line([sys,'/','Feedback'],[215,120;235,120;235,45;700,45])
add_line([sys,'/','Feedback'],[215,210;265,210;265,80;700,80])
add_line([sys,'/','Feedback'],[215,120;235,120;235,105;300,105])
add_line([sys,'/','Feedback'],[215,210;265,210;265,150;295,150])


%     Finished composite block 'Feedback'.

set_param([sys,'/','Feedback'],...
		'orientation',2,...
		'Font Number',3,...
		'position',[400,376,460,444])

add_block('built-in/Transfer Fcn',[sys,'/',['Torque',13,'controller']])
set_param([sys,'/',['Torque',13,'controller']],...
		'Numerator','[7 50]',...
		'Denominator','[1 0]',...
		'position',[95,153,150,187])

add_block('built-in/Sum',[sys,'/','Sum2'])
set_param([sys,'/','Sum2'],...
		'inputs','+-',...
		'position',[195,163,210,192])

add_block('built-in/Fcn',[sys,'/','Id-Iq'])
set_param([sys,'/','Id-Iq'],...
		'Expr','IdeIqe(1)*u[1]*u[1]+ IdeIqe(2)',...
		'position',[175,229,205,251])

add_block('built-in/Transfer Fcn',[sys,'/',['Current',13,'Controller1']])
set_param([sys,'/',['Current',13,'Controller1']],...
		'Numerator','[5 1]',...
		'Denominator','[1 0]',...
		'position',[235,162,275,198])

add_block('built-in/Sum',[sys,'/','Sum3'])
set_param([sys,'/','Sum3'],...
		'inputs','++-',...
		'position',[225,247,240,283])

add_block('built-in/Transfer Fcn',[sys,'/',['Current',13,'Controller2']])
set_param([sys,'/',['Current',13,'Controller2']],...
		'Numerator','[5 1]',...
		'Denominator','[1 0]',...
		'position',[255,248,295,282])

add_block('built-in/Saturation',[sys,'/','Satq'])
set_param([sys,'/','Satq'],...
		'Lower Limit','-1.2',...
		'Upper Limit','1.2',...
		'position',[295,168,315,192])

add_block('built-in/Note',[sys,'/','iq*'])
set_param([sys,'/','iq*'],...
		'position',[330,160,335,165])

add_block('built-in/Saturation',[sys,'/','Satd'])
set_param([sys,'/','Satd'],...
		'Lower Limit','-1.2',...
		'Upper Limit','1.2',...
		'position',[315,254,335,276])

add_block('built-in/Note',[sys,'/','id*'])
set_param([sys,'/','id*'],...
		'position',[340,236,345,241])


%     Subsystem  ['Torque ',13,'Command'].

new_system([sys,'/',['Torque ',13,'Command']])
set_param([sys,'/',['Torque ',13,'Command']],'Location',[5,40,315,196])

add_block('built-in/Outport',[sys,'/',['Torque ',13,'Command/out_1']])
set_param([sys,'/',['Torque ',13,'Command/out_1']],...
		'position',[285,60,305,80])

add_block('built-in/Look Up Table',[sys,'/',['Torque ',13,'Command/Look-Up Table']])
set_param([sys,'/',['Torque ',13,'Command/Look-Up Table']],...
		'Input_Values','t',...
		'Output_Values','y',...
		'position',[210,58,250,82])

add_block('built-in/Fcn',[sys,'/',['Torque ',13,'Command/Fcn1']])
set_param([sys,'/',['Torque ',13,'Command/Fcn1']],...
		'Expr','rem(u[1],period)',...
		'position',[110,60,150,80])

add_block('built-in/Clock',[sys,'/',['Torque ',13,'Command/Clock']])
set_param([sys,'/',['Torque ',13,'Command/Clock']],...
		'position',[45,60,65,80])
add_line([sys,'/',['Torque ',13,'Command']],[255,70;280,70])
add_line([sys,'/',['Torque ',13,'Command']],[70,70;105,70])
add_line([sys,'/',['Torque ',13,'Command']],[155,70;205,70])
set_param([sys,'/',['Torque ',13,'Command']],...
		'Mask Display','plot([t,t+period,t+2*period],[y,y,y])',...
		'Mask Type','Repeating table')
set_param([sys,'/',['Torque ',13,'Command']],...
		'Mask Dialogue','Repeating table.\nEnter values of time and output for first cycle.|Time values:|Output values:',...
		'Mask Translate','period = max(@1); t = @1; y = @2;')
set_param([sys,'/',['Torque ',13,'Command']],...
		'Mask Help','Repeats cycle given in table. Time values should be monotonically increasing.',...
		'Mask Entries','tref_time\/tref_value\/')


%     Finished composite block ['Torque ',13,'Command'].

set_param([sys,'/',['Torque ',13,'Command']],...
		'orientation',2,...
		'position',[145,111,185,129])

add_block('built-in/Sum',[sys,'/','Sum1'])
set_param([sys,'/','Sum1'],...
		'inputs','+-',...
		'position',[60,153,75,182])

add_block('built-in/Note',[sys,'/','Tref'])
set_param([sys,'/','Tref'],...
		'position',[45,100,50,105])

add_block('built-in/Rate Limiter',[sys,'/','Rate Limiter'])
set_param([sys,'/','Rate Limiter'],...
		'orientation',2,...
		'Rising Slew Limit','1000',...
		'Falling Slew Limit','-1000',...
		'position',[75,110,100,130])

add_block('built-in/Note',[sys,'/','Tem*'])
set_param([sys,'/','Tem*'],...
		'position',[165,150,170,155])

add_block('built-in/Note',[sys,'/','Vs*'])
set_param([sys,'/','Vs*'],...
		'position',[110,350,115,355])


%     Subsystem  'qdr2abc'.

new_system([sys,'/','qdr2abc'])
set_param([sys,'/','qdr2abc'],'Location',[56,346,800,637])

add_block('built-in/Mux',[sys,'/','qdr2abc/Mux'])
set_param([sys,'/','qdr2abc/Mux'],...
		'position',[125,34,155,196])

add_block('built-in/Inport',[sys,'/','qdr2abc/id'])
set_param([sys,'/','qdr2abc/id'],...
		'Port','2',...
		'position',[60,165,80,185])

add_block('built-in/Inport',[sys,'/','qdr2abc/iq'])
set_param([sys,'/','qdr2abc/iq'],...
		'position',[60,125,80,145])

add_block('built-in/Inport',[sys,'/','qdr2abc/sin_thetar'])
set_param([sys,'/','qdr2abc/sin_thetar'],...
		'Port','4',...
		'position',[60,85,80,105])

add_block('built-in/Inport',[sys,'/','qdr2abc/cos_thetar'])
set_param([sys,'/','qdr2abc/cos_thetar'],...
		'Port','3',...
		'position',[60,45,80,65])

add_block('built-in/Fcn',[sys,'/','qdr2abc/qdr2qs'])
set_param([sys,'/','qdr2abc/qdr2qs'],...
		'Expr','u[1]*u[3] + u[2]*u[4]',...
		'position',[190,64,310,86])

add_block('built-in/Fcn',[sys,'/','qdr2abc/qdr2ds'])
set_param([sys,'/','qdr2abc/qdr2ds'],...
		'Expr','u[1]*u[4] - u[2]*u[3]',...
		'position',[190,140,310,160])

add_block('built-in/Note',[sys,'/','qdr2abc/qdr2qds'])
set_param([sys,'/','qdr2abc/qdr2qds'],...
		'position',[255,15,260,20])

add_block('built-in/Note',[sys,'/','qdr2abc/qds2abc'])
set_param([sys,'/','qdr2abc/qds2abc'],...
		'position',[530,20,535,25])

add_block('built-in/Note',[sys,'/','qdr2abc/iqs'])
set_param([sys,'/','qdr2abc/iqs'],...
		'position',[330,55,335,60])

add_block('built-in/Note',[sys,'/','qdr2abc/ids'])
set_param([sys,'/','qdr2abc/ids'],...
		'position',[330,125,335,130])

add_block('built-in/Mux',[sys,'/','qdr2abc/Mux1'])
set_param([sys,'/','qdr2abc/Mux1'],...
		'inputs','2',...
		'position',[355,38,385,187])

add_block('built-in/Fcn',[sys,'/','qdr2abc/qds2a'])
set_param([sys,'/','qdr2abc/qds2a'],...
		'Expr','u[1] ',...
		'position',[435,44,605,66])

add_block('built-in/Outport',[sys,'/','qdr2abc/ia'])
set_param([sys,'/','qdr2abc/ia'],...
		'position',[645,44,670,66])

add_block('built-in/Fcn',[sys,'/','qdr2abc/qds2b'])
set_param([sys,'/','qdr2abc/qds2b'],...
		'Expr','-u[1]/2 -sqrt(3)*u[2]/2 ',...
		'position',[435,104,600,126])

add_block('built-in/Outport',[sys,'/','qdr2abc/ib'])
set_param([sys,'/','qdr2abc/ib'],...
		'Port','2',...
		'position',[645,104,670,126])

add_block('built-in/Fcn',[sys,'/','qdr2abc/qds2c'])
set_param([sys,'/','qdr2abc/qds2c'],...
		'Expr','-u[1]/2 +sqrt(3)*u[2]/2 ',...
		'position',[435,159,605,181])

add_block('built-in/Outport',[sys,'/','qdr2abc/ic'])
set_param([sys,'/','qdr2abc/ic'],...
		'Port','3',...
		'position',[650,158,675,182])
add_line([sys,'/','qdr2abc'],[85,55;120,55])
add_line([sys,'/','qdr2abc'],[85,95;120,95])
add_line([sys,'/','qdr2abc'],[85,135;120,135])
add_line([sys,'/','qdr2abc'],[85,175;120,175])
add_line([sys,'/','qdr2abc'],[160,115;165,115;165,75;185,75])
add_line([sys,'/','qdr2abc'],[160,115;165,115;165,150;185,150])
add_line([sys,'/','qdr2abc'],[315,75;350,75])
add_line([sys,'/','qdr2abc'],[315,150;350,150])
add_line([sys,'/','qdr2abc'],[390,115;430,115])
add_line([sys,'/','qdr2abc'],[390,115;420,115;430,55])
add_line([sys,'/','qdr2abc'],[610,55;640,55])
add_line([sys,'/','qdr2abc'],[605,115;640,115])
add_line([sys,'/','qdr2abc'],[390,115;420,115;430,170])
add_line([sys,'/','qdr2abc'],[610,170;645,170])


%     Finished composite block 'qdr2abc'.

set_param([sys,'/','qdr2abc'],...
		'Font Number',3,...
		'position',[875,165,915,245])

add_block('built-in/Note',[sys,'/','iq'])
set_param([sys,'/','iq'],...
		'position',[748,154,753,159])

add_block('built-in/Note',[sys,'/','id'])
set_param([sys,'/','id'],...
		'position',[748,184,753,189])

add_block('built-in/Note',[sys,'/','sin (wrt)'])
set_param([sys,'/','sin (wrt)'],...
		'position',[828,254,833,259])

add_block('built-in/Note',[sys,'/','cos (wrt)'])
set_param([sys,'/','cos (wrt)'],...
		'position',[828,234,833,239])

add_block('built-in/Note',[sys,'/','wr//wb'])
set_param([sys,'/','wr//wb'],...
		'position',[743,244,748,249])


%     Subsystem  'osc'.

new_system([sys,'/','osc'])
set_param([sys,'/','osc'],'Location',[280,55,870,299])

add_block('built-in/Gain',[sys,'/','osc/Gain'])
set_param([sys,'/','osc/Gain'],...
		'Gain','-wb',...
		'position',[135,63,180,97])

add_block('built-in/Product',[sys,'/','osc/Product'])
set_param([sys,'/','osc/Product'],...
		'position',[370,43,390,92])

add_block('built-in/Integrator',[sys,'/','osc/cos'])
set_param([sys,'/','osc/cos'],...
		'Initial','1',...
		'position',[215,63,245,97])

add_block('built-in/Inport',[sys,'/','osc/wr//wb'])
set_param([sys,'/','osc/wr//wb'],...
		'position',[30,45,50,65])

add_block('built-in/Integrator',[sys,'/','osc/sin'])
set_param([sys,'/','osc/sin'],...
		'orientation',2,...
		'position',[265,123,295,157])

add_block('built-in/Gain',[sys,'/','osc/Gain1'])
set_param([sys,'/','osc/Gain1'],...
		'orientation',2,...
		'Gain','wb',...
		'position',[340,120,385,160])

add_block('built-in/Product',[sys,'/','osc/Product1'])
set_param([sys,'/','osc/Product1'],...
		'orientation',2,...
		'position',[140,128,160,172])

add_block('built-in/Outport',[sys,'/','osc/cos_thetar'])
set_param([sys,'/','osc/cos_thetar'],...
		'position',[470,105,490,125])

add_block('built-in/Outport',[sys,'/','osc/sin_thetar'])
set_param([sys,'/','osc/sin_thetar'],...
		'Port','2',...
		'position',[470,160,490,180])
add_line([sys,'/','osc'],[260,140;165,140])
add_line([sys,'/','osc'],[250,80;270,80;270,115;465,115])
add_line([sys,'/','osc'],[395,70;415,70;415,140;390,140])
add_line([sys,'/','osc'],[55,55;365,55])
add_line([sys,'/','osc'],[250,80;365,80])
add_line([sys,'/','osc'],[185,80;210,80])
add_line([sys,'/','osc'],[135,150;115,150;115,80;130,80])
add_line([sys,'/','osc'],[335,140;300,140])
add_line([sys,'/','osc'],[55,55;90,55;90,190;200,190;200,160;165,160])
add_line([sys,'/','osc'],[260,140;230,140;230,170;465,170])


%     Finished composite block 'osc'.

set_param([sys,'/','osc'],...
		'position',[775,245,800,285])

add_block('built-in/Mux',[sys,'/','Mux'])
set_param([sys,'/','Mux'],...
		'orientation',3,...
		'inputs','9',...
		'position',[163,65,877,90])

add_block('built-in/Clock',[sys,'/','Clock'])
set_param([sys,'/','Clock'],...
		'orientation',3,...
		'position',[235,125,255,145])

add_block('built-in/Note',[sys,'/','Tem'])
set_param([sys,'/','Tem'],...
		'position',[743,219,748,224])


%     Subsystem  'm5'.

new_system([sys,'/','m5'])
set_param([sys,'/','m5'],'Location',[85,4128819,240,4128906])

add_block('built-in/Note',[sys,'/',['m5/Masked block m5.m to initialize',13,'s5.m in Chapter 10 and to plot results']])
set_param([sys,'/',['m5/Masked block m5.m to initialize',13,'s5.m in Chapter 10 and to plot results']],...
		'position',[120,50,125,55])
set_param([sys,'/','m5'],...
		'Mask Display','Initialize\nand plot',...
		'Mask Type','Masked block of m5.m',...
		'Mask Dialogue','eval(''m5'')',...
		'Mask Help','Uses m5.m to initialize and plot')


%     Finished composite block 'm5'.

set_param([sys,'/','m5'],...
		'Drop Shadow',4,...
		'position',[72,41,145,75])

add_block('built-in/Scope',[sys,'/','Scope'])
set_param([sys,'/','Scope'],...
		'Vgain','1.000000',...
		'Hgain','3.000000',...
		'Vmax','2.000000',...
		'Hmax','6.000000',...
		'Window',[20,497,832,625])
open_system([sys,'/','Scope'])
set_param([sys,'/','Scope'],...
		'position',[625,23,645,47])

add_block('built-in/To Workspace',[sys,'/','To Workspace'])
set_param([sys,'/','To Workspace'],...
		'orientation',2,...
		'mat-name','y',...
		'buffer','40000',...
		'position',[410,27,460,43])
add_line(sys,[245,120;245,115;200,115;200,95])
add_line(sys,[520,60;520,35;465,35])
add_line(sys,[430,180;435,180;435,170;470,170])
add_line(sys,[495,200;505,200])
add_line(sys,[500,165;510,165])
add_line(sys,[495,245;505,245])
add_line(sys,[140,120;125,120;125,105;280,95])
add_line(sys,[80,170;90,170])
add_line(sys,[615,205;665,205])
add_line(sys,[615,175;665,175])
add_line(sys,[715,175;870,175])
add_line(sys,[660,235;665,235])
add_line(sys,[655,270;665,265])
add_line(sys,[920,230;920,320;445,320;445,240;465,240])
add_line(sys,[920,205;945,205;945,325;450,325;450,195;465,195])
add_line(sys,[920,180;955,180;955,330;455,330;455,160;470,160])
add_line(sys,[430,205;465,205])
add_line(sys,[430,230;435,230;435,250;465,250])
add_line(sys,[805,275;805,340;555,340;555,245;570,245])
add_line(sys,[920,180;955,180;955,410;465,410])
add_line(sys,[920,205;945,205;945,425;465,425])
add_line(sys,[920,230;920,440;465,440])
add_line(sys,[245,265;250,265])
add_line(sys,[150,385;155,385])
add_line(sys,[105,375;125,375])
add_line(sys,[220,385;215,385;215,325;160,325;160,265;220,265])
add_line(sys,[210,240;220,255])
add_line(sys,[805,275;805,395;465,395])
add_line(sys,[805,275;855,275;855,235;870,235])
add_line(sys,[805,255;845,255;845,215;870,215])
add_line(sys,[805,255;820,255;820,380;465,380])
add_line(sys,[805,275;805,340;375,340;385,225])
add_line(sys,[805,255;820,255;820,365;360,365;360,210;385,210])
add_line(sys,[805,255;820,255;820,365;550,365;550,225;570,225])
add_line(sys,[540,165;570,165])
add_line(sys,[535,200;550,200;550,185;570,185])
add_line(sys,[535,245;545,245;545,205;570,205])
add_line(sys,[395,420;105,420;105,390;125,390])
add_line(sys,[155,170;190,170])
add_line(sys,[215,180;230,180])
add_line(sys,[215,180;215,215;160,215;170,240])
add_line(sys,[395,435;45,435;55,175])
add_line(sys,[395,405;230,405;230,310;180,310;180,275;220,275])
add_line(sys,[395,390;280,390;280,350;155,350;155,185;190,185])
add_line(sys,[520,60;520,35;620,35])
add_line(sys,[920,180;940,180;940,130;840,130;840,95])
add_line(sys,[540,165;550,165;550,125;600,125;600,95])
add_line(sys,[395,420;365,420;365,135;520,135;520,95])
add_line(sys,[280,180;290,180])
add_line(sys,[320,180;385,180])
add_line(sys,[320,180;320,105;360,95])
add_line(sys,[300,265;310,265])
add_line(sys,[340,265;355,265;355,195;385,195])
add_line(sys,[340,265;355,265;355,120;440,120;440,95])
add_line(sys,[140,120;105,120])
add_line(sys,[70,120;35,120;35,375;55,375])
add_line(sys,[70,120;35,120;35,160;55,160])
add_line(sys,[715,205;785,205;785,195;870,195])
add_line(sys,[715,265;770,265])
add_line(sys,[715,235;730,235;730,130;680,130;680,95])
add_line(sys,[715,265;760,265;760,95])

drawnow

% Return any arguments.
if (nargin | nargout)
	% Must use feval here to access system in memory
	if (nargin > 3)
		if (flag == 0)
			eval(['[ret,x0,str,ts,xts]=',sys,'(t,x,u,flag);'])
		else
			eval(['ret =', sys,'(t,x,u,flag);'])
		end
	else
		[ret,x0,str,ts,xts] = feval(sys);
	end
else
	drawnow % Flash up the model and execute load callback
end

Contact us at files@mathworks.com