diff --git a/classes/@Rocket/Rocket.m b/classes/@Rocket/Rocket.m index 5d91e4b504e335ecff22dacd88b6b63d839e856c..a06283be4bc00d80338e94a9fc570771dfda416d 100644 --- a/classes/@Rocket/Rocket.m +++ b/classes/@Rocket/Rocket.m @@ -175,7 +175,7 @@ classdef Rocket < Config obj = update(obj); end - methods + methods % Getters function obj = set.parafoil(obj, value), obj = obj.updateBay('PARAFOIL', value); end function obj = set.recovery(obj, value), obj = obj.updateBay('RECOVERY', value); end function obj = set.electronics(obj, value), obj = obj.updateBay('ELECTRONICS', value); end @@ -186,8 +186,8 @@ classdef Rocket < Config end end function obj = set.motor(obj, value) - obj = obj.updateBay('MOTOR', value); obj.time = value.time; + obj = obj.updateBay('MOTOR', value); obj.cutoffTime = value.cutoffTime; if ~isempty(obj.airbrakes) obj.AIRBRAKES.minTime = obj.motor.cutoffTime; @@ -212,7 +212,7 @@ classdef Rocket < Config function obj = set.xcgNoMotor(obj, value), obj = obj.updateOverridable('XCG_NO_MOTOR', value); end end - methods + methods % Getters function value = get.parafoil(obj), value = obj.PARAFOIL; end function value = get.recovery(obj), value = obj.RECOVERY; end function value = get.electronics(obj), value = obj.ELECTRONICS; end diff --git a/classes/@Rocket/update.m b/classes/@Rocket/update.m index 2685b088cf65d6127205911558f02de37d819e7e..ab547d23b3200f924b28863ea9be7ed83ae74c73 100644 --- a/classes/@Rocket/update.m +++ b/classes/@Rocket/update.m @@ -31,17 +31,17 @@ if ~override('INERTIA') baysInertia = obj.inertiaNoMotor(2:3, :) + ... (obj.xcg - obj.xcgNoMotor).^2 .* obj.massNoMotor; - obj.inertia = [obj.motor.inertia(1, :) + obj.inertiaNoMotor(1, :); + obj.INERTIA = [obj.motor.inertia(1, :) + obj.inertiaNoMotor(1, :); motorInertia + baysInertia]; - obj.inertiaDot = diff(obj.inertia, 1, 2)./diff(obj.motor.time); + obj.inertiaDot = diff(obj.INERTIA, 1, 2)./diff(obj.motor.time); obj.inertiaDot(:, end + 1) = obj.inertiaDot(:, end); end %% Cutoff cutoffXcg = interp1(obj.time, obj.xcg, obj.cutoffTime, "linear", 'extrap'); obj.cutoffMass = interp1(obj.time, obj.mass, obj.cutoffTime, "linear", 'extrap'); -obj.cutoffInertia = interp1(obj.time, obj.inertia', obj.cutoffTime, "linear", 'extrap')'; +obj.cutoffInertia = interp1(obj.time, obj.INERTIA', obj.cutoffTime, "linear", 'extrap')'; %% Stages % TODO! generalize for n stages, variable input