Returns the DC value, the zeros, and the poles of a transfer function. Poles and zeros that coincide within the diaplay accuracy (ini.disp) are canceled. :return: SLiCAP results object of which the following attributes with be set as a result of this instruction:
(cir, source='circuit', detector='circuit', lgref='circuit',
transfer='gain', convtype=None, pardefs=None, numeric=False,
stepdict=None)
| 891 | return result |
| 892 | |
| 893 | def doPZ(cir, source='circuit', detector='circuit', lgref='circuit', |
| 894 | transfer='gain', convtype=None, pardefs=None, numeric=False, |
| 895 | stepdict=None): |
| 896 | """ |
| 897 | Returns the DC value, the zeros, and the poles of a transfer function. |
| 898 | Poles and zeros that coincide within the diaplay accuracy (ini.disp) are |
| 899 | canceled. |
| 900 | |
| 901 | :return: SLiCAP results object of which the following attributes with be |
| 902 | set as a result of this instruction: |
| 903 | |
| 904 | :rtype: SLiCAP.SLiCAPinstruction.instruction object |
| 905 | |
| 906 | **Return value attributes** |
| 907 | |
| 908 | - doPZ(<circuit>).M: MNA matrix (sympy.Matrix) |
| 909 | - doPZ(<circuit>.Iv: Vector with independent variables (sympy.Matrix) |
| 910 | - doPZ(<circuit>).Dv: Vector with dependent variables (sympy.Matrix) |
| 911 | - doPZ(<circuit>).numer: Numerator of the voltage transfer from V1 |
| 912 | to V_out (sympy.Expr) |
| 913 | - doPZ(<circuit>).denom: Denominator of the voltage transfer from V1 |
| 914 | to V_out (sympy.Expr) |
| 915 | - doPZ(<circuit>).zeros: List with solutions of numer=0 for the Laplace |
| 916 | variable (ini.laplace) (list with sympy.Expr or floats) |
| 917 | - doPZ(<circuit>).poles: List with solutions of denom=0 for the Laplace |
| 918 | variable (ini.laplace) (list with sympy.Expr or floats) |
| 919 | - doPZ(<circuit>).DCvalue: Zero frequency value of the voltage transfer |
| 920 | from V1 to V_out (sympy.Expr) |
| 921 | |
| 922 | If parameter stepping is applied, all above attributes are lists of values |
| 923 | or expressions for each step. |
| 924 | |
| 925 | Frequencies of poles and zeros are always in radians per seconds. The |
| 926 | setting of ini.hz only affects the diplay of tables in the console |
| 927 | (listPZ()), on HTML pages (pz2httml()), or in LaTeX and RST reports. |
| 928 | |
| 929 | **Parameters** |
| 930 | |
| 931 | See section `General instruction format`_. |
| 932 | |
| 933 | **Example** |
| 934 | |
| 935 | .. code-block:: python |
| 936 | |
| 937 | import SLiCAP as sl |
| 938 | sl.initProject("My First RC Network") |
| 939 | # Generate the circuit object from the netlist |
| 940 | cir = sl.makeCircuit("myFirstRCnetwork.cir") |
| 941 | # Obtain the zeros of the transfer from V1 to V_out: |
| 942 | Zeros = sl.doZeros(cir).zeros |
| 943 | |
| 944 | """ |
| 945 | if transfer == None: |
| 946 | print("Warning: Invalid transfer=None has been changed to 'gain'") |
| 947 | transfer = 'gain' |
| 948 | |
| 949 | result = _executeInstruction(cir, transfer=transfer, source=source, |
| 950 | detector=detector, lgref=lgref, |
nothing calls this directly
no test coverage detected