How do I generate the described pulse signal in Matlab (Simulink)?
I still don't understand what your period is, so I generated two ways to do this. The first method creates a mod vector of the time and generates a zero vector, the zero vector zeros out the data. As shown in the first figure.

t = 0 : 0.001 : 2;
T = 0.8;
Tz = 0.4; %this is T = Tz + Ts
yy = mod(t,T) %create mod vector to periodize time vector
yy(yy&gt;Tz) = 0; %zero out unwanted portion of vector
ut = 500.*((sin(pi*t/T)).^2);
utt = ut.*(yy&gt;0); %this is the zeroed out sine wave
figure,plot(t,ut),hold on,plot(t,(yy&gt;0)*500,'g');
plot(t,utt,'r+')
xlabel 'Time (s)', ylabel Waveform
legend('i(t)','Mod time vector','sin^2(t) zeroed out')




td = 0.001; %time vector resoult
T = 0.8;
Tgap = 0.34; %vector gap
Tend = 2;
t = 0:td:Tend;
ttt = [0:td:T-td zeros(1,round(Tgap/td))]; %create vector with zero gap
tt = repmat(ttt,1,1+round(length(t)/length(ttt))); % repeat the vector for as long as the time vector is +1
tt = tt(1:length(t)); %truncate it to be the same size as the time vector
ut = 500.*((sin(pi*tt/T)).^2);

figure;plot(t,ut),xlabel 'Time (s)', ylabel Waveform


This one creates a gap in between each \$ sin^2(t)\$ function, it does this by creating an time vector with zeros in it and then replicating the vector.
I didn't use the same time periods so you would have to go through the code and figure it out for yourself.