import numpy as np
from TRIOMA.tools.Circuit import Circuit
from TRIOMA.tools.Extractors.PAV import Component,Fluid,Membrane, Geometry
import TRIOMA.tools.correlations as corr
import TRIOMA.tools.materials as materials
import matplotlib.pyplot as plt
from scipy.interpolate import griddata
import matplotlib.colors as colors
from matplotlib.colors import LogNorm
import matplotlib.lines as mlines
from TRIOMA.tools.BreedingBlanket import BreedingBlanket
This analysis is a sweep on two parameters and the analytical efficiency value from it. First we define the d_hyd_v, the first sweep vector. This is going to be sweeped against all others (otherwise the analysis would be very long if we sweep all vectors against each other). Then we define a vector of vectors to sweep. A str_v_vec is used in the "update_attribute" method to indicate which attribute is going to be updated, corresponding with the vector that is sweeped in the loop. The Fluid_v_bool vector is used in this code to check if the update attribute must be used for the Component class or the Component.fluid class. The same happens for the solid_v_bool. Color vectors will be used after for plotting contours. Eff_v_vec is used then to store the results.
##Define sweep vectors
color_vector = ["red", "blue", "green", "yellow", "purple", "orange"]
N_vec=50
# d_hyd_v=np.logspace(np.log10(2.5E-2/2),np.log10(2.5E-2*2),N_vec)
d_hyd_v=np.linspace(9.2E-3,2.5E-2*2,N_vec)
n_pipes_vec=np.linspace(2000,8000,N_vec)
# str_v_vec=['T','U0','Solubility','c_in',"thick","K_S","k_d","k_r"]
variables={'d_Hyd':'Hydraulic Diameter [m]','n_pipes':'Number of Pipes'}
# variables = {'T' : 'Temperature [K]', 'U0' : 'Velocity [m/s]', 'Solubility' : 'Solubility [mol/m^3]', 'c_in' : 'Concentration [mol/m^3]', 'thick' : 'Thickness [m]', 'K_S' : 'Partition Coefficient', 'k_d' : 'Desorption Rate [1/s]', 'k_r' : 'Reaction Rate [1/s]'}
c_in_vec=np.logspace(-6,-1,N_vec)
D_vec=np.logspace(-10,-8,N_vec)
thick_vec=np.logspace(-3,-1,N_vec)
K_S_vec=np.logspace(-3,-1,N_vec)
k_d_vec=np.logspace(2,6,N_vec)
k_r_vec=np.logspace(2,6,N_vec)
solubility_vec=np.logspace(-3,-1,N_vec)
# v_vec=np.array([T_vec, U0_vec, solubility_vec, c_in_vec, thick_vec, K_S_vec])
v_vec=np.array([d_hyd_v])
eff_v_vec=np.array([])
fluid_v_bool=np.array([True , False , True ,False,False,False,False,False,False])
solid_v_bool=np.array([False, False, False,False,True ,True ,True ,True ,True ])
Here variables for the Breeding Blanket class are defined.
#Define other HX constraints
T_hot_prim=900
T_hot_sec=838
T_cold_prim=800
T_cold_sec=581
T_sec_ave=(T_hot_sec+T_cold_sec)/2
rho_sec=2263.628-0.636*T_sec_ave
mu_sec=0.075439-2.77E-4*(T_sec_ave-273.15)+3.49E-7*(T_sec_ave-273.15)**2-1.474E-10*(T_sec_ave-273.15)**3
k_sec=0.45
cp_sec=1396.044+0.172*(T_sec_ave)
N_HX=2
Q=0.625E9
m_in_sec=Q/(cp_sec*(T_hot_sec-T_cold_sec))
n_pipes_HX=4000
Empty arrays to store results with the append method are defined, and the double sweep takes place. In each iteration, the same component is defined and then one attribute is changed according to the sweep. Then color map plots are displayed, with additional isovariable contours.
from matplotlib import contour
for j,vec in enumerate(v_vec):
eff_v=np.array([])
var_str=list(variables.keys())[j]
T=800
res_vec=np.array([])
d_hyd_v_res=np.array([])
n_pipes_v_res=np.array([])
deltap_vec=np.array([])
L_vec=np.array([])
U0_v=np.array([])
inv_v=np.array([])
res_vec=np.array([])
power_v=np.array([])
for n_pipes in n_pipes_vec:
for i,d_hyd in enumerate(d_hyd_v):
mat=materials.Flibe(T)
flibe=Fluid(T=T, Solubility=mat.Solubility, MS=False,D=mat.D, d_Hyd=d_hyd ,mu=mat.mu,rho=mat.rho,U0=1,k=mat.k,
cp=mat.cp)
BB=BreedingBlanket(Q=Q,TBR=1.08,T_out=T_hot_prim,T_in=T_cold_prim,fluid=flibe, c_in=1E-10 )
BB.get_flowrate()
BB.get_cout()
c0=BB.c_out
Steel = Membrane( T=T,
D=1E-6,
# D=1E-4,
thick=2.1E-3,
K_S=4.41E-3,
k_d=1E6,
k_r=1E6,k=21)
Steel_HX = Membrane( T=T,
D=1E-9,
# D=1E-4,
thick=2.1E-3,
K_S=4.41E-3,
k_d=1E6,
k_r=1E6,k=21)
geom_PAV=Geometry(thick=2.1E-3, D=d_hyd,L=15,n_pipes=n_pipes)
geom_HX=Geometry(thick=2.1E-3, D=2.5E-2, L=10, n_pipes=n_pipes_HX)
PAV = Component(c_in=c0, geometry=geom_PAV, fluid=flibe, membrane=Steel)
PAV.fluid.update_attribute('U0',BB.m_coolant/(PAV.fluid.rho*PAV.geometry.n_pipes*PAV.fluid.d_Hyd**2/4)/N_HX)
Q_HX=Q/n_pipes_HX/N_HX
flibe_HX=Fluid(T=T, Solubility=mat.Solubility, MS=False,D=mat.D, d_Hyd=2.5E-2 ,mu=mat.mu,rho=mat.rho,U0=2.5,k=mat.k,cp=mat.cp)
HX=Component(c_in=1, fluid=flibe_HX, membrane=Steel_HX, geometry=geom_HX)
# PAV.get_adimensionals()
d_h_sec=2.5E-2
V_sec=m_in_sec/(rho_sec*d_h_sec**2*np.pi/4)/N_HX/n_pipes_HX
Re_sec=corr.Re(rho=rho_sec,u=V_sec,mu=mu_sec,L=d_h_sec)
Pr_sec=corr.Pr(c_p=cp_sec,mu=mu_sec,k=k_sec)
h_coeff_sec=corr.get_h_from_Nu(corr.Nu_DittusBoelter(Re_sec, Pr_sec), k_sec,d_h_sec)
R_sec=1/h_coeff_sec
U = HX.get_global_HX_coeff(R_conv_sec=R_sec)
L= corr.get_length_HX(corr.get_deltaTML(T_hot_prim, T_cold_prim, T_cold_sec, T_hot_sec), HX.fluid.d_Hyd, HX.U, Q_HX)
HX.geometry.update_attribute('L',L)
FC=Circuit(components=[BB,PAV, HX],closed=True)
FC.solve_circuit()
out_flux=(PAV.c_in*(1-PAV.eff)*PAV.fluid.U0*PAV.fluid.d_Hyd**2/4)
eff_v=np.append(eff_v, PAV.eff)
d_hyd_v_res=np.append(d_hyd_v_res, d_hyd)
n_pipes_v_res=np.append(n_pipes_v_res, n_pipes)
res_vec=np.append(res_vec, PAV.eff)
L_vec=np.append(L_vec, L)
U0_v=np.append(U0_v, PAV.fluid.U0)
PAV.get_pumping_power()
PAV.get_pressure_drop()
deltap_vec=np.append(deltap_vec, PAV.delta_p/1E5)
FC.get_inventory(flag_an=True)
power_v=np.append(power_v, PAV.pumping_power)
inv_v=np.append(inv_v, FC.inv*9)
eff_v_vec=np.append(eff_v_vec, eff_v)
plt.figure(j)
plt.xlabel('Hydraulic diameter [m]')
plt.ylabel('Number of pipes')
x = np.logspace(np.log10(min(d_hyd_v_res[:])), np.log10(max(d_hyd_v_res[:])), num=100)
y = np.logspace(np.log10(min(n_pipes_v_res[:])), np.log10(max(n_pipes_v_res[:])), num=100)
X, Y = np.meshgrid(x, y)
Z = griddata((d_hyd_v_res, n_pipes_v_res), (res_vec)*100, (X, Y), method='cubic')
dZdX, dZdY = np.gradient(Z, x, y, edge_order=2)
ZL=griddata((d_hyd_v_res, n_pipes_v_res), L_vec, (X, Y), method='cubic')
Z_U0=griddata((d_hyd_v_res, n_pipes_v_res), U0_v, (X, Y), method='cubic')
Zpower=griddata((d_hyd_v_res, n_pipes_v_res), power_v, (X, Y), method='cubic')
Zinv=griddata((d_hyd_v_res, n_pipes_v_res), inv_v, (X, Y), method='cubic')
Z_deltap=griddata((d_hyd_v_res, n_pipes_v_res), deltap_vec, (X, Y), method='cubic')
Z_npipes=griddata((d_hyd_v_res, n_pipes_v_res), n_pipes_v_res, (X, Y), method='cubic')
contour1=plt.contour(X, Y, Z, levels=np.linspace(np.nanmin(Z), np.nanmax(Z), 7), norm=LogNorm(), colors=color_vector[0])
contour3=plt.contour(X, Y, Z_U0, levels=np.linspace(0.8, 2.4, 2), colors=color_vector[5], linestyles='dashed')
# contour7=plt.contour(X, Y, Zpower, levels=np.linspace(1E5, 1E6, 2), colors=color_vector[1], linestyles='dotted')
contour8=plt.contour(X, Y, Zinv, levels=[1E-3,2E-3,1E-2,1E-1,1], colors=color_vector[4], linestyles='dotted')
contour4=plt.contour(X, Y, Z_deltap, levels=np.linspace(1, 5, 5), colors=color_vector[1], linestyles='dotted')
## add mask for a range of values
mask = (Z_U0 > 2.4) | (Z_U0 < 0.8) | (Zpower > 0.8E6) | (Z_npipes < 2000) | (Z_npipes > 6000) |(Z_deltap>3E5)
Z[mask] = np.nan
scatter=plt.scatter(X,Y, c=Z ) #,norm=colors.LogNorm()
plt.clabel(contour1, inline=True, fontsize=8)
plt.clabel(contour3, inline=True, fontsize=8)
# plt.clabel(contour7, inline=True, fontsize=8)
plt.clabel(contour8, inline=True, fontsize=8)
plt.clabel(contour4, inline=True, fontsize=8)
if scatter:
if np.nanmin(scatter.get_array()) < np.nanmax(scatter.get_array()):
cbar = plt.colorbar(scatter, ticks=np.linspace(np.nanmin(scatter.get_array()), np.nanmax(scatter.get_array()), 5)) # Show color scale for scatter with 5 ticks
cbar.set_label(r'$\eta$ %')
else:
print("Cannot create colorbar: data does not have a valid range of values.")
line1 = mlines.Line2D([], [], color=color_vector[0], markersize=15, label='eff %')
line3 = mlines.Line2D([], [], color=color_vector[5], markersize=15, label='velocity (m/s)')
# line7= mlines.Line2D([], [], color=color_vector[1], markersize=15, label='Pumping Power (W)')
line8= mlines.Line2D([], [], color=color_vector[4], markersize=15, label='Inventory (g) ')
line9= mlines.Line2D([], [], color=color_vector[1], markersize=15, label='Pressure Drop (bar) ')
plt.legend(handles=[line1, line3, line8,line9], bbox_to_anchor=(0.5, 1.15), loc='center', ncol=4, frameon=False)
plt.gca().spines['top'].set_visible(False)
plt.gca().spines['right'].set_visible(False)
plt.tight_layout()
plt.savefig('feasibility_map_.png', dpi=300)
plt.show()
2025.386635865169 indicates laminar flow 1999.6958495144274 indicates laminar flow 1966.3947921021054 indicates laminar flow 2011.2210722639497 indicates laminar flow 1976.574129286256 indicates laminar flow 1943.1006839621323 indicates laminar flow 1910.7421093067626 indicates laminar flow 2026.9254445700262 indicates laminar flow 1990.7620030191872 indicates laminar flow 1955.866363853016 indicates laminar flow 1922.173006461864 indicates laminar flow 1889.620848623725 indicates laminar flow 1858.1528769405215 indicates laminar flow 2009.1299047501614 indicates laminar flow 1972.6327987333282 indicates laminar flow 1937.4380207954594 indicates laminar flow 1903.4770862498099 indicates laminar flow 1870.6862295030637 indicates laminar flow 1839.0060044641607 indicates laminar flow 1808.3809248796147 indicates laminar flow 1993.6029094797493 indicates laminar flow 1956.7178202784182 indicates laminar flow 1921.172812679416 indicates laminar flow 1886.8961593834038 indicates laminar flow 1853.8211622606843 indicates laminar flow 1821.8857191682016 indicates laminar flow 1791.0319347824873 indicates laminar flow 1761.205770317538 indicates laminar flow 2019.037792130242 indicates laminar flow 1980.2467100437316 indicates laminar flow 1942.9180897472131 indicates laminar flow 1906.9707570510013 indicates laminar flow 1872.3294360858713 indicates laminar flow 1838.9242231278936 indicates laminar flow 1806.6901157625314 indicates laminar flow 1775.5665907147727 indicates laminar flow 1745.4972245761528 indicates laminar flow 1716.4293524281093 indicates laminar flow 2008.320014355422 indicates laminar flow 1968.9790038956078 indicates laminar flow 1931.1496841748785 indicates laminar flow 1894.7465668609186 indicates laminar flow 1859.6904903472578 indicates laminar flow 1825.908045108536 indicates laminar flow 1793.3310605710037 indicates laminar flow 1761.8961459502373 indicates laminar flow 1731.5442785482908 indicates laminar flow 1702.2204338841823 indicates laminar flow 1673.8732527811312 indicates laminar flow 1999.686179368856 indicates laminar flow 1959.7316269113394 indicates laminar flow 1921.3424150916817 indicates laminar flow 1884.428320848067 indicates laminar flow 1848.9059241142834 indicates laminar flow 1814.697978484017 indicates laminar flow 1781.7328504688132 indicates laminar flow 1749.9440187829955 indicates laminar flow 1719.2696262901509 indicates laminar flow 1689.6520782608318 indicates laminar flow 1661.0376814515005 indicates laminar flow 1633.3763192461035 indicates laminar flow 1993.0840314886989 indicates laminar flow 1952.4494979664419 indicates laminar flow 1913.4387538346937 indicates laminar flow 1875.9563737903036 indicates laminar flow 1839.9142660248842 indicates laminar flow 1805.2309810249697 indicates laminar flow 1771.831097102505 indicates laminar flow 1739.6446728986841 indicates laminar flow 1708.6067584967832 indicates laminar flow 1678.656957952588 indicates laminar flow 1649.7390370420724 indicates laminar flow 1621.8005708660319 indicates laminar flow 1594.7926266654874 indicates laminar flow 1988.4740642560405 indicates laminar flow 1947.0897846081903 indicates laminar flow 1907.3929710902944 indicates laminar flow 1869.2824749000467 indicates laminar flow 1832.6650728566817 indicates laminar flow 1797.4547060396947 indicates laminar flow 1763.5718045397782 indicates laminar flow 1730.9426871693704 indicates laminar flow 1699.499026601022 indicates laminar flow 1669.177371762242 indicates laminar flow 1639.9187204613747 indicates laminar flow 1611.6681361872552 indicates laminar flow 1584.3744038460468 indicates laminar flow 1557.9897198962838 indicates laminar flow 2029.9104362659905 indicates laminar flow 1985.8289237049662 indicates laminar flow 1943.6212658141746 indicates laminar flow 1903.1704661583808 indicates laminar flow 1864.3690694867532 indicates laminar flow 1827.1182085489181 indicates laminar flow 1791.3267629426207 indicates laminar flow 1756.9106149260172 indicates laminar flow 1723.791989399783 indicates laminar flow 1691.898867158031 indicates laminar flow 1661.1644620912243 indicates laminar flow 1631.526754354071 indicates laminar flow 1602.928072631419 indicates laminar flow 1575.3147195815277 indicates laminar flow 1548.6366353382407 indicates laminar flow 1522.847094635465 indicates laminar flow 1985.1330001718875 indicates laminar flow 1942.0238739173565 indicates laminar flow 1900.7472673035677 indicates laminar flow 1861.1887646990044 indicates laminar flow 1823.2432811892513 indicates laminar flow 1786.814130419162 indicates laminar flow 1751.8122019953564 indicates laminar flow 1718.1552337144135 indicates laminar flow 1685.7671661041993 indicates laminar flow 1654.5775686177801 indicates laminar flow 1624.5211283686237 indicates laminar flow 1595.5371935962605 indicates laminar flow 1567.569365146902 indicates laminar flow 1540.5651301789937 indicates laminar flow 1514.4755330881326 indicates laminar flow 1489.2548793126236 indicates laminar flow 1986.382197194703 indicates laminar flow 1942.2884030458758 indicates laminar flow 1900.1096895882056 indicates laminar flow 1859.723944987664 indicates laminar flow 1821.0192230148539 indicates laminar flow 1783.8927067750947 indicates laminar flow 1748.2497966691083 indicates laminar flow 1714.0033055494139 indicates laminar flow 1681.0727466558294 indicates laminar flow 1649.3837020875624 indicates laminar flow 1618.8672613814256 indicates laminar flow 1589.4595212815314 indicates laminar flow 1561.101139058212 indicates laminar flow 1533.7369328056022 indicates laminar flow 1507.315523052829 indicates laminar flow 1481.7890107912667 indicates laminar flow 1457.112687672783 indicates laminar flow 1989.5838710862101 indicates laminar flow 1944.4163761272089 indicates laminar flow 1901.254141009695 indicates laminar flow 1859.9665271321162 indicates laminar flow 1820.4340024879243 indicates laminar flow 1782.546985908906 indicates laminar flow 1746.204832688297 indicates laminar flow 1711.3149418099017 indicates laminar flow 1677.7919681082292 indicates laminar flow 1645.5571252476082 indicates laminar flow 1614.5375675364166 indicates laminar flow 1584.6658403663248 indicates laminar flow 1555.8793905502312 indicates laminar flow 1528.120129078109 indicates laminar flow 1501.3340398590049 indicates laminar flow 1475.4708289038253 indicates laminar flow 1450.4836091548316 indicates laminar flow 1426.328616806457 indicates laminar flow 1994.7569395123305 indicates laminar flow 1948.4200668568403 indicates laminar flow 1904.1870717935424 indicates laminar flow 1861.9178484370807 indicates laminar flow 1821.4844610535201 indicates laminar flow 1782.769850712312 indicates laminar flow 1745.666703441825 indicates laminar flow 1710.0764568395737 indicates laminar flow 1675.9084257724555 indicates laminar flow 1643.0790308370242 indicates laminar flow 1611.511115759726 indicates laminar flow 1581.13334200118 indicates laminar flow 1551.8796505656421 indicates laminar flow 1523.6887824698815 indicates laminar flow 1496.5038505454581 indicates laminar flow 1470.2719562757152 indicates laminar flow 1444.9438462368491 indicates laminar flow 1420.4736034481796 indicates laminar flow 1396.8183695621851 indicates laminar flow 2001.9321620773048 indicates laminar flow 1954.3226772249186 indicates laminar flow 1908.925065501634 indicates laminar flow 1865.5886852031329 indicates laminar flow 1824.1762704282207 indicates laminar flow 1784.562478734868 indicates laminar flow 1746.6326240086842 indicates laminar flow 1710.2815675612478 indicates laminar flow 1675.412744876609 indicates laminar flow 1641.9373090338247 indicates laminar flow 1609.7733748065443 indicates laminar flow 1578.8453498997317 indicates laminar flow 1549.0833418254806 indicates laminar flow 1520.422630621744 indicates laminar flow 1492.8031990414381 indicates laminar flow 1466.1693130344015 indicates laminar flow 1440.4691463512072 indicates laminar flow 1415.654443948265 indicates laminar flow 1391.6802195945004 indicates laminar flow 1368.5044836926816 indicates laminar flow 2011.1526007237205 indicates laminar flow 1962.1586754135174 indicates laminar flow 1915.4950743661454 indicates laminar flow 1870.9994019486214 indicates laminar flow 1828.5240093381701 indicates laminar flow 1787.9343577707068 indicates laminar flow 1749.107595051394 indicates laminar flow 1711.9313135979157 indicates laminar flow 1676.302463569965 indicates laminar flow 1642.1263989519089 indicates laminar flow 1609.3160379934175 indicates laminar flow 1577.7911223269439 indicates laminar flow 1547.477561491128 indicates laminar flow 1518.3068515905375 indicates laminar flow 1490.2155584901861 indicates laminar flow 1463.1448573386285 indicates laminar flow 1437.0401213847115 indicates laminar flow 1411.850554039594 indicates laminar flow 1387.5288589691602 indicates laminar flow 1364.0309437085168 indicates laminar flow 1341.3156528908403 indicates laminar flow 2022.4742729121756 indicates laminar flow 1971.9743033070247 indicates laminar flow 1923.9348051132542 indicates laminar flow 1878.1802352551165 indicates laminar flow 1834.551361650921 indicates laminar flow 1792.90341175366 indicates laminar flow 1753.1044676842646 indicates laminar flow 1715.034070472471 indicates laminar flow 1678.5820022940604 indicates laminar flow 1643.6472207731472 indicates laminar flow 1610.1369236476505 indicates laminar flow 1577.9657255649745 indicates laminar flow 1547.0549316322633 indicates laminar flow 1517.331894708833 indicates laminar flow 1488.7294453907218 indicates laminar flow 1461.1853852728452 indicates laminar flow 1434.6420354424213 indicates laminar flow 1409.0458333057886 indicates laminar flow 1384.3469718180436 indicates laminar flow 1360.4990760022283 indicates laminar flow 1337.4589123375717 indicates laminar flow 1315.1861271851744 indicates laminar flow 1983.8282676972929 indicates laminar flow 1934.2932656642151 indicates laminar flow 1887.17171966523 indicates laminar flow 1842.2914409508787 indicates laminar flow 1799.496240090712 indicates laminar flow 1758.644110892125 indicates laminar flow 1719.6056561998516 indicates laminar flow 1682.2627188073918 indicates laminar flow 1646.5071869636001 indicates laminar flow 1612.2399490386283 indicates laminar flow 1579.3699760620266 indicates laminar flow 1547.8135142484464 indicates laminar flow 1517.493372429099 indicates laminar flow 1488.3382916252247 indicates laminar flow 1460.282385924657 indicates laminar flow 1433.264645426867 indicates laminar flow 1407.2284933639037 indicates laminar flow 1382.1213906311557 indicates laminar flow 1357.8944819106923 indicates laminar flow 1334.5022783716124 indicates laminar flow 1311.902372611376 indicates laminar flow 1290.0551820797252 indicates laminar flow 1997.792634738817 indicates laminar flow 1946.6314876779684 indicates laminar flow 1898.0252669330112 indicates laminar flow 1851.7872499215068 indicates laminar flow 1807.7484764330495 indicates laminar flow 1765.7556855890111 indicates laminar flow 1725.6695338128977 indicates laminar flow 1687.3630501461041 indicates laminar flow 1650.720292829753 indicates laminar flow 1615.6351772080325 indicates laminar flow 1582.010449994154 indicates laminar flow 1549.7567890108635 indicates laminar flow 1518.7920108562878 indicates laminar flow 1489.0403716960532 indicates laminar flow 1460.4319486572515 indicates laminar flow 1432.9020911885693 indicates laminar flow 1406.390933325113 indicates laminar flow 1380.8429591133304 indicates laminar flow 1356.2066145568215 indicates laminar flow 1332.433960374867 indicates laminar flow 1309.4803606521446 indicates laminar flow 1287.3042031249129 indicates laminar flow 1265.86664741573 indicates laminar flow 2013.9539535849813 indicates laminar flow 1961.0234451423973 indicates laminar flow 1910.803914285123 indicates laminar flow 1863.0922865600112 indicates laminar flow 1817.7052759965713 indicates laminar flow 1774.4770320815212 indicates laminar flow 1733.2571146886003 indicates laminar flow 1693.9087448470164 indicates laminar flow 1656.307288486974 indicates laminar flow 1620.338937746997 indicates laminar flow 1585.8995604496029 indicates laminar flow 1552.8936932457957 indicates laminar flow 1521.2336579247742 indicates laminar flow 1490.8387836626139 indicates laminar flow 1461.6347206832427 indicates laminar flow 1433.552833037793 indicates laminar flow 1406.5296600623997 indicates laminar flow 1380.506437619743 indicates laminar flow 1355.4286715222875 indicates laminar flow 1331.245756620193 indicates laminar flow 1307.9106359507896 indicates laminar flow 1285.3794951186699 indicates laminar flow 1263.6114877299756 indicates laminar flow 1242.5684882608398 indicates laminar flow 1977.557195387662 indicates laminar flow 1925.5832623988595 indicates laminar flow 1876.2713134245482 indicates laminar flow 1829.4219440318177 indicates laminar flow 1784.8551806472356 indicates laminar flow 1742.4081700559516 indicates laminar flow 1701.9331909291677 indicates laminar flow 1663.295936205203 indicates laminar flow 1626.3740242372091 indicates laminar flow 1591.055703932292 indicates laminar flow 1557.2387250197905 indicates laminar flow 1524.829349391956 indicates laminar flow 1493.741483383965 indicates laminar flow 1463.8959140783497 indicates laminar flow 1435.2196353696902 indicates laminar flow 1407.6452517178332 indicates laminar flow 1381.1104493383805 indicates laminar flow 1355.5575260964947 indicates laminar flow 1330.9329726393546 indicates laminar flow 1307.1870983680208 indicates laminar flow 1284.2736967468595 indicates laminar flow 1262.1497452068866 indicates laminar flow 1240.7751355420844 indicates laminar flow 1220.1124312440777 indicates laminar flow 1996.3362763048347 indicates laminar flow 1942.452629789065 indicates laminar flow 1891.40131099533 indicates laminar flow 1842.9647220619825 indicates laminar flow 1796.9469982797737 indicates laminar flow 1753.1713608724326 indicates laminar flow 1711.4778475105797 indicates laminar flow 1671.7213591375255 indicates laminar flow 1633.7699728406137 indicates laminar flow 1597.5034794282644 indicates laminar flow 1562.8121115547956 indicates laminar flow 1529.595434043108 indicates laminar flow 1497.7613727755308 indicates laminar flow 1467.225362377149 indicates laminar flow 1437.9095960769591 indicates laminar flow 1409.7423637359088 indicates laminar flow 1382.6574661843806 indicates laminar flow 1356.5936957998294 indicates laminar flow 1331.4943747456696 indicates laminar flow 1307.3069435392476 indicates laminar flow 1283.982593663263 indicates laminar flow 1261.475938816442 indicates laminar flow 1239.7447201440425 indicates laminar flow 1218.7495414200357 indicates laminar flow 1198.4536306894488 indicates laminar flow 2017.4814026141096 indicates laminar flow 1961.5164575320755 indicates laminar flow 1908.5726420601857 indicates laminar flow 1858.4117532454113 indicates laminar flow 1810.8199885376453 indicates laminar flow 1765.6048994725686 indicates laminar flow 1722.592790624658 indicates laminar flow 1681.6264897051626 indicates laminar flow 1642.5634284548944 indicates laminar flow 1605.2739849422303 indicates laminar flow 1569.6400466475388 indicates laminar flow 1535.5537607718632 indicates laminar flow 1502.916443914449 indicates laminar flow 1471.6376279015387 indicates laminar flow 1441.6342223356871 indicates laminar flow 1412.829777540733 indicates laminar flow 1385.1538341358637 indicates laminar flow 1358.5413475881412 indicates laminar flow 1332.9321778498322 indicates laminar flow 1308.270635651268 indicates laminar flow 1284.5050782449584 indicates laminar flow 1261.58754842495 indicates laminar flow 1239.473451511504 indicates laminar flow 1218.1212657229253 indicates laminar flow 1197.492281976663 indicates laminar flow 1177.5503696890516 indicates laminar flow 1982.896007140725 indicates laminar flow 1927.8904611172402 indicates laminar flow 1875.8542539105824 indicates laminar flow 1826.5532660469182 indicates laminar flow 1779.7773601627143 indicates laminar flow 1735.3373869101815 indicates laminar flow 1693.0626284996638 indicates laminar flow 1652.7986070245024 indicates laminar flow 1614.4051982528104 indicates laminar flow 1577.7550023432207 indicates laminar flow 1542.7319315621523 indicates laminar flow 1509.2299820157743 indicates laminar flow 1477.1521620187727 indicates laminar flow 1446.4095542803698 indicates laminar flow 1416.9204928099323 indicates laminar flow 1388.6098384971774 indicates laminar flow 1361.4083398363916 indicates laminar flow 1335.2520673437732 indicates laminar flow 1310.0819119438352 indicates laminar flow 1285.8431390401033 indicates laminar flow 1262.4849911893307 indicates laminar flow 1239.960333309094 indicates laminar flow 1218.2253351998781 indicates laminar flow 1197.2391868819607 indicates laminar flow 1176.9638428570631 indicates laminar flow 1157.3637919229536 indicates laminar flow 2006.7314054607712 indicates laminar flow 1949.4764115147577 indicates laminar flow 1895.3979252557133 indicates laminar flow 1844.2387327772583 indicates laminar flow 1795.7686604393864 indicates laminar flow 1749.7811125195224 indicates laminar flow 1706.0901275802348 indicates laminar flow 1664.5278650979842 indicates laminar flow 1624.9424507263373 indicates laminar flow 1587.1961218777635 indicates laminar flow 1551.1636258992341 indicates laminar flow 1516.7308315920038 indicates laminar flow 1483.793521644722 indicates laminar flow 1452.2563390634 indicates laminar flow 1422.0318651632847 indicates laminar flow 1393.039810346844 indicates laminar flow 1365.2063018932927 indicates laminar flow 1338.4632554571265 indicates laminar flow 1312.7478190177546 indicates laminar flow 1288.0018797200628 indicates laminar flow 1264.1716254607759 indicates laminar flow 1241.2071542591732 indicates laminar flow 1219.0621254443342 indicates laminar flow 1197.6934475279704 indicates laminar flow 1177.0609983390066 indicates laminar flow 1157.1273735954273 indicates laminar flow 1137.8576605984092 indicates laminar flow 1973.470663933797 indicates laminar flow 1917.1646477879935 indicates laminar flow 1863.9824900304804 indicates laminar flow 1813.6712399687951 indicates laminar flow 1766.0045389956392 indicates laminar flow 1720.7792156269336 indicates laminar flow 1677.8123906590151 indicates laminar flow 1636.939005455476 indicates laminar flow 1598.0097029242434 indicates laminar flow 1560.88900383559 indicates laminar flow 1525.4537315473128 indicates laminar flow 1491.5916465379928 indicates laminar flow 1459.2002588550301 indicates laminar flow 1428.1857920071006 indicates laminar flow 1398.462276237926 indicates laminar flow 1369.9507527167855 indicates laminar flow 1342.57857313263 indicates laminar flow 1316.2787816097712 indicates laminar flow 1290.9895678738137 indicates laminar flow 1266.6537822661387 indicates laminar flow 1243.2185045967854 indicates laminar flow 1220.6346599896842 indicates laminar flow 1198.8566758513339 indicates laminar flow 1177.8421749170093 indicates laminar flow 1157.5517000239954 indicates laminar flow 1137.9484668507516 indicates laminar flow 1118.9981413619716 indicates laminar flow 2000.0343635410343 indicates laminar flow 1941.2945118044415 indicates laminar flow 1885.9065285305805 indicates laminar flow 1833.591471171288 indicates laminar flow 1784.1005132301736 indicates laminar flow 1737.2109867294062 indicates laminar flow 1692.723032763451 indicates laminar flow 1650.4567538547926 indicates laminar flow 1610.2497825404412 indicates laminar flow 1571.9551968983044 indicates laminar flow 1535.4397265991404 indicates laminar flow 1500.5822033155632 indicates laminar flow 1467.2722175183517 indicates laminar flow 1435.4089502867416 indicates laminar flow 1404.9001540939414 indicates laminar flow 1375.6612608644818 indicates laminar flow 1347.6145991398814 indicates laminar flow 1320.6887050924242 indicates laminar flow 1294.8177145183074 indicates laminar flow 1269.9408249193496 indicates laminar flow 1246.0018184248431 indicates laminar flow 1222.9486376740115 indicates laminar flow 1200.733007924635 indicates laminar flow 1179.3100996146275 indicates laminar flow 1158.6382264129277 indicates laminar flow 1138.6785744801261 indicates laminar flow 1119.3949592390547 indicates laminar flow 1100.7536064484611 indicates laminar flow 2029.3525706031476 indicates laminar flow 1967.948250756953 indicates laminar flow 1910.1507495829803 indicates laminar flow 1855.6513435808924 indicates laminar flow 1804.1755652166685 indicates laminar flow 1755.4785798628448 indicates laminar flow 1709.341291755138 indicates laminar flow 1665.5670482806154 indicates laminar flow 1623.9788380175496 indicates laminar flow 1584.4168983285624 indicates laminar flow 1546.7366643277433 indicates laminar flow 1510.807003712523 indicates laminar flow 1476.5086920324263 indicates laminar flow 1443.7330910341002 indicates laminar flow 1412.380999212623 indicates laminar flow 1382.3616489480494 indicates laminar flow 1353.5918288720038 indicates laminar flow 1325.9951135921829 indicates laminar flow 1299.5011857593909 indicates laminar flow 1274.045237814805 indicates laminar flow 1249.567442701392 indicates laminar flow 1226.0124844394181 indicates laminar flow 1203.3291408129312 indicates laminar flow 1181.4699115408175 indicates laminar flow 1160.3906862518259 indicates laminar flow 1140.0504473795654 indicates laminar flow 1120.411003766541 indicates laminar flow 1101.4367513368238 indicates laminar flow 1083.0944576819086 indicates laminar flow 1997.3101615936241 indicates laminar flow 1936.8753836397382 indicates laminar flow 1879.9904745895647 indicates laminar flow 1826.3515855243515 indicates laminar flow 1775.6885826079845 indicates laminar flow 1727.760497022905 indicates laminar flow 1682.3516924116352 indicates laminar flow 1639.2686212024996 indicates laminar flow 1598.3370668909567 indicates laminar flow 1559.3997894075849 indicates laminar flow 1522.3145064699365 indicates laminar flow 1486.9521562854832 indicates laminar flow 1453.195396895072 indicates laminar flow 1420.9373053861932 indicates laminar flow 1390.080246593476 indicates laminar flow 1360.5348860699223 indicates laminar flow 1332.2193263108666 indicates laminar flow 1305.058348640727 indicates laminar flow 1278.9827459842422 indicates laminar flow 1253.9287340598346 indicates laminar flow 1229.837430448212 indicates laminar flow 1206.654392579848 indicates laminar flow 1184.3292070106218 indicates laminar flow 1162.8151234638567 indicates laminar flow 1142.0687280478496 indicates laminar flow 1122.0496508419933 indicates laminar flow 1102.7203037070692 indicates laminar flow 1084.0456447367685 indicates laminar flow 1065.9929662448258 indicates laminar flow 2029.5916183364654 indicates laminar flow 1966.2638896517544 indicates laminar flow 1906.7685123914523 indicates laminar flow 1850.767824725478 indicates laminar flow 1797.9627007752686 indicates laminar flow 1748.0872056762537 indicates laminar flow 1700.9041162401654 indicates laminar flow 1656.2011479700038 indicates laminar flow 1613.7877618055702 indicates laminar flow 1573.49244927089 indicates laminar flow 1535.1604144427004 indicates laminar flow 1498.651586680248 indicates laminar flow 1463.838910332859 indicates laminar flow 1430.6068674096562 indicates laminar flow 1398.8501970123145 indicates laminar flow 1368.4727816205207 indicates laminar flow 1339.3866754056232 indicates laminar flow 1311.5112538811643 indicates laminar flow 1284.7724675737727 indicates laminar flow 1259.1021851658347 indicates laminar flow 1234.4376138412879 indicates laminar flow 1210.7207864516079 indicates laminar flow 1187.8981066848248 indicates laminar flow 1165.9199447254823 indicates laminar flow 1144.7402769851444 indicates laminar flow 1124.3163643994376 indicates laminar flow 1104.6084645594751 indicates laminar flow 1085.579573597633 indicates laminar flow 1067.1951943004458 indicates laminar flow 1049.4231273912792 indicates laminar flow 1998.526440504785 indicates laminar flow 1936.1680137897376 indicates laminar flow 1877.5832800589296 indicates laminar flow 1822.439745775598 indicates laminar flow 1770.442863518504 indicates laminar flow 1721.3307688546786 indicates laminar flow 1674.86986956302 indicates laminar flow 1630.8511303990342 indicates laminar flow 1589.0869287167088 indicates laminar flow 1549.4083811698047 indicates laminar flow 1511.6630611604137 indicates laminar flow 1475.713041986163 indicates laminar flow 1441.4332127257235 indicates laminar flow 1408.7098235207327 indicates laminar flow 1377.439224609065 indicates laminar flow 1347.526769656941 indicates laminar flow 1318.8858589453325 indicates laminar flow 1291.4371020360443 indicates laminar flow 1265.107582866011 indicates laminar flow 1239.8302129439085 indicates laminar flow 1215.5431605682068 indicates laminar flow 1192.1893458426546 indicates laminar flow 1169.7159928069955 indicates laminar flow 1148.0742312858067 indicates laminar flow 1127.2187421333308 indicates laminar flow 1107.1074404545482 indicates laminar flow 1087.7011921427486 indicates laminar flow 1068.9635597160366 indicates laminar flow 1050.8605739795205 indicates laminar flow 1033.3605285026372 indicates laminar flow
C:\Users\Gabriele\AppData\Local\Temp\ipykernel_23112\89788373.py:87: UserWarning: Log scale: values of z <= 0 have been masked contour1=plt.contour(X, Y, Z, levels=np.linspace(np.nanmin(Z), np.nanmax(Z), 7), norm=LogNorm(), colors=color_vector[0])