MATLAB RL Circuit with matlab

  • Thread starter gurhan
  • Start date
I have analysed a RL circuit with freewheelind diode, switch and additional source. I have used ode solver which is called ode45 in matlab. This expression is [t, i]=ode45('inducwithE', tspan, i0'). There is three stages in that circuit and every last 'i' (current-this is the state variable) value for the previous stage becomes initial value for the following stages. But when I am using if statement for three different conditions I am always referring the expression ([t, i]=ode45('inducwithE', tspan, i0')). In that point 'i' becomes always '0'. How can I assing those initial values for second and third stages? Could anyone help me about it???
Thanks

function dcrl = inducwithE(t,i)
% function for RL circuit calculations
Vs=50;
E=30;
L=0.1;
R=1;
Z=E/L;
X = (Vs/L)-Z;
Y = i*R/L;
if t<0.7;
dcrl = X - Y;VT=Vs;
else 0.7<t<0.75;
dcrl=-Z-Y;
end
if t>0.75;
dcrl=Z-Y;
end
if t>1.4
dcrl = X - Y;
end

tspan=[0 2];
i0=0;
[t, i]=ode45('inducwithE',tspan,i0')
 

Want to reply to this thread?

"RL Circuit with matlab" You must log in or register to reply here.

Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving
Top