Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support matplotlib version 3.10.x #891

Merged
merged 4 commits into from
Dec 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/source/Support/bskReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ Version |release|
- Updated the CI build that includes the documentation to fail if a doxygen warning happens
- Removed deprecated swig code that allowed still importing `sys_model.h` instead of `sys_model.i`
- Updated :ref:`groundMapping` to correct behavior if ``maximumRange == -1``
- Updated scripts to work with ``matplotlib`` version 3.10.x without errors or warnings


Version 2.5.0 (Sept. 30, 2024)
Expand Down
2 changes: 1 addition & 1 deletion examples/BskSim/plotting/BSK_Plotting.py
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ def plot_rw_friction(timeData, dataFrictionRW, numRW, dataFaultLog=[], id=None,

def plot_planet(oe, planet):
b = oe.a * np.sqrt(1 - oe.e * oe.e)
plt.figure(figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.a, oe.a, -b, b]) / 1000 * 1.75)
# draw the planet
fig = plt.gcf()
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioAttGuideHyperbolic.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ def plot_orbit(oe, mu, planet_radius, dataPos, dataVel):
"""Plot the spacecraft orbit trajectory."""
# draw orbit in perifocal frame
p = oe.a * (1 - oe.e * oe.e)
plt.figure(4, figsize=np.array((1.0, 1.)) * 4.75, dpi=100)
plt.figure(4, figsize=tuple(np.array((1.0, 1.)) * 4.75), dpi=100)
# draw the planet
fig = plt.gcf()
ax = fig.gca()
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioBasicOrbit.py
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,7 @@ def plotOrbits(timeAxis, posData, velData, oe, mu, P, orbitCase, useSphericalHar
# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(2, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(2, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig = plt.gcf()
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioBasicOrbitStream.py
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,7 @@ def run(show_plots, liveStream, broadcastStream, timeStep, orbitCase, useSpheric
# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(2, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(2, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig = plt.gcf()
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioCentralBody.py
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ def run(show_plots, useCentral):
# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(2, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(2, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig = plt.gcf()
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioDragDeorbit.py
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,7 @@ def register_fig(i):

# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
plt.figure(1, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(1, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig, ax = register_fig(1)
Expand Down
8 changes: 3 additions & 5 deletions examples/scenarioHaloOrbit.py
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ def run(showPlots=True):
b = oe.a * np.sqrt(1 - oe.e * oe.e)

# First plot: Draw orbit in inertial frame
fig = plt.figure(1, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
fig = plt.figure(1, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
ax = fig.gca()
ax.ticklabel_format(style='scientific', scilimits=[-5, 3])
Expand Down Expand Up @@ -241,7 +241,7 @@ def run(showPlots=True):

# Second plot: Draw orbit in frame rotating with the Moon (the center is L2 point)
# x axis is moon position vector direction and y axis is moon velocity vector direction
fig = plt.figure(2, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
fig = plt.figure(2, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-1e5, 5e5, -3e5, 3e5]) * 1.25)
ax = fig.gca()
ax.ticklabel_format(style='scientific', scilimits=[-5, 3])
Expand Down Expand Up @@ -279,7 +279,7 @@ def run(showPlots=True):
# Third plot: Draw orbit in frame rotating with the Moon (the center is L2 point)
# x axis is moon position vector direction and y axis is the cross product direction of the moon position vector and
# velocity vector
fig = plt.figure(3, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
fig = plt.figure(3, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-1e5, 5e5, -3e5, 3e5]) * 1.25)
ax = fig.gca()
ax.ticklabel_format(style='scientific', scilimits=[-5, 3])
Expand Down Expand Up @@ -316,5 +316,3 @@ def run(showPlots=True):
run(
True # Show plots
)


3 changes: 2 additions & 1 deletion examples/scenarioIntegrators.py
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,8 @@ def run(show_plots, integratorCase):
# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(1, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
if integratorCase == 'rk4':
plt.figure(1, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig = plt.gcf()
Expand Down
6 changes: 2 additions & 4 deletions examples/scenarioLagrangePointOrbit.py
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ def run(lagrangePoint, nOrbits, timestep, showPlots=True):
b = oe.a * np.sqrt(1 - oe.e * oe.e)

# First plot: Draw orbit in inertial frame
fig = plt.figure(1, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
fig = plt.figure(1, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
ax = fig.gca()
ax.ticklabel_format(style='scientific', scilimits=[-5, 3])
Expand Down Expand Up @@ -317,7 +317,7 @@ def run(lagrangePoint, nOrbits, timestep, showPlots=True):
figureList[pltName] = plt.figure(1)

# Second plot: Draw orbit in frame rotating with the Moon
fig = plt.figure(2, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
fig = plt.figure(2, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
ax = fig.gca()
ax.ticklabel_format(style='scientific', scilimits=[-5, 3])
Expand Down Expand Up @@ -387,5 +387,3 @@ def run(lagrangePoint, nOrbits, timestep, showPlots=True):
300, # Timestep (seconds)
True # Show plots
)


2 changes: 1 addition & 1 deletion examples/scenarioOrbitMultiBody.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ def run(show_plots, scCase):
omega0 = oeData.omega
b = oeData.a * np.sqrt(1 - oeData.e * oeData.e)
p = oeData.a * (1 - oeData.e * oeData.e)
plt.figure(2, figsize=np.array((1.0, b / oeData.a)) * 4.75, dpi=100)
plt.figure(2, figsize=tuple(np.array((1.0, b / oeData.a)) * 4.75), dpi=100)
plt.axis(np.array([-oeData.rApoap, oeData.rPeriap, -b, b]) / 1000 * 1.25)

# draw the planet
Expand Down
2 changes: 1 addition & 1 deletion examples/scenarioPatchedConics.py
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,7 @@ def run(show_plots):
plt.close("all") # clears out plots from earlier test runs
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(1) #, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
plt.figure(1) #, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
# plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
plt.axis('equal')
plt.axis([-20000, 50000, -10000, 10000])
Expand Down
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
pandas
matplotlib<3.10.0
matplotlib
numpy
colorama
tqdm
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
#
#
# ISC License
#
#
# Copyright (c) 2021, Autonomous Vehicle Systems Lab, University of Colorado Boulder
#
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#
#
#
#

import numpy as np
from Basilisk.architecture import messaging
Expand Down Expand Up @@ -136,8 +136,8 @@ def smallBodyNavEKFTestFunction(show_plots):
true_x_hat, np.array([x_hat_c_wrapped[-1,:]]), 0.1, "x_hat_c_wrapped",
testFailCount, testMessages)

plt.figure(1)
plt.clf()
plt.close('all')

plt.figure(1, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.ticklabel_format(useOffset=False)
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,0], label='x-pos')
Expand All @@ -148,8 +148,6 @@ def smallBodyNavEKFTestFunction(show_plots):
plt.ylabel('r_BO_O (m)')
plt.title('Estimated Relative Spacecraft Position')

plt.figure(2)
plt.clf()
plt.figure(2, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,3], label='x-vel')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,4], label='y-vel')
Expand All @@ -159,8 +157,6 @@ def smallBodyNavEKFTestFunction(show_plots):
plt.ylabel('v_BO_O (m/s)')
plt.title('Estimated Spacecraft Velocity')

plt.figure(5)
plt.clf()
plt.figure(5, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,6], label='s1')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,7], label='s2')
Expand All @@ -170,8 +166,6 @@ def smallBodyNavEKFTestFunction(show_plots):
plt.ylabel('sigma_AN (rad)')
plt.title('Estimated Asteroid Attitude')

