Class ScaledConstantThrustPropulsionModel

    • Field Detail

      • THRUSTX_SCALE_FACTOR

        public static final String THRUSTX_SCALE_FACTOR
        Parameter name for the scale factor on the X component of the thrust in S/C frame.
        See Also:
        Constant Field Values
      • THRUSTY_SCALE_FACTOR

        public static final String THRUSTY_SCALE_FACTOR
        Parameter name for the scale factor on the Y component of the thrust in S/C frame.
        See Also:
        Constant Field Values
      • THRUSTZ_SCALE_FACTOR

        public static final String THRUSTZ_SCALE_FACTOR
        Parameter name for the scale factor on the Z component of the thrust in S/C frame.
        See Also:
        Constant Field Values
    • Constructor Detail

      • ScaledConstantThrustPropulsionModel

        public ScaledConstantThrustPropulsionModel​(double thrust,
                                                   double isp,
                                                   Vector3D direction,
                                                   String name)
        Constructor with min/max deviation for the scale factors. Typical usage is, for example, if you know that your propulsion system usually has an error of less than 10% then set the min/max to respectively 0.9 and 1.1.
        Parameters:
        thrust - the thrust (N)
        isp - the isp (s)
        direction - in spacecraft frame
        name - the name of the maneuver
    • Method Detail

      • getThrustVector

        public Vector3D getThrustVector()
        Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.
        Specified by:
        getThrustVector in class AbstractConstantThrustPropulsionModel
        Returns:
        thrust vector in spacecraft frame (N), will throw an exception if used on driver containing several value spans
      • getThrustVector

        public Vector3D getThrustVector​(AbsoluteDate date)
        Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.
        Specified by:
        getThrustVector in class AbstractConstantThrustPropulsionModel
        Parameters:
        date - date at which the thrust vector wants to be known, often the date parameter will not be important and can be whatever if the thrust parameter driver as only value estimated over the all orbit determination interval
        Returns:
        thrust vector in spacecraft frame (N)
      • getFlowRate

        public double getFlowRate()
        Get the flow rate (kg/s). Here it does not depend on current S/C.
        Specified by:
        getFlowRate in class AbstractConstantThrustPropulsionModel
        Returns:
        flow rate (kg/s) will throw an exception if used on driver containing several value spans
      • getFlowRate

        public double getFlowRate​(AbsoluteDate date)
        Get the flow rate (kg/s). Here it does not depend on current S/C.
        Specified by:
        getFlowRate in class AbstractConstantThrustPropulsionModel
        Parameters:
        date - date at which the thrust vector wants to be known, often the date parameter will not be important and can be whatever if the thrust parameter driver as only value estimated over the all orbit determination interval
        Returns:
        flow rate (kg/s)
      • getParametersDrivers

        public List<ParameterDriver> getParametersDrivers()
        Get the drivers for parameters.
        Returns:
        drivers for parameters
      • getThrustVector

        public Vector3D getThrustVector​(double[] parameters)
        Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.
        Specified by:
        getThrustVector in class AbstractConstantThrustPropulsionModel
        Parameters:
        parameters - propulsion model parameters
        Returns:
        thrust vector in spacecraft frame (N)
      • getFlowRate

        public double getFlowRate​(double[] parameters)
        Get the flow rate (kg/s). Here it does not depend on current S/C state.
        Specified by:
        getFlowRate in class AbstractConstantThrustPropulsionModel
        Parameters:
        parameters - propulsion model parameters
        Returns:
        flow rate (kg/s)
      • getThrustVector

        public <T extends CalculusFieldElement<T>> FieldVector3D<T> getThrustVector​(T[] parameters)
        Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.
        Specified by:
        getThrustVector in class AbstractConstantThrustPropulsionModel
        Type Parameters:
        T - extends CalculusFieldElement<T>
        Parameters:
        parameters - propulsion model parameters
        Returns:
        thrust vector in spacecraft frame (N)
      • getFlowRate

        public <T extends CalculusFieldElement<T>> T getFlowRate​(T[] parameters)
        Get the flow rate (kg/s). Here it does not depend on current S/C state.
        Specified by:
        getFlowRate in class AbstractConstantThrustPropulsionModel
        Type Parameters:
        T - extends CalculusFieldElement<T>
        Parameters:
        parameters - propulsion model parameters
        Returns:
        flow rate (kg/s)