function obj = peOptions(varargin)
%PEOPTIONS  Creates option set for the PE command.
%
%   OPT = PEOPTIONS returns the default options for PE. 
%
%   OPT = PEOPTIONS('Option1',Value1,'Option2',Value2,...) uses name/value
%   pairs to override the default values for 'Option1','Option2',... 
%
%   The supported options are:
%   
%   InitialCondition    Handling of initial conditions for prediction.
%                 One of the following:
%                 'z': Zero initial conditions.
%                 'e': Estimate initial conditions such that the prediction
%                      error for the observed output is as small as
%                      possible. Default.
%                 'd': Same as 'e', but if delays in the model are nonzero,
%                      those delays are first absorbed into model's
%                      coefficients. For linear identified models only.
%                  X0: A column vector of length equal to the order of the
%                      model. For use with multiexperiment data, use a
%                      matrix with Ne columns, where Ne = number of
%                      experiments. For state-space models (idss, idgrey)
%                      and nonlinear models (idnlarx, idnlhw, idnlgrey).
%                  IO: A structure with fields 'Input' and 'Output', each
%                      containing a history of input and output variables
%                      before the start time of Data (time < Data.Tstart).
%                      In case of a time series model, 'Input' value is
%                      empty. You can specify a single value (row vector)
%                      to denote constant (equilibrium) signal value of
%                      input and/or output signals. The number of columns
%                      must always be equal to the number of input/output
%                      channels. For use with multiexperiment data, let IO
%                      be a struct array of Ne elements. For linear
%                      identified models only.
%            PASTData: Specified as a timetable object, an IDDATA object, or
%                      a pair of numeric matrices containing input and output
%                      signal values. For multiexperiment data, use a cell
%                      array of timetables, an IDDATA object, or a pair of
%                      cell arrays of numeric matrices containing input and
%                      output signal values.
%               X0Obj: A specification object created using the "IDPAR"
%                      command. For discrete-time state-space models (idss,
%                      idgrey) and nonlinear grey box (idnlgrey) only. Use
%                      X0Obj to impose constraints on the value of initial
%                      states X0, such as fixing certain entries or
%                      imposing min/max bounds.
%            ICObject: An initialCondition object representing a free
%                      response model. For use with multiexperiment data,
%                      use a [1 Ne] array of objects, where Ne = number of
%                      data experiments.
%
%   InputOffset   Input signal offset level. Specify as an Nu-element column
%                 vector, where Nu is the number of inputs. For calculation
%                 using multi-experiment data, specify as Nu-by-Ne matrix,
%                 where Ne is the number of experiments. The offset value
%                 InputOffset(i,j) is subtracted from the i:th input signal
%                 of the j:th experiment. Default is [] which implies no
%                 offsets. For prediction error calculation using time
%                 domain data only.
%
%   OutputOffset  Counterpart of InputOffset for output signals used for
%                 prediction.
%
%   OutputWeight  Weighting of output for initial condition estimation.
%                 Specify as:
%                      []: No weigthing is used (same as eye(Ny)). Default. 
%                 'noise': Inverse of the noise variance stored with the
%                          model is used as weighting. 
%                  Matrix: A positive semi-definite matrix of size
%                          equal to number of outputs.
%
%   InputInterSample  Intersample behavior of the input signals, which
%                     influences the estimation, simulation and prediction
%                     of continuous-time models. Specify as 'auto' (default),
%                     'zoh','foh','bl'.
%
% See also pe, DynamicSystem/absorbDelay, idpar, initialCondition.

%   Copyright 2011-2020 The MathWorks, Inc.

try
   obj = initOptions(idoptions.predict('pe'),varargin);
catch E
   throw(E);
end