plt.figure(6)
plt.clf()
plt.figure(6, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,9], label='omega1')
plt.plot(navTransOutMsgRec.times() * 1.0E-9, x_hat[:,10], label='omega2')
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
#
#
# ISC License
#
#
# Copyright (c) 2021, Autonomous Vehicle Systems Lab, University of Colorado Boulder
#
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#
#
#
#

import numpy as np
from Basilisk.architecture import messaging
Expand Down Expand Up @@ -134,8 +134,7 @@ def smallBodyNavUKFTestFunction(show_plots):
[true_x_hat], np.array([x_hat_c_wrapped[-1,:]]), 0.01, "x_hat_c_wrapped",
testFailCount, testMessages)

plt.figure(1)
plt.clf()
plt.close('all')
plt.figure(1, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.ticklabel_format(useOffset=False)
plt.plot(smallBodyNavUKFOutMsgRec.times() * 1.0E-9 / 60, x_hat[:,0] / 1000, label='x-pos')
Expand All @@ -146,8 +145,6 @@ def smallBodyNavUKFTestFunction(show_plots):
plt.ylabel('${}^{A}r_{BA}$ (km)')
plt.title('Estimated Relative Spacecraft Position')

plt.figure(2)
plt.clf()
plt.figure(2, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(smallBodyNavUKFOutMsgRec.times() * 1.0E-9 / 60, x_hat[:,3], label='x-vel')
plt.plot(smallBodyNavUKFOutMsgRec.times() * 1.0E-9 / 60, x_hat[:,4], label='y-vel')
Expand All @@ -157,8 +154,6 @@ def smallBodyNavUKFTestFunction(show_plots):
plt.ylabel('${}^{A}v_{BA}$ (m/s)')
plt.title('Estimated Spacecraft Velocity')

plt.figure(3)
plt.clf()
plt.figure(3, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(smallBodyNavUKFOutMsgRec.times() * 1.0E-9 / 60, x_hat[:,6], label='x-acc')
plt.plot(smallBodyNavUKFOutMsgRec.times() * 1.0E-9 / 60, x_hat[:,7], label='y-acc')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -474,9 +474,9 @@ def orbElem(a, e, i, AN, AP, f, mu, name, DispPlot):
# create plot
# txt = 'e = ' + str(e) + ' and a = ' + str(a) + 'km'
fact = (len(str(abs(a)))-3.0)
plt.close('all')

plt.figure(1,figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.clf()
# fig1.text(.5, .05, txt, ha='center')
ax1 = plt.subplot(211)
ax1.cla()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -204,13 +204,14 @@ def run(doUnitTests, show_plots, integratorCase):
#
np.set_printoptions(precision=16)
fileNameString = filename[len(path) + 6:-3]
if integratorCase == "rk4":
if integratorCase == "bogackiShampine":
plt.close("all") # clears out plots from earlier test runs

# draw orbit in perifocal frame
b = oe.a * np.sqrt(1 - oe.e * oe.e)
p = oe.a * (1 - oe.e * oe.e)
plt.figure(1, figsize=np.array((1.0, b / oe.a)) * 4.75, dpi=100)
if integratorCase == "rk4":
plt.figure(1, figsize=tuple(np.array((1.0, b / oe.a)) * 4.75), dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b]) / 1000 * 1.25)
# draw the planet
fig = plt.gcf()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ def run(show_plots, orbitCase, planetCase):
# draw orbit in perifocal frame
b = oe.a*np.sqrt(1-oe.e*oe.e)
p = oe.a*(1-oe.e*oe.e)
plt.figure(2,figsize=np.array((1.0, b/oe.a))*4.75,dpi=100)
plt.figure(2,figsize=tuple(np.array((1.0, b/oe.a))*4.75),dpi=100)
plt.axis(np.array([-oe.rApoap, oe.rPeriap, -b, b])/1000*1.25)
# draw the planet
fig = plt.gcf()
Expand Down
13 changes: 3 additions & 10 deletions src/simulation/navigation/planetNav/_UnitTest/test_planetNav.py
Original file line number Diff line number Diff line change
Expand Up @@ -198,9 +198,7 @@ def planetNavTestFunction(show_plots):
if count < 1:
testFailCount += 1
testMessages.append("FAILED: Too few error counts - " + str(count))

plt.figure(1)
plt.clf()
plt.close('all')
plt.figure(1, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, r_BN_N[:,0], label='x-position')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, r_BN_N[:,1], label='y-position')
Expand All @@ -210,8 +208,6 @@ def planetNavTestFunction(show_plots):
plt.xlabel('Time (s)')
plt.ylabel('Position (m)')

plt.figure(2)
plt.clf()
plt.figure(2, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, v_BN_N[:,0], label='x-velocity')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, v_BN_N[:,1], label='y-velocity')
Expand All @@ -221,8 +217,7 @@ def planetNavTestFunction(show_plots):
plt.xlabel('Time (s)')
plt.ylabel('Velocity (m/s)')

