Re: 8.0 Control Systems ToDiscreteTimeModel[]
- To: mathgroup at smc.vnet.net
- Subject: [mg114585] Re: 8.0 Control Systems ToDiscreteTimeModel[]
- From: bakshee at wolfram.com
- Date: Thu, 9 Dec 2010 06:01:16 -0500 (EST)
- References: <idnqs7$q7d$1@smc.vnet.net>
On Dec 8, 5:40 am, roby <roby.no... at gmail.com> wrote:
> Dear all !
>
> ToDiscreteTimeModel[TransferFunctionModel[1/s, s], Ts, z] // InputForm
>
> behaves just like expected and returns:
>
> TransferFunctionModel[{{{Ts*(1 + z)}}, {{2*(-1 + z)}}}, z,
> SamplingPeriod -> Ts]
>
> But:
>
> ToDiscreteTimeModel[TransferFunctionModel[s, s], Ts, z] // InputForm
>
> With the default Option Method->"BilinearTransform" I would expect
> something like:
>
> TransferFunctionModel[{{{2*(-1 + z)}}, {{Ts*(1 + z)}}}, z,
> SamplingPeriod -> Ts]
>
> but what is returned actualy seems to be some bug/crash:
>
> TransferFunctionModel[{{{2*(-1 + z)}},
> {{Control`ConversionsDump`sdmult$927}}}, z,
> SamplingPeriod -> Ts]
>
> Any hints, am I missing something ?
>
> Regards Robert
It's a bug, which will be fixed shortly. In the meantime, you
can work it around by entering the denominator as a matrix:
In[2]:= ToDiscreteTimeModel[TransferFunctionModel[{{{s}}, {{1}}}, s],
Ts, z]//InputForm
Out[2]//InputForm=
TransferFunctionModel[{{{2*(-1 + z)}}, {{Ts*(1 + z)}}}, z,
SamplingPeriod -> Ts]
Igor Bakshee
Wolfram Research