У меня есть 2 графика на одном графике, и когда я пытаюсь сделать примерку, я могу сделать это только на одном из них, а не на обоих одновременно. Вот что я получаю:
Я добавляю подгонку не по коду, а с помощью инструментов. Как я могу сделать это с помощью кода? Это код, который я использую:
start=10;
ending=50;
b=10;
for ipart=1:nP
for jtime=start:ending-b
diff2_d(ipart,jtime)=(part2rms(ipart,jtime+b,1)-part2rms(ipart,jtime,1)).^2+... % line 794 for part2rms
(part2rms(ipart,jtime+b,2)-part2rms(ipart,jtime,2)).^2+...
(part2rms(ipart,jtime+b,3)-part2rms(ipart,jtime,3)).^2;
end
end
for jN=start:ending
nP_in=nnz(rmsd(:,jN));
fprintf('for timestep %d fraction of particles remaining in the box is %2.2f \n',jN,nP_in/nP);
rd1(jN)=sum(rmsd(:,jN))/nP_in;
end
for jN=start:ending-b
rd2_d2(jN)=sum(diff2_d(:,jN));
nP_in1=nnz(rmsd(:,jN));
rd1_d2(jN)=sum(diff2_d(:,jN))/nP_in1;
end
figure(3)
plot(log10(tM(start:ending-b)),log10(rd1_d2(start:ending-b)))
xlabel('log(time (s))')
ylabel('log(<(\Delta r)>^2)')
str = sprintf('DEFINITION 2\n Initial number of particles = %d Particles remaining = %d\nMonitors=%d tinitial=%.2f tfinal=%.2f', nP,nP_in1,ntM,start*tM(1,1),ending*tM(1,1));
title(str, 'FontSize', 7);
figure(4)
plot(log10(tM(start:ending)),log10(rd1(start:ending)),log10(tM(start:ending-b)),log10(rd1_d2(start:ending-b)));
xlabel('log(time (s))')
ylabel('log(<(\Delta r)>^2)')
legend('definition 1','definition 2');
str = sprintf('FOR TIME STEP=%d\n Initial number of particles = %d Monitors=%d tinitial=%.2f tfinal=%.2f\nParticles remaining = %d(definition 1)\n Particles remaining = %d(definition 2)', b, nP,ntM,start*tM(1,1),ending*tM(1,1),nP_in,nP_in1);
title(str, 'FontSize', 7);
Также, если бы я хотел, чтобы подгонка была на определенной части кривой, как я мог это сделать?
Я пробовал это, но это не сработало:
e = excludedata(log10(tM(start:ending))',log10(rd1(start:ending))', 'range', [17.5,18.7]);
f=fit(log10(tM(start:ending))',log10(rd1(start:ending))','poly1','Exclude',e);
figure(4)
hold on
plot(f,log10(tM(start:ending)),log10(rd1(start:ending)),log10(tM(start:ending-b)),log10(rd1_d2(start:ending-b)));