diff --git a/src/classes/@Oper/Oper.m b/src/classes/@Oper/Oper.m index d3c04991866fa5679b1db0cef7b2c2a88cc77044..3c63d2173a339016a40434e2bb570a172716deae 100644 --- a/src/classes/@Oper/Oper.m +++ b/src/classes/@Oper/Oper.m @@ -54,11 +54,14 @@ classdef Oper < handle alt (1, 1) double {mustBeNonnegative} % Altitude, [m] speed (1, 1) double {mustBeNonnegative} % Axial speed, [m/s] rpm (:, 1) double {mustBeNonnegative} % Rotor rotation speed, [rpm] - rps (:, 1) double {mustBeNonnegative} % Rotor rotation speed, [rps] - omega (:, 1) double {mustBeNonnegative} % Rotor rotation speed, [rad/s] coll (:, 1) double {mustBeFinite} % Rotor collective pitch, [rad] Flow (1, 1) Flow % Flow object, describing the external flow properties end + + properties(Dependent) + rps (:, 1) double {mustBeNonnegative} % Rotor rotation speed, [rps] + omega (:, 1) double {mustBeNonnegative} % Rotor rotation speed, [rad/s] + end methods @@ -69,14 +72,22 @@ classdef Oper < handle if nargin > 0 self.alt = alt; self.rpm = rpm; - self.rps = rpm / 60; - self.omega = rpm / 60 * (2 * pi); self.speed = speed; self.coll = deg2rad(coll); self.Flow = Flow(fluidType, alt, speed, 0, 0); % TODO: Set angles properly end end + + % --------------------------------------------- + % Get methods for dependent properties + function ans = get.rps(self) + ans = self.rpm/60; + end + + function ans = get.omega(self) + ans = self.rpm/60*2*pi; + end % --------------------------------------------- % Other methods