Initialize System object
setupImpl( implements one-time tasks.
setupImpl is called via the
setup method. Users never call the
setup method directly. But,
setup is called the first time a System
object is run and after a System
object has been released. For details, see Detailed Call Sequence
If your System object does not require any setup tasks, you can omit this method from your class definition file.
setupImpl to set private properties so they do not need to be calculated
stepImpl method is called.
To acquire resources for a System
object, you must use
setupImpl instead of a constructor.
You must set
Access = protected for this method.
Do not use
setupImpl to initialize or reset states. For states, use the
If the System object will be used in the Simulink® MATLAB
System block, you cannot modify any tunable properties in the
Do not use the
setupImpl method to set up input values.
obj— System object
System object handle used to access properties, states, and methods specific to the object. If
setupImpl method does not use the object, you can replace this
input1,input2,...— Inputs to the
List the inputs to the System
object. The order of inputs must match the order of inputs defined in the
stepImpl passes the inputs
setupImpl to use the specifications, such as size and data
types in the one-time calculations.
This example shows how to open a file for writing using the
setupImpl method in your class definition file.
methods (Access = protected) function setupImpl(obj) obj.pFileID = fopen(obj.Filename,'wb'); if obj.pFileID < 0 error('Opening the file failed'); end end end
This example shows how to use
setupImpl to specify that
running the object initializes the properties of an input. In this case, calls to run the object, which includes
u, initialize the object states in a matrix of size u.
methods (Access = protected) function setupImpl(obj, u) obj.State = zeros(size(u),'like', u); end end