From: Ryan K. <kra...@gv...> - 2019-08-30 01:28:36
Attachments:
illegeal_dcoeff.ipynb
|
I am trying to do a super basic step response for a first order TF and am getting an error I have never seen before. The notebook is attached, but here is the code and the error message: %matplotlib inline import matplotlib.pyplot as plt import numpy as np import control from numpy import sin, cos, tan, pi from control import TransferFunction as TF p = 30 G = control.TransferFunction(p,[1,p]) G control.step_response(G) ---------------------------------------------------------------------------ValueError Traceback (most recent call last)<ipython-input-7-7235fbf92fdd> in <module>()----> 1 control.step_response(G) /usr/local/lib/python3.6/site-packages/control/timeresp.py in step_response(sys, T, X0, input, output, transpose, return_x) 450 >>> T, yout = step_response(sys, T, X0) 451 """--> 452 sys = _get_ss_simo(sys, input, output) 453 if T is None: 454 if isctime(sys): /usr/local/lib/python3.6/site-packages/control/timeresp.py in _get_ss_simo(sys, input, output) 378 If input is not specified, select first input and issue warning 379 """--> 380 sys_ss = _convertToStateSpace(sys) 381 if sys_ss.issiso(): 382 return sys_ss /usr/local/lib/python3.6/site-packages/control/statesp.py in _convertToStateSpace(sys, **kw) 895 # transfer function to state space conversion now should work! 896 ssout = td04ad('C', sys.inputs, sys.outputs,--> 897 denorder, den, num, tol=0) 898 899 states = ssout[0] /usr/local/lib/python3.6/site-packages/slycot/transform.py in td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) 446 e = ValueError(error_text) 447 e.info = out[-1]--> 448 raise e 449 if out[-1] > 0: 450 error_text = "The leading coefficient of a denominator polynomial is nearly zero; calculations would overflow; no state-space representation was calculated. ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too small." ValueError: The following argument had an illegal value: dcoeff -- Dr. Ryan Krauss Associate Professor Product Design and Manufacturing Engineering Grand Valley State University |
From: Murray, R. M. <mu...@cd...> - 2019-08-30 06:16:34
|
Which version of python-control and slycot? I just ran against the latest master and slycot 0.3.4 and it didn’t generate an error. -richard > On 29 Aug 2019, at 11:04 , Ryan Krauss <kra...@gv...> wrote: > > I am trying to do a super basic step response for a first order TF and am getting an error I have never seen before. The notebook is attached, but here is the code and the error message: > > %matplotlib inline > import matplotlib.pyplot as plt > import numpy as np > import control > from numpy import sin, cos, tan, pi > from control import TransferFunction as TF > > p = 30 > > G = control.TransferFunction(p,[1,p]) > G > > control.step_response(G) > > --------------------------------------------------------------------------- > ValueError > Traceback (most recent call last) > > <ipython-input-7-7235fbf92fdd> in <module>() > ----> 1 control.step_response(G) > > > > /usr/local/lib/python3.6/site-packages/control/timeresp.py in step_response(sys, T, X0, input, output, transpose, return_x) > 450 >>> T, yout = step_response(sys, T, X0) > 451 > """ > > --> 452 sys = _get_ss_simo(sys, input, output) > 453 if T is None: > 454 if isctime(sys): > > > > /usr/local/lib/python3.6/site-packages/control/timeresp.py in _get_ss_simo(sys, input, output) > 378 If input is not specified, select first input and > issue warning > > 379 > """ > > --> 380 sys_ss = _convertToStateSpace(sys) > 381 if sys_ss.issiso(): > 382 return > sys_ss > > > /usr/local/lib/python3.6/site-packages/control/statesp.py in _convertToStateSpace(sys, **kw) > 895 # transfer function to state space conversion now should work! > 896 > ssout = td04ad('C', sys.inputs, sys.outputs, > > --> 897 > denorder, den, num, tol=0) > > 898 > > > 899 states = ssout[0] > > > > /usr/local/lib/python3.6/site-packages/slycot/transform.py in td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) > 446 e = ValueError(error_text) > 447 e.info = out[-1] > --> 448 raise > e > > 449 if out[-1] > 0: > 450 error_text = "The leading coefficient of a denominator polynomial is nearly zero; calculations would overflow; no state-space representation was calculated. ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too small." > > > > ValueError: The following argument had an illegal value: dcoeff > > -- > Dr. Ryan Krauss > Associate Professor > Product Design and Manufacturing Engineering > Grand Valley State University > <illegeal_dcoeff.ipynb>_______________________________________________ > python-control-discuss mailing list > pyt...@li... > https://lists.sourceforge.net/lists/listinfo/python-control-discuss |
From: Ryan K. <kra...@gv...> - 2019-08-30 15:26:45
|
I just ran a pip upgrade for the control module. I am running 0.8.2. I just tried upgrading slycot via pip. pip says I am currently running 0.3.0. I tried to upgrade to 0.3.5 via pip, but I receive error messages about gfortran and xcode. I am kind of surprised that I don't have them both working. I will work on that. I am getting False for this variable: slycot.__SLYCOT_SETUP__ -- Dr. Ryan Krauss Associate Professor Product Design and Manufacturing Engineering Grand Valley State University On Fri, Aug 30, 2019 at 2:16 AM Murray, Richard M. <mu...@cd...> wrote: > Which version of python-control and slycot? I just ran against the latest > master and slycot 0.3.4 and it didn’t generate an error. > > -richard > > > On 29 Aug 2019, at 11:04 , Ryan Krauss <kra...@gv...> wrote: > > > > I am trying to do a super basic step response for a first order TF and > am getting an error I have never seen before. The notebook is attached, > but here is the code and the error message: > > > > %matplotlib inline > > import matplotlib.pyplot as plt > > import numpy as np > > import control > > from numpy import sin, cos, tan, pi > > from control import TransferFunction as TF > > > > p = 30 > > > > G = control.TransferFunction(p,[1,p]) > > G > > > > control.step_response(G) > > > > > --------------------------------------------------------------------------- > > ValueError > > Traceback (most recent call last) > > > > <ipython-input-7-7235fbf92fdd> in <module>() > > ----> 1 control.step_response(G) > > > > > > > > /usr/local/lib/python3.6/site-packages/control/timeresp.py in > step_response(sys, T, X0, input, output, transpose, return_x) > > 450 >>> T, yout = step_response(sys, T, X0) > > 451 > > """ > > > > --> 452 sys = _get_ss_simo(sys, input, output) > > 453 if T is None: > > 454 if isctime(sys): > > > > > > > > /usr/local/lib/python3.6/site-packages/control/timeresp.py in > _get_ss_simo(sys, input, output) > > 378 If input is not specified, select first input and > > issue warning > > > > 379 > > """ > > > > --> 380 sys_ss = _convertToStateSpace(sys) > > 381 if sys_ss.issiso(): > > 382 return > > sys_ss > > > > > > /usr/local/lib/python3.6/site-packages/control/statesp.py in > _convertToStateSpace(sys, **kw) > > 895 # transfer function to state space conversion now > should work! > > 896 > > ssout = td04ad('C', sys.inputs, sys.outputs, > > > > --> 897 > > denorder, den, num, tol=0) > > > > 898 > > > > > > 899 states = ssout[0] > > > > > > > > /usr/local/lib/python3.6/site-packages/slycot/transform.py in > td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) > > 446 e = ValueError(error_text) > > 447 e.info = out[-1] > > --> 448 raise > > e > > > > 449 if out[-1] > 0: > > 450 error_text = "The leading coefficient of a denominator > polynomial is nearly zero; calculations would overflow; no state-space > representation was calculated. > ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too > small." > > > > > > > > ValueError: The following argument had an illegal value: dcoeff > > > > -- > > Dr. Ryan Krauss > > Associate Professor > > Product Design and Manufacturing Engineering > > Grand Valley State University > > <illegeal_dcoeff.ipynb>_______________________________________________ > > python-control-discuss mailing list > > pyt...@li... > > https://lists.sourceforge.net/lists/listinfo/python-control-discuss > > > _______________________________________________ > python-control-discuss mailing list > pyt...@li... > https://lists.sourceforge.net/lists/listinfo/python-control-discuss > |
From: Ryan K. <kra...@gv...> - 2019-08-30 15:28:07
|
I guess I have to upgrade to OSX 10.14 to get xcode back...... This could take a minute..... -- Dr. Ryan Krauss Associate Professor Product Design and Manufacturing Engineering Grand Valley State University On Fri, Aug 30, 2019 at 11:26 AM Ryan Krauss <kra...@gv...> wrote: > I just ran a pip upgrade for the control module. I am running 0.8.2. > > I just tried upgrading slycot via pip. pip says I am currently running > 0.3.0. I tried to upgrade to 0.3.5 via pip, but I receive error messages > about gfortran and xcode. I am kind of surprised that I don't have them > both working. I will work on that. > > I am getting False for this variable: slycot.__SLYCOT_SETUP__ > > -- > Dr. Ryan Krauss > Associate Professor > Product Design and Manufacturing Engineering > Grand Valley State University > > > On Fri, Aug 30, 2019 at 2:16 AM Murray, Richard M. <mu...@cd...> > wrote: > >> Which version of python-control and slycot? I just ran against the >> latest master and slycot 0.3.4 and it didn’t generate an error. >> >> -richard >> >> > On 29 Aug 2019, at 11:04 , Ryan Krauss <kra...@gv...> wrote: >> > >> > I am trying to do a super basic step response for a first order TF and >> am getting an error I have never seen before. The notebook is attached, >> but here is the code and the error message: >> > >> > %matplotlib inline >> > import matplotlib.pyplot as plt >> > import numpy as np >> > import control >> > from numpy import sin, cos, tan, pi >> > from control import TransferFunction as TF >> > >> > p = 30 >> > >> > G = control.TransferFunction(p,[1,p]) >> > G >> > >> > control.step_response(G) >> > >> > >> --------------------------------------------------------------------------- >> > ValueError >> > Traceback (most recent call last) >> > >> > <ipython-input-7-7235fbf92fdd> in <module>() >> > ----> 1 control.step_response(G) >> > >> > >> > >> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >> step_response(sys, T, X0, input, output, transpose, return_x) >> > 450 >>> T, yout = step_response(sys, T, X0) >> > 451 >> > """ >> > >> > --> 452 sys = _get_ss_simo(sys, input, output) >> > 453 if T is None: >> > 454 if isctime(sys): >> > >> > >> > >> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >> _get_ss_simo(sys, input, output) >> > 378 If input is not specified, select first input and >> > issue warning >> > >> > 379 >> > """ >> > >> > --> 380 sys_ss = _convertToStateSpace(sys) >> > 381 if sys_ss.issiso(): >> > 382 return >> > sys_ss >> > >> > >> > /usr/local/lib/python3.6/site-packages/control/statesp.py in >> _convertToStateSpace(sys, **kw) >> > 895 # transfer function to state space conversion now >> should work! >> > 896 >> > ssout = td04ad('C', sys.inputs, sys.outputs, >> > >> > --> 897 >> > denorder, den, num, tol=0) >> > >> > 898 >> > >> > >> > 899 states = ssout[0] >> > >> > >> > >> > /usr/local/lib/python3.6/site-packages/slycot/transform.py in >> td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) >> > 446 e = ValueError(error_text) >> > 447 e.info = out[-1] >> > --> 448 raise >> > e >> > >> > 449 if out[-1] > 0: >> > 450 error_text = "The leading coefficient of a denominator >> polynomial is nearly zero; calculations would overflow; no state-space >> representation was calculated. >> ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too >> small." >> > >> > >> > >> > ValueError: The following argument had an illegal value: dcoeff >> > >> > -- >> > Dr. Ryan Krauss >> > Associate Professor >> > Product Design and Manufacturing Engineering >> > Grand Valley State University >> > <illegeal_dcoeff.ipynb>_______________________________________________ >> > python-control-discuss mailing list >> > pyt...@li... >> > https://lists.sourceforge.net/lists/listinfo/python-control-discuss >> >> >> _______________________________________________ >> python-control-discuss mailing list >> pyt...@li... >> https://lists.sourceforge.net/lists/listinfo/python-control-discuss >> > |
From: Ryan K. <kra...@gv...> - 2019-08-30 22:21:31
|
Good times. I have updated to 10.14.6. I have 39GB of free hard drive space. But apparently this isn't enough to install xcode.............. -- Dr. Ryan Krauss Associate Professor Product Design and Manufacturing Engineering Grand Valley State University On Fri, Aug 30, 2019 at 11:27 AM Ryan Krauss <kra...@gv...> wrote: > I guess I have to upgrade to OSX 10.14 to get xcode back...... > > This could take a minute..... > > -- > Dr. Ryan Krauss > Associate Professor > Product Design and Manufacturing Engineering > Grand Valley State University > > > On Fri, Aug 30, 2019 at 11:26 AM Ryan Krauss <kra...@gv...> wrote: > >> I just ran a pip upgrade for the control module. I am running 0.8.2. >> >> I just tried upgrading slycot via pip. pip says I am currently running >> 0.3.0. I tried to upgrade to 0.3.5 via pip, but I receive error messages >> about gfortran and xcode. I am kind of surprised that I don't have them >> both working. I will work on that. >> >> I am getting False for this variable: slycot.__SLYCOT_SETUP__ >> >> -- >> Dr. Ryan Krauss >> Associate Professor >> Product Design and Manufacturing Engineering >> Grand Valley State University >> >> >> On Fri, Aug 30, 2019 at 2:16 AM Murray, Richard M. < >> mu...@cd...> wrote: >> >>> Which version of python-control and slycot? I just ran against the >>> latest master and slycot 0.3.4 and it didn’t generate an error. >>> >>> -richard >>> >>> > On 29 Aug 2019, at 11:04 , Ryan Krauss <kra...@gv...> wrote: >>> > >>> > I am trying to do a super basic step response for a first order TF and >>> am getting an error I have never seen before. The notebook is attached, >>> but here is the code and the error message: >>> > >>> > %matplotlib inline >>> > import matplotlib.pyplot as plt >>> > import numpy as np >>> > import control >>> > from numpy import sin, cos, tan, pi >>> > from control import TransferFunction as TF >>> > >>> > p = 30 >>> > >>> > G = control.TransferFunction(p,[1,p]) >>> > G >>> > >>> > control.step_response(G) >>> > >>> > >>> --------------------------------------------------------------------------- >>> > ValueError >>> > Traceback (most recent call last) >>> > >>> > <ipython-input-7-7235fbf92fdd> in <module>() >>> > ----> 1 control.step_response(G) >>> > >>> > >>> > >>> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >>> step_response(sys, T, X0, input, output, transpose, return_x) >>> > 450 >>> T, yout = step_response(sys, T, X0) >>> > 451 >>> > """ >>> > >>> > --> 452 sys = _get_ss_simo(sys, input, output) >>> > 453 if T is None: >>> > 454 if isctime(sys): >>> > >>> > >>> > >>> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >>> _get_ss_simo(sys, input, output) >>> > 378 If input is not specified, select first input and >>> > issue warning >>> > >>> > 379 >>> > """ >>> > >>> > --> 380 sys_ss = _convertToStateSpace(sys) >>> > 381 if sys_ss.issiso(): >>> > 382 return >>> > sys_ss >>> > >>> > >>> > /usr/local/lib/python3.6/site-packages/control/statesp.py in >>> _convertToStateSpace(sys, **kw) >>> > 895 # transfer function to state space conversion now >>> should work! >>> > 896 >>> > ssout = td04ad('C', sys.inputs, sys.outputs, >>> > >>> > --> 897 >>> > denorder, den, num, tol=0) >>> > >>> > 898 >>> > >>> > >>> > 899 states = ssout[0] >>> > >>> > >>> > >>> > /usr/local/lib/python3.6/site-packages/slycot/transform.py in >>> td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) >>> > 446 e = ValueError(error_text) >>> > 447 e.info = out[-1] >>> > --> 448 raise >>> > e >>> > >>> > 449 if out[-1] > 0: >>> > 450 error_text = "The leading coefficient of a denominator >>> polynomial is nearly zero; calculations would overflow; no state-space >>> representation was calculated. >>> ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too >>> small." >>> > >>> > >>> > >>> > ValueError: The following argument had an illegal value: dcoeff >>> > >>> > -- >>> > Dr. Ryan Krauss >>> > Associate Professor >>> > Product Design and Manufacturing Engineering >>> > Grand Valley State University >>> > <illegeal_dcoeff.ipynb>_______________________________________________ >>> > python-control-discuss mailing list >>> > pyt...@li... >>> > https://lists.sourceforge.net/lists/listinfo/python-control-discuss >>> >>> >>> _______________________________________________ >>> python-control-discuss mailing list >>> pyt...@li... >>> https://lists.sourceforge.net/lists/listinfo/python-control-discuss >>> >> |
From: Ryan K. <kra...@gv...> - 2019-08-30 23:27:59
|
OK, my problem seems to be fixed. Documenting my fix here in case this helps someone in the future: - upgraded to Mac OSX 10.14, then again to 10.14.6 - I was doing this to install xcode, which I still have not been able to do because of disk space - manually downloaded the commandline tools for xcode and installed it - updated gcc via homebrew - this seems to have fixed an error from pip regarding gfortran - updated slycot via pip: Successfully installed slycot-0.3.5 Everything is now happy and I can evaluate the step response of an RC filter.... -- Dr. Ryan Krauss Associate Professor Product Design and Manufacturing Engineering Grand Valley State University On Fri, Aug 30, 2019 at 6:21 PM Ryan Krauss <kra...@gv...> wrote: > Good times. I have updated to 10.14.6. I have 39GB of free hard drive > space. But apparently this isn't enough to install xcode.............. > > -- > Dr. Ryan Krauss > Associate Professor > Product Design and Manufacturing Engineering > Grand Valley State University > > > On Fri, Aug 30, 2019 at 11:27 AM Ryan Krauss <kra...@gv...> wrote: > >> I guess I have to upgrade to OSX 10.14 to get xcode back...... >> >> This could take a minute..... >> >> -- >> Dr. Ryan Krauss >> Associate Professor >> Product Design and Manufacturing Engineering >> Grand Valley State University >> >> >> On Fri, Aug 30, 2019 at 11:26 AM Ryan Krauss <kra...@gv...> wrote: >> >>> I just ran a pip upgrade for the control module. I am running 0.8.2. >>> >>> I just tried upgrading slycot via pip. pip says I am currently running >>> 0.3.0. I tried to upgrade to 0.3.5 via pip, but I receive error messages >>> about gfortran and xcode. I am kind of surprised that I don't have them >>> both working. I will work on that. >>> >>> I am getting False for this variable: slycot.__SLYCOT_SETUP__ >>> >>> -- >>> Dr. Ryan Krauss >>> Associate Professor >>> Product Design and Manufacturing Engineering >>> Grand Valley State University >>> >>> >>> On Fri, Aug 30, 2019 at 2:16 AM Murray, Richard M. < >>> mu...@cd...> wrote: >>> >>>> Which version of python-control and slycot? I just ran against the >>>> latest master and slycot 0.3.4 and it didn’t generate an error. >>>> >>>> -richard >>>> >>>> > On 29 Aug 2019, at 11:04 , Ryan Krauss <kra...@gv...> wrote: >>>> > >>>> > I am trying to do a super basic step response for a first order TF >>>> and am getting an error I have never seen before. The notebook is >>>> attached, but here is the code and the error message: >>>> > >>>> > %matplotlib inline >>>> > import matplotlib.pyplot as plt >>>> > import numpy as np >>>> > import control >>>> > from numpy import sin, cos, tan, pi >>>> > from control import TransferFunction as TF >>>> > >>>> > p = 30 >>>> > >>>> > G = control.TransferFunction(p,[1,p]) >>>> > G >>>> > >>>> > control.step_response(G) >>>> > >>>> > >>>> --------------------------------------------------------------------------- >>>> > ValueError >>>> > Traceback (most recent call last) >>>> > >>>> > <ipython-input-7-7235fbf92fdd> in <module>() >>>> > ----> 1 control.step_response(G) >>>> > >>>> > >>>> > >>>> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >>>> step_response(sys, T, X0, input, output, transpose, return_x) >>>> > 450 >>> T, yout = step_response(sys, T, X0) >>>> > 451 >>>> > """ >>>> > >>>> > --> 452 sys = _get_ss_simo(sys, input, output) >>>> > 453 if T is None: >>>> > 454 if isctime(sys): >>>> > >>>> > >>>> > >>>> > /usr/local/lib/python3.6/site-packages/control/timeresp.py in >>>> _get_ss_simo(sys, input, output) >>>> > 378 If input is not specified, select first input and >>>> > issue warning >>>> > >>>> > 379 >>>> > """ >>>> > >>>> > --> 380 sys_ss = _convertToStateSpace(sys) >>>> > 381 if sys_ss.issiso(): >>>> > 382 return >>>> > sys_ss >>>> > >>>> > >>>> > /usr/local/lib/python3.6/site-packages/control/statesp.py in >>>> _convertToStateSpace(sys, **kw) >>>> > 895 # transfer function to state space conversion now >>>> should work! >>>> > 896 >>>> > ssout = td04ad('C', sys.inputs, sys.outputs, >>>> > >>>> > --> 897 >>>> > denorder, den, num, tol=0) >>>> > >>>> > 898 >>>> > >>>> > >>>> > 899 states = ssout[0] >>>> > >>>> > >>>> > >>>> > /usr/local/lib/python3.6/site-packages/slycot/transform.py in >>>> td04ad(rowcol, m, p, index, dcoeff, ucoeff, tol, ldwork) >>>> > 446 e = ValueError(error_text) >>>> > 447 e.info = out[-1] >>>> > --> 448 raise >>>> > e >>>> > >>>> > 449 if out[-1] > 0: >>>> > 450 error_text = "The leading coefficient of a >>>> denominator polynomial is nearly zero; calculations would overflow; no >>>> state-space representation was calculated. >>>> ABS(DCOEFF("+str(out[-1])+",1))="+str(abs(dcoeff(out[-1],1)))+" is too >>>> small." >>>> > >>>> > >>>> > >>>> > ValueError: The following argument had an illegal value: dcoeff >>>> > >>>> > -- >>>> > Dr. Ryan Krauss >>>> > Associate Professor >>>> > Product Design and Manufacturing Engineering >>>> > Grand Valley State University >>>> > <illegeal_dcoeff.ipynb>_______________________________________________ >>>> > python-control-discuss mailing list >>>> > pyt...@li... >>>> > https://lists.sourceforge.net/lists/listinfo/python-control-discuss >>>> >>>> >>>> _______________________________________________ >>>> python-control-discuss mailing list >>>> pyt...@li... >>>> https://lists.sourceforge.net/lists/listinfo/python-control-discuss >>>> >>> |