DynamicSystems
FrequencyResponseSystem
create a frequency-response system object
Calling Sequence
Parameters
Options
Description
Examples
Compatibility
FrequencyResponseSystem(sys,opts)
FrequencyResponseSystem(f,response,opts)
FrequencyResponseSystem(f,mag,phase,opts)
sys
-
System; DynamicSystems object
f
list or Vector; frequency data
response
Matrix, Vector, or list; complex response data
mag
Matrix, Vector, list; real magnitude data
phase
(optional) Matrix, Vector, or list; real phase data
opts
(optional) equation(s) of the form option = value; specify options for the FrequencyResponseSystem command
System Input Options
These options apply when creating a frequency response from a system; they are passed to FrequencyResponse.
adaptive = truefalse
Specifies whether the frequencies are determined adaptively. The adaptive algorithm takes the value of the linearfreq option into account when determining the frequency distribution. The default value is false.
linearfreq = truefalse
Specifies the frequency scale. If this value is set to true, the scale is linear; otherwise, by default, the scale is logarithmic.
method = function or matrix
Selects the method used to compute the frequency response. The function method generates the transfer functions of sys and evaluates them at the selected frequencies. The matrix method generates the state-space matrices of sys and evaluates the expression C·I⁢z−A−1·B+D at specific values of z. The default is to use the function method for frequency-domain systems (TF, Coeff, and ZPK), and to use the matrix method for time-domain systems (DE and SS).
numpoints = nonnegative integer
Specifies the number of points. The default is 100.
parameters = set(name = complexcons) or list(name = complexcons)
Specifies numeric values for parameters in sys. These values override those specified by the parameters field of the system object, which in turn override the settings in in SystemOptions(parameters). The numeric value on the right-hand side of each equation is substituted for the name on the left-hand side in the expressions that define the model. No checking is done during the substitution to determine whether the substituted value is valid. For example, a complex value can be substituted for the coefficient of a polynomial. If the complex value had been originally assigned to the model at creation, a warning would be generated.
range = range( realcons )
Specifies the frequency range to plot. The default setting is to compute an appropriate range based on the locations of the zeros and poles of the transfer functions of the selected subsystems. Similarly, if the right-hand side of range is infinity, a maximum is computed based on the zeros and poles. The units are specified by the hertz option.
Numerical Input Options
These options apply when creating a system from numerical data.
degrees = truefalse
True means the phase data is in degrees. False means it is in radians. The default is false.
discrete = truefalse
True means the created system is discrete. The default is false. See sampletime.
hertz = truefalse
True means that the frequency data, f, is in hertz. False means it is in radians per second. The default is false.
inputvariable = list of name or function(name)
The names of the inputs to the system. A name, say u, is converted to a function u(t), where t is the independent variable of the system, See DynamicSystems/SystemObject. The default value is assigned by DynamicSystems[SystemOptions].
outputvariable = list of name or function(name)
The names of the outputs of the system. A name, say y, is converted to a function y(t), where t is the independent variable of the system, see DynamicSystems[SystemObject]. The default value is assigned by DynamicSystems[SystemOptions].
sampletime = realcons
The sampling time of the system. The default is 1.
statevariable = list of name or function(name)
The names of the states of the system. A name, say x, is converted to a function x(t), where t is the independent variable of the system, see DynamicSystems[SystemObject]. The default value is assigned by DynamicSystems[SystemOptions].
systemname = string
The name of the system. The default is the empty string.
The FrequencyResponseSystem command creates a frequency-response DynamicSystems object that stores frequency response numerical data. This object can be passed to the DynamicSystem plot commands to plot the data.
A frequency-response object can be created either from numerical data or from a regular DynamicSystems object,
The sys parameter is a DynamicSystems object. Its frequency response is computed with the FrequencyResponse command and stored in the created object. Most of the options to FrequencyResponse can be passed to this command.
The f parameter is a list or vector of frequencies that is used with the response or mag and phase parameters to specify the frequency response. The frequency values must be nonnegative, distinct, and sorted from smallest to largest.
The response parameter specifies the complex response of the system at each frequency in f. It can be a list, a Vector, or a Matrix of lists or Vectors. If a list or Vector, then the system is a single-input single-output system. If a Matrix, then each row corresponds to an output and each column to an input. The elements of a Matrix are lists or Vectors of complex responses. The number of elements in a list or Vector must match the number of frequencies in the f parameter.
The mag and phase parameters specify the magnitude and phase of the system at each frequency in f. They can each be a list, a Vector, or a Matrix of lists or Vectors. If a list or Vector, then the system is a single-input single-output system. If a Matrix, then each row corresponds to an output and each column to an input. The elements of a Matrix are lists or Vectors of the magnitude and phase. The number of elements in a list or Vector must match the number of frequencies in the f parameter.
with⁡DynamicSystems:
Create a transfer-function system and convert it to a frequency-response system, then plot the magnitude response.
tf≔TransferFunction⁡ss2+s+1:
fr1≔FrequencyResponseSystem⁡tf
fr1≔Frequency Responsecontinuous1 output(s); 1 input(s)inputvariable=u1⁡soutputvariable=y1⁡s
MagnitudePlot⁡fr1
Create a unity-gain frequency-response system from numerical data and plot the response.
fr2≔FrequencyResponseSystem⁡0.1,0.2,0.5,1,2,5,10,1,1,1,1,1,1,1,0,0,0,0,0,0,0
fr2≔Frequency Responsecontinuous1 output(s); 1 input(s)inputvariable=outputvariable=
MagnitudePlot⁡fr2
The DynamicSystems[FrequencyResponseSystem] command was introduced in Maple 2016.
For more information on Maple 2016 changes, see Updates in Maple 2016.
See Also
DynamicSystems[FrequencyResponse]
Download Help Document