25 lines
1.2 KiB
Matlab
25 lines
1.2 KiB
Matlab
function writeParams(obj)
|
|
arguments (Input)
|
|
obj (1, 1) {mustBeA(obj, 'miSim')};
|
|
end
|
|
arguments (Output)
|
|
end
|
|
|
|
% Collect agent parameters
|
|
collisionRadii = cellfun(@(x) x.collisionGeometry.radius, obj.agents);
|
|
alphaDist = cellfun(@(x) x.sensorModel.alphaDist, obj.agents);
|
|
betaDist = cellfun(@(x) x.sensorModel.betaDist, obj.agents);
|
|
alphaTilt = cellfun(@(x) x.sensorModel.alphaTilt, obj.agents);
|
|
betaTilt = cellfun(@(x) x.sensorModel.alphaDist, obj.agents);
|
|
comRange = cellfun(@(x) x.commsGeometry.radius, 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);
|
|
|
|
% Save all parameters to output file
|
|
paramsFile = strcat(obj.artifactName, "_miSimParams");
|
|
paramsFile = fullfile(matlab.project.rootProject().RootFolder, 'sandbox', paramsFile);
|
|
save(paramsFile, "-struct", "params");
|
|
end |