plt.figure(3)
plt.clf()

plt.figure(3, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, sigma_BN[:, 0], label='x-rotation')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, sigma_BN[:, 1], label='y-rotation')
Expand All @@ -232,8 +227,6 @@ def planetNavTestFunction(show_plots):
plt.xlabel('Time (s)')
plt.ylabel('Attitude (rad)')

plt.figure(4)
plt.clf()
plt.figure(4, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, omega_BN_B[:, 0], label='x-angular vel.')
plt.plot(ephemerisOutMsgRec.times() * 1.0E-9, omega_BN_B[:, 1], label='y-angular vel.')
Expand All @@ -245,7 +238,7 @@ def planetNavTestFunction(show_plots):

if show_plots:
plt.show()
plt.close('all')
plt.close('all')

# Corner case usage
pMatrixBad = [[0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -232,8 +232,6 @@ def unitSimpleNav(show_plots):
testFailCount += 1
testMessages.append("FAILED: Too few error counts -" + str(count))

plt.figure(1)
plt.clf()
plt.figure(1, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(dataTransLog.times() * 1.0E-9, posNav[:,0], label='x-position')
plt.plot(dataTransLog.times() * 1.0E-9, posNav[:,1], label='y-position')
Expand All @@ -247,8 +245,6 @@ def unitSimpleNav(show_plots):
plt.show()
plt.close('all')

plt.figure(2)
plt.clf()
plt.figure(2, figsize=(7, 5), dpi=80, facecolor='w', edgecolor='k')
plt.plot(dataAttLog.times() * 1.0E-9, attNav[:, 0], label='x-rotation')
plt.plot(dataAttLog.times() * 1.0E-9, attNav[:, 1], label='y-rotation')
Expand All @@ -260,7 +256,7 @@ def unitSimpleNav(show_plots):
unitTestSupport.writeFigureLaTeX('SimpleNavAtt', 'Simple Navigation Att Signal', plt, r'height=0.4\textwidth, keepaspectratio', path)
if show_plots:
plt.show()
plt.close('all')
plt.close('all')

# Corner case usage
pMatrixBad = [[0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
Expand Down
Loading
Loading