@@ -196,7 +196,7 @@ def root_locus(sys, kvect=None, xlim=None, ylim=None, plotstr=None,
196
196
# This replaces the previous _sgrid_func()
197
197
ax , fig = sgrid (fig = fig , position = position )
198
198
else :
199
- # Use lighter style for axis lines when there are no grid lines
199
+ # Use lighter style for axes when there are no grid lines
200
200
ax , fig = nogrid (ax = ax , axlinestyle = ':' , axlinewidth = .75 )
201
201
if isdtime (sys , strict = True ):
202
202
# Plot unit circle
@@ -655,86 +655,4 @@ def _removeLine(label, ax):
655
655
del line
656
656
657
657
658
- # TODO: Are these functions still needed? They are currently redundant since
659
- # `_sgrid_func` was replaced with `grid.sgrid`. See Issue #634.
660
- #
661
- # def _default_zetas(xlim, ylim):
662
- # """Return default list of damping coefficients
663
-
664
- # This function computes a list of damping coefficients based on the limits
665
- # of the graph. A set of 4 damping coefficients are computed for the x-axis
666
- # and a set of three damping coefficients are computed for the y-axis
667
- # (corresponding to the normal 4:3 plot aspect ratio in `matplotlib`?).
668
-
669
- # Parameters
670
- # ----------
671
- # xlim : array_like
672
- # List of x-axis limits [min, max]
673
- # ylim : array_like
674
- # List of y-axis limits [min, max]
675
-
676
- # Returns
677
- # -------
678
- # zeta : list
679
- # List of default damping coefficients for the plot
680
-
681
- # """
682
- # # Damping coefficient lines that intersect the x-axis
683
- # sep1 = -xlim[0] / 4
684
- # ang1 = [np.arctan((sep1*i)/ylim[1]) for i in np.arange(1, 4, 1)]
685
-
686
- # # Damping coefficient lines that intersection the y-axis
687
- # sep2 = ylim[1] / 3
688
- # ang2 = [np.arctan(-xlim[0]/(ylim[1]-sep2*i)) for i in np.arange(1, 3, 1)]
689
-
690
- # # Put the lines together and add one at -pi/2 (negative real axis)
691
- # angles = np.concatenate((ang1, ang2))
692
- # angles = np.insert(angles, len(angles), np.pi/2)
693
-
694
- # # Return the damping coefficients corresponding to these angles
695
- # zeta = np.sin(angles)
696
- # return zeta.tolist()
697
-
698
-
699
- # def _default_wn(xloc, yloc, max_lines=7):
700
- # """Return default natural frequencies for root locus plot
701
-
702
- # This function computes a list of natural frequencies based on the grid
703
- # parameters of the graph.
704
-
705
- # Parameters
706
- # ----------
707
- # xloc : array_like
708
- # List of x-axis tick values
709
- # ylim : array_like
710
- # List of y-axis limits [min, max]
711
- # max_lines : int, optional
712
- # Maximum number of frequencies to generate (default = 7)
713
-
714
- # Returns
715
- # -------
716
- # wn : list
717
- # List of default natural frequencies for the plot
718
-
719
- # """
720
- # sep = xloc[1]-xloc[0] # separation between x-ticks
721
-
722
- # # Decide whether to use the x or y axis for determining wn
723
- # if yloc[-1] / sep > max_lines*10:
724
- # # y-axis scale >> x-axis scale
725
- # wn = yloc # one frequency per y-axis tick mark
726
- # else:
727
- # wn = xloc # one frequency per x-axis tick mark
728
-
729
- # # Insert additional frequencies to span the y-axis
730
- # while np.abs(wn[0]) < yloc[-1]:
731
- # wn = np.insert(wn, 0, wn[0]-sep)
732
-
733
- # # If there are too many values, cut them in half
734
- # while len(wn) > max_lines:
735
- # wn = wn[0:-1:2]
736
-
737
- # return wn
738
-
739
-
740
658
rlocus = root_locus
0 commit comments