/// <summary>
        /// Transforms the specified vector.
        /// </summary>
        /// <param name="vector">The vector.</param>
        /// <returns>IStateVector.</returns>
        public IStateVector Transform(IStateVector vector)
        {
            IWritableVector result = new StateVector(Rows);

            Transform(vector, ref result);
            return((IStateVector)result);
        }
        /// <summary>
        /// Adds another control vector
        /// </summary>
        /// <param name="other">The other vector</param>
        /// <returns>IStateVector.</returns>
        public IStateVector Add(IStateVector other)
        {
            IWritableVector result = new StateVector(Length);

            Add(other, ref result);
            return((IStateVector)result);
        }
Beispiel #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Simulation" /> class.
 /// </summary>
 /// <param name="stateMatrix">The state matrix.</param>
 /// <param name="inputMatrix">The input matrix.</param>
 /// <param name="outputMatrix">The output matrix.</param>
 /// <param name="feedthroughMatrix">The feedthrough matrix.</param>
 /// <param name="initialStateVector">The initial state vector.</param>
 /// <param name="controlVector">The control vector.</param>
 public Simulation(IStateMatrix stateMatrix, IInputMatrix inputMatrix, IOutputMatrix outputMatrix, IFeedthroughMatrix feedthroughMatrix, IStateVector initialStateVector, IControlVector controlVector)
 {
     StateMatrix       = stateMatrix;
     InputMatrix       = inputMatrix;
     OutputMatrix      = outputMatrix;
     FeedthroughMatrix = feedthroughMatrix;
     StateVector       = initialStateVector;
     ControlVector     = controlVector;
     _simulationTime   = new SimulationTime();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="Simulation" /> class.
 /// </summary>
 /// <param name="stateMatrix">The state matrix.</param>
 /// <param name="inputMatrix">The input matrix.</param>
 /// <param name="outputMatrix">The output matrix.</param>
 /// <param name="feedthroughMatrix">The feedthrough matrix.</param>
 /// <param name="initialStateVector">The initial state vector.</param>
 /// <param name="controlVector">The control vector.</param>
 public Simulation(IStateMatrix stateMatrix, IInputMatrix inputMatrix, IOutputMatrix outputMatrix, IFeedthroughMatrix feedthroughMatrix, IStateVector initialStateVector, IControlVector controlVector)
 {
     StateMatrix = stateMatrix;
     InputMatrix = inputMatrix;
     OutputMatrix = outputMatrix;
     FeedthroughMatrix = feedthroughMatrix;
     StateVector = initialStateVector;
     ControlVector = controlVector;
     _simulationTime = new SimulationTime();
 }
 /// <summary>
 /// Transforms the specified vector.
 /// </summary>
 /// <param name="vector">The vector.</param>
 /// <param name="output">The output.</param>
 public void Transform(IControlVector vector, ref IStateVector output)
 {
     IWritableVector result = output;
     Transform(vector, ref result);
 }
        /// <summary>
        /// Transforms the specified vector.
        /// </summary>
        /// <param name="vector">The vector.</param>
        /// <param name="output">The output.</param>
        public void Transform(IControlVector vector, ref IStateVector output)
        {
            IWritableVector result = output;

            Transform(vector, ref result);
        }
        /// <summary>
        /// Adds a state vector to this instance and returns the summed vector
        /// </summary>
        /// <param name="other">The vector to add</param>
        /// <param name="output">The output.</param>
        public void Add(IStateVector other, ref IStateVector output)
        {
            IWritableVector result = output;

            Add(other, ref result);
        }
 /// <summary>
 /// Adds a state vector to this instance and returns the summed vector
 /// </summary>
 /// <param name="other">The vector to add</param>
 public void AddInPlace(IStateVector other)
 {
     base.AddInPlace(other);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SimulationEventArgs" /> class.
 /// </summary>
 /// <param name="time">The time.</param>
 /// <param name="stateVector">The state vector.</param>
 public StateEventArgs(ISimulationTime time, IStateVector stateVector)
     : base(time)
 {
     StateVector = stateVector;
 }
 /// <summary>
 /// Transforms the specified vector.
 /// </summary>
 /// <param name="vector">The vector.</param>
 /// <returns>IStateVector.</returns>
 public IOutputVector Transform(IStateVector vector)
 {
     IWritableVector result = new OutputVector(Rows);
     Transform(vector, ref result);
     return (IOutputVector)result;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SimulationEventArgs" /> class.
 /// </summary>
 /// <param name="time">The time.</param>
 /// <param name="stateVector">The state vector.</param>
 public StateEventArgs(ISimulationTime time, IStateVector stateVector)
     : base(time)
 {
     StateVector = stateVector;
 }
 /// <summary>
 /// Adds a state vector to this instance and returns the summed vector
 /// </summary>
 /// <param name="other">The vector to add</param>
 public void AddInPlace(IStateVector other)
 {
     base.AddInPlace(other);
 }
 /// <summary>
 /// Adds a state vector to this instance and returns the summed vector
 /// </summary>
 /// <param name="other">The vector to add</param>
 /// <param name="output">The output.</param>
 public void Add(IStateVector other, ref IStateVector output)
 {
     IWritableVector result = output;
     Add(other, ref result);
 }
 /// <summary>
 /// Adds another control vector
 /// </summary>
 /// <param name="other">The other vector</param>
 /// <returns>IStateVector.</returns>
 public IStateVector Add(IStateVector other)
 {
     IWritableVector result = new StateVector(Length);
     Add(other, ref result);
     return (IStateVector)result;
 }