My graph isn't picking up my time increments. How can I fix it? My loop generates my x values, but I'm trying to graph them over time.
    5 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    BAILEY MCMASTER
 am 25 Sep. 2023
  
    
    
    
    
    Kommentiert: BAILEY MCMASTER
 am 25 Sep. 2023
            % Ch=(Chd-Chs)e^(-t/ts)+Chs equation from C.3
clear
Ts=30; % ms
Td=60; % ms
Chs=.001; % L/mmhg
Chd=.015; % L/mmhg
N=800; % number of elements
t=0:1:800; % all time values together
for i=0:N
    if any(i==0:99)
        Ch(i+1)=Chd; % starts at .015 L/mmhg in chd phase
    elseif i>99 & i<350 
        Ch(i+1)=(Chd-Chs)*exp((-t(i))/Ts)+Chs; % switches to chs
    elseif i>349
        Ch(i+1)=(Chs-Chd)*exp((-t(i))/Ts)+Chd; % switches back to chd
    end
end
timebase=0:.01:8; % putting back in s
plot(timebase,Ch)
grid on
ylim([0 .02])
xlabel('time(s)')
ylabel('Ch (L/mmHg')
It's not picking up my y values, I'm trying to graph this over time and it's not working, it shouldn't be a straight line up and down, but its turning out that way.
4 Kommentare
Akzeptierte Antwort
  KSSV
      
      
 am 25 Sep. 2023
        clear
Ts=30; % ms
Td=60; % ms
Chs=.001; % L/mmhg
Chd=.015; % L/mmhg
N=800; % number of elements
t=0:1:N ; % all time values together
Ch = zeros(1,N) ; 
for i=1:length(Ch)+1
    if i<=99
        Ch(i)=Chd; % starts at .015 L/mmhg in chd phase
    elseif i>99 && i<350 
        Ch(i)=(Chd-Chs)*exp((-t(i))/Ts)+Chs; % switches to chs
    else
        Ch(i)=(Chs-Chd)*exp((-t(i))/Ts)+Chd; % switches back to chd
    end
end
timebase=0:.01:8; % putting back in s
plot(timebase,Ch)
grid on
ylim([0 .02])
xlabel('time(s)')
ylabel('Ch (L/mmHg')
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu Calculus finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




