Code covered by the BSD License  

Highlights from
Bond graph add-on block library BG V.2.1

image thumbnail
from Bond graph add-on block library BG V.2.1 by Gert-Helge Geitner
Block library enables the graphical programming of Bond Graphs using standard Simulink and editor.

Chopper4_mRLC_P
function Chopper4_mRLC_P
%Parameter fr m-dimensionalen Tiefsetzsteller 2 nach Zanasi:

m=3;                           %number of Inductors [-]
assignin('base','m',m);        
assignin('base','Vg',100);     %source voltage [V]
assignin('base','C',0.0002);   %main capacitance [F]
R=20;                          %   due to MA
assignin('base','R',R);        %load resistance [Ohm]
R1m=0.01*ones(1,m);            %"m" inductors: resistance 
Rm=diag(R1m(1:m));             %   due to MA
assignin('base','Rm',Rm);      %Resistance Matrix [Ohm]
L1m=0.02*ones(1,m);            %"m" inductors: inductance
Lm=diag(L1m(1:m));             %Inductance Matrix [H]
MLc=0;                         %Mutual inductance coefficient: 
for ii=[1:m-1]                 %          MLji=MLc*sqrt(Li*Lj);
    for jj=[ii+1:m]
    Lm(ii,jj)=MLc*sqrt(L1m(ii)*L1m(jj));
    Lm(jj,ii)=Lm(ii,jj); end; end
assignin('base','Lm',Lm);        %Complete Inductance Matrix
assignin('base','Bg',ones(m,1)); %Input matrix
MA(1:m,1:m)=-Rm;
MA(m+1,m+1)=-1/R;
MA(1:m,m+1)=-ones(m,1);
MA(m+1,1:m)=ones(1,m);                
assignin('base','MA',MA);             %for computation of the
assignin('base','MB',[ones(m,1); 0]); %steady state values

assignin('base','Fs',100000);  %puls frequency [Hz]

assignin('base','Im_0',0*[1:m]'); %init. cond.: inductor current [A]
assignin('base','Vc_0',0);        %init. cond.: capacitor voltage [V]

txt='"M-dimensional Chopper - Zanasi 2"';
disp(['Parameter for Bond Graph example ' txt ' loaded!']);

Contact us at files@mathworks.com