diff --git a/sensitivityAnalysis/src/stochParameters/initParameter.m b/sensitivityAnalysis/src/stochParameters/initParameter.m index f00667535ec5a68b704a5e237a045ec0ce22df05..621446fb3e12731b73adb9389d498ff5e31e0441 100644 --- a/sensitivityAnalysis/src/stochParameters/initParameter.m +++ b/sensitivityAnalysis/src/stochParameters/initParameter.m @@ -55,28 +55,28 @@ for i = 1:length(parameters) parameters(i).value = rocket.inertia(3, :); parameters(i).udm = 'kg*m^4'; case 'drogueSurface' - parameters(i).value = rocket.parachutes(1, 1).surface; + parameters(i).value = rocket.parachutes{1, 1}.surface; parameters(i).udm = 'm2'; case 'drogueMass' - parameters(i).value = rocket.parachutes(1, 1).mass; + parameters(i).value = rocket.parachutes{1, 1}.mass; parameters(i).udm = 'kg'; case 'drogueCl' - parameters(i).value = rocket.parachutes(1, 1).cl; + parameters(i).value = rocket.parachutes{1, 1}.cl; parameters(i).udm = '-'; case 'drogueCd' - parameters(i).value = rocket.parachutes(1, 1).cd; + parameters(i).value = rocket.parachutes{1, 1}.cd; parameters(i).udm = '-'; case 'mainSurface' - parameters(i).value = rocket.parachutes(2, 1).surface; + parameters(i).value = rocket.parachutes{2, 1}.surface; parameters(i).udm = 'm2'; case 'mainMass' - parameters(i).value = rocket.parachutes(2, 1).mass; + parameters(i).value = rocket.parachutes{2, 1}.mass; parameters(i).udm = 'kg'; case 'mainCl' - parameters(i).value = rocket.parachutes(2, 1).cl; + parameters(i).value = rocket.parachutes{2, 1}.cl; parameters(i).udm = '-'; case 'mainCd' - parameters(i).value = rocket.parachutes(2, 1).cd; + parameters(i).value = rocket.parachutes{2, 1}.cd; parameters(i).udm = '-'; % rocket geometry --- available with the stability run only case 'rocketDiameter' diff --git a/sensitivityAnalysis/src/stochParameters/updateData.m b/sensitivityAnalysis/src/stochParameters/updateData.m index 363be07e438f4a9f39aa86af1bd13ff4fc203727..6c1c26c8f4bad79b6807f68ffb84fe9eea86abac 100644 --- a/sensitivityAnalysis/src/stochParameters/updateData.m +++ b/sensitivityAnalysis/src/stochParameters/updateData.m @@ -62,21 +62,21 @@ for i = 1:length(parameters) case 'Izz' rocket.inertia(3, :) = value; case 'drogueSurface' - rocket.parachutes(1, 1).surface = value; + rocket.parachutes{1, 1}.surface = value; case 'drogueMass' - rocket.parachutes(1, 1).mass = value; + rocket.parachutes{1, 1}.mass = value; case 'drogueCl' - rocket.parachutes(1, 1).cl = value; + rocket.parachutes{1, 1}.cl = value; case 'drogueCd' - rocket.parachutes(1, 1).cd = value; + rocket.parachutes{1, 1}.cd = value; case 'mainSurface' - rocket.parachutes(2, 1).surface = value; + rocket.parachutes{2, 1}.surface = value; case 'mainMass' - rocket.parachutes(2, 1).mass = value; + rocket.parachutes{2, 1}.mass = value; case 'mainCl' - rocket.parachutes(2, 1).cl = value; + rocket.parachutes{2, 1}.cl = value; case 'mainCd' - rocket.parachutes(2, 1).cd = value; + rocket.parachutes{2, 1}.cd = value; % rocket geometry --- available with the stability run only case 'rocketDiameter' rocket.diameter = value; diff --git a/simulator/mainSimulator.m b/simulator/mainSimulator.m index 5a14012e66984dad38c24bb25730d63e960fc6df..b9ec897857d6eae5de45f3019d59db52b87435f9 100644 --- a/simulator/mainSimulator.m +++ b/simulator/mainSimulator.m @@ -51,7 +51,7 @@ if isempty(settings), settings = Settings('ode', 'simulator'); end Settings.read(settings, options, 'simulator'); %% CHECKS -if settings.simulator.ballistic && rocket.parachutes(end, 1).finalAltitude ~= 0 +if settings.simulator.ballistic && rocket.parachutes{end, 1}.finalAltitude ~= 0 error('The landing will be not achived, check the final altitude of the last parachute in config.m') end if settings.simulator.ballistic && settings.simulator.parafoil diff --git a/simulator/src/stdPlots.m b/simulator/src/stdPlots.m index df42c8dea503f84f02c8f7adb85918f6a682b674..6ef6d6868cfa354bcec857b3c1d35345176a06b9 100644 --- a/simulator/src/stdPlots.m +++ b/simulator/src/stdPlots.m @@ -182,7 +182,7 @@ if ~settings.simulator.ballistic plots(iPlot) = plot3(xM, yM, zM, 'o',... 'MarkerSize', 10, 'MarkerFaceColor', colorMarker(:, iMarker) , 'MarkerEdgeColor', 'none'); - labels(iPlot) = strcat("Stage: ", num2str(j), " ", rocket.parachutes(i,j).name ," opening"); + labels(iPlot) = strcat("Stage: ", num2str(j), " ", rocket.parachutes{i,j}.name ," opening"); iPlot = iPlot + 1; iMarker = iMarker + 1; end @@ -301,7 +301,7 @@ if ~settings.simulator.ballistic subplot(3, 1, 3); plots(iPlot) = plot(tDescent, vzDescent); - legends(iPlot) = strcat( "Stage ", num2str(j), ": ", rocket.parachutes(i, j).name , " trajectory" ); + legends(iPlot) = strcat( "Stage ", num2str(j), ": ", rocket.parachutes{i, j}.name , " trajectory" ); iPlot = iPlot + 1; end end @@ -470,7 +470,7 @@ if ~settings.simulator.ballistic subplot(1, 3, 3); plots(iPlot) = plot(yDescent, zDescent); - legends(iPlot) = strcat( "Stage ", num2str(j), ": ", rocket.parachutes(i, j).name , " trajectory" ); + legends(iPlot) = strcat( "Stage ", num2str(j), ": ", rocket.parachutes{i, j}.name , " trajectory" ); iPlot = iPlot + 1; end end diff --git a/utils/rocketpyData/exportRocketpy.m b/utils/rocketpyData/exportRocketpy.m index c7dc066a46824cfa82b00d4a5839e7da505a24a9..9c56cb1517973a111ac02b336c9ce3b87078aaf6 100644 --- a/utils/rocketpyData/exportRocketpy.m +++ b/utils/rocketpyData/exportRocketpy.m @@ -146,16 +146,16 @@ fins_position = rocket.lengthCenter - rocket.rear.finsAxialDistance - root_chord boat_position = rocket.lengthCenter; %% parachutes -booster_drogue_cd_s = rocket.parachutes(1, 1).surface * rocket.parachutes(1, 1).cd; -booster_drogue_opening_delay = rocket.parachutes(1,1).openingTime; +booster_drogue_cd_s = rocket.parachutes{1, 1}.surface * rocket.parachutes{1, 1}.cd; +booster_drogue_opening_delay = rocket.parachutes{1,1}.openingTime; -booster_main_cd_s = rocket.parachutes(2, 1).surface * rocket.parachutes(2, 1).cd; -booster_main_opening_delay = rocket.parachutes(2,1).openingTime; -booster_main_opening_altitude = rocket.parachutes(1, 1).finalAltitude + environment.z0; +booster_main_cd_s = rocket.parachutes{2, 1}.surface * rocket.parachutes{2, 1}.cd; +booster_main_opening_delay = rocket.parachutes{2,1}.openingTime; +booster_main_opening_altitude = rocket.parachutes{1, 1}.finalAltitude + environment.z0; -payload_drogue_cd_s = rocket.parachutes(1, 2).surface * rocket.parachutes(1, 2).cd; -payload_drogue_opening_delay = rocket.parachutes(1, 2).openingTime; -parafoil_opening_altitude = rocket.parachutes(1, 2).finalAltitude + environment.z0; +payload_drogue_cd_s = rocket.parachutes{1, 2}.surface * rocket.parachutes{1, 2}.cd; +payload_drogue_opening_delay = rocket.parachutes{1, 2}.openingTime; +parafoil_opening_altitude = rocket.parachutes{1, 2}.finalAltitude + environment.z0; %% launchpad and environment details latitude = environment.lat0;