CSV parametric testing

This commit is contained in:
2026-01-20 23:49:12 -08:00
parent 177c1f2ee4
commit 8b7a756485
5 changed files with 71 additions and 51 deletions

View File

@@ -67,8 +67,8 @@ classdef miSim
[obj] = plotTrails(obj);
[obj] = plotH(obj);
[obj] = updatePlots(obj);
[obj] = teardown(obj);
validate(obj);
teardown(obj);
end
methods (Access = private)
[v] = setupVideoWriter(obj);

View File

@@ -1,8 +1,9 @@
function teardown(obj)
function obj = teardown(obj)
arguments (Input)
obj (1, 1) {mustBeA(obj, 'miSim')};
end
arguments (Output)
obj (1, 1) {mustBeA(obj, 'miSim')};
end
% Close plots
@@ -10,4 +11,13 @@ function teardown(obj)
close(obj.fPerf);
close(obj.f);
% Reset accumulators
obj.performance = 0;
% Reset agents
for ii = 1:size(obj.agents, 1)
obj.agents{ii} = agent;
end
end

View File

@@ -12,11 +12,15 @@ function writeParams(obj)
alphaTilt = cellfun(@(x) x.sensorModel.alphaTilt, obj.agents);
betaTilt = cellfun(@(x) x.sensorModel.alphaDist, obj.agents);
comRange = cellfun(@(x) x.commsGeometry.radius, obj.agents);
initialStepSize = cellfun(@(x) x.initialStepSize, obj.agents);
% Combine with simulation parameters
params = struct('timestep', obj.timestep, 'maxIter', obj.maxIter, 'minAlt', obj.obstacles{end}.maxCorner(3), 'discretizationStep', obj.domain.objective.discretizationStep, ...
'collisionRadius', collisionRadii, 'alphaDist', alphaDist, 'betaDist', betaDist, ...
'alphaTilt', alphaTilt, 'betaTilt', betaTilt, 'comRange', comRange);
'sensorPerformanceMinimum', obj.domain.objective.sensorPerformanceMinimum, 'collisionRadius', collisionRadii, 'alphaDist', alphaDist, 'betaDist', betaDist, ...
'alphaTilt', alphaTilt, 'betaTilt', betaTilt, 'comRange', comRange, 'initialStepSize', initialStepSize, 'barrierGain', obj.barrierGain, 'barrierExponent', obj.barrierExponent ...
);
% TODO add sensorPerformanceMinimum
% Save all parameters to output file
paramsFile = strcat(obj.artifactName, "_miSimParams");