added logging to matfile
This commit is contained in:
@@ -11,6 +11,25 @@ function obj = teardown(obj)
|
||||
close(obj.fPerf);
|
||||
close(obj.f);
|
||||
|
||||
% Log results into matfile
|
||||
histPath = fullfile(matlab.project.rootProject().RootFolder, "sandbox", strcat(obj.artifactName, "_miSimHist.mat"));
|
||||
out = struct("agent", repmat(struct("pos", [], "perf", [], "sensor", struct("alphaDist", [], "betaDist", [], "alphaTilt", [], "betaTilt", []), "collisionRadius", [], "commsRadius", []), size(obj.agents)), "perf", [], "barriers", []);
|
||||
|
||||
out.perf = obj.performance(1:(end - 1));
|
||||
out.barriers = [zeros(size(obj.barriers(1:end, 1), 1), 1), obj.barriers(1:end, 1:(end - 1))];
|
||||
for ii = 1:size(obj.agents, 1)
|
||||
out.agent(ii).pos = squeeze(obj.posHist(ii, 1:(end - 1), 1:3));
|
||||
out.agent(ii).perf = obj.agents{ii}.performance(1:(end - 2));
|
||||
out.agent(ii).sensor.alphaDist = obj.agents{ii}.sensorModel.alphaDist;
|
||||
out.agent(ii).sensor.betaDist = obj.agents{ii}.sensorModel.betaDist;
|
||||
out.agent(ii).sensor.alphaTilt = obj.agents{ii}.sensorModel.alphaTilt;
|
||||
out.agent(ii).sensor.betaTilt = obj.agents{ii}.sensorModel.betaTilt;
|
||||
out.agent(ii).collisionRadius = obj.agents{ii}.collisionGeometry.radius;
|
||||
out.agent(ii).commsRadius = obj.agents{ii}.commsGeometry.radius;
|
||||
end
|
||||
|
||||
save(histPath, "out");
|
||||
|
||||
% reset parameters
|
||||
obj.timestep = NaN;
|
||||
obj.timestepIndex = NaN;
|
||||
|
||||
Reference in New Issue
Block a user