Class PlantSimulatorHelper
Convenience functions for using PlantSimulator
Inherited Members
Namespace: TimeSeriesAnalysis.Dynamic
Assembly: TimeSeriesAnalysis.dll
Syntax
public class PlantSimulatorHelper
Methods
| Edit this page View SourceCreateFeedbackLoopNoDisturbance(UnitDataSet, PidModel, UnitModel, int)
Create a PlantSimulator and TimeSeriesDataSet from a UnitDataSet, PidModel and UnitModel to do closed-loop simulations
The feedback loop has NO disturbance signal added, but this can be added to the returned PlantSimulator as needed.
Declaration
public static (PlantSimulator, TimeSeriesDataSet) CreateFeedbackLoopNoDisturbance(UnitDataSet unitDataSet, PidModel pidModel, UnitModel unitModel, int pidInputIdx = 0)
Parameters
Type | Name | Description |
---|---|---|
UnitDataSet | unitDataSet | |
PidModel | pidModel | |
UnitModel | unitModel | |
int | pidInputIdx |
Returns
Type | Description |
---|---|
(PlantSimulator, TimeSeriesDataSet) | a simulator object and a dataset object that is ready to be simulated with Simulate() |
CreateFeedbackLoopWithEstimatedDisturbance(UnitDataSet, PidModel, UnitModel, int)
Create a feedback loop, where the process model has an additive disturbance that is to be estimated.
Declaration
public static (PlantSimulator, TimeSeriesDataSet) CreateFeedbackLoopWithEstimatedDisturbance(UnitDataSet unitDataSet, PidModel pidModel, UnitModel unitModel, int pidInputIdx = 0)
Parameters
Type | Name | Description |
---|---|---|
UnitDataSet | unitDataSet | |
PidModel | pidModel | |
UnitModel | unitModel | |
int | pidInputIdx |
Returns
Type | Description |
---|---|
(PlantSimulator, TimeSeriesDataSet) | a simulator object and a dataset object that is ready to be simulated with Simulate() |
GetUnitDataSetForLoop(TimeSeriesDataSet, PidModel, UnitModel)
Returns a unit data set for a given UnitModel.
Declaration
public static (bool, UnitDataSet) GetUnitDataSetForLoop(TimeSeriesDataSet inputData, PidModel pidModel, UnitModel unitModel)
Parameters
Type | Name | Description |
---|---|---|
TimeSeriesDataSet | inputData | |
PidModel | pidModel | |
UnitModel | unitModel |
Returns
Type | Description |
---|---|
(bool, UnitDataSet) | a tuple with a bool indicating if it was a success as item1, and the dataset as item2 |
SimulateSingle(UnitDataSet, ISimulatableModel)
Simulates a single model given a unit data set
Declaration
public static (bool, double[]) SimulateSingle(UnitDataSet unitData, ISimulatableModel model)
Parameters
Type | Name | Description |
---|---|---|
UnitDataSet | unitData | |
ISimulatableModel | model |
Returns
Type | Description |
---|---|
(bool, double[]) |
SimulateSingle(TimeSeriesDataSet, ISimulatableModel, out TimeSeriesDataSet)
Simulate a single model to get the output including any additive inputs.
Declaration
public static bool SimulateSingle(TimeSeriesDataSet inputData, ISimulatableModel model, out TimeSeriesDataSet simData)
Parameters
Type | Name | Description |
---|---|---|
TimeSeriesDataSet | inputData | |
ISimulatableModel | model | |
TimeSeriesDataSet | simData |
Returns
Type | Description |
---|---|
bool |
SimulateSingleToYmeas(UnitDataSet, ISimulatableModel, double, int)
Simulates a single model for a unit dataset and adds the output to unitData.Y_meas of the unitData, optionally with noise
Declaration
public static bool SimulateSingleToYmeas(UnitDataSet unitData, ISimulatableModel model, double noiseAmplitude = 0, int noiseSeed = 123)
Parameters
Type | Name | Description |
---|---|---|
UnitDataSet | unitData | the dataset to be simualted over, and where the Y_meas is updated with result |
ISimulatableModel | model | the model to be simulated |
double | noiseAmplitude | the amplitude of noise to be added to Y_meas |
int | noiseSeed | a seed value of the randm noise(specify so that tests are repeatable) |
Returns
Type | Description |
---|---|
bool |
SimulateSingleToYsim(UnitDataSet, ISimulatableModel)
Simulates a single model for a unit dataset and adds the output to unitData.Y_meas of the unitData, optionally with noise
Declaration
public static (bool, double[]) SimulateSingleToYsim(UnitDataSet unitData, ISimulatableModel model)
Parameters
Type | Name | Description |
---|---|---|
UnitDataSet | unitData | the dataset to be simualted over, and where the Y_meas is updated with result |
ISimulatableModel | model | the model to be simulated |
Returns
Type | Description |
---|---|
(bool, double[]) |