Path: blob/master/material/Heat_tranfer_2D.py
934 views
import numpy as np1import matplotlib.pylab as plt23def Temp(x,y):4return x**3 + 3*x-1+y**256def EPT( f,i, h=0.01,der=0 ):7suma = -3*f[i]+4*f[i+(-1)**der*1]-f[i+(-1)**der*2]8return suma/(2*h*(-1)**der)910def MPT( f,i, h = 0.01 ):11return (f[i+1]-f[i-1])/(2*h)1213k = 114X = np.linspace(1,10,100)15Y = np.linspace(0,50,100)16Tx = Temp(X,0)17Ty = Temp(0,Y)1819Qx = np.zeros(len(X))20Qy = np.zeros(len(Y))21index_x = len(X)-122index_y = len(Y)-12324Qx[0] = EPT( Tx,0 )25Qy[0] = EPT( Ty,0 )26i = np.arange( 1,index_x )27j = np.arange( 1,index_y )28Qx[1:-1] = MPT( Tx,i )29Qy[1:-1] = MPT( Ty,j )30Qx[-1] = EPT( Tx,index_x,der=1 )31Qy[-1] = EPT( Ty,index_y,der=1 )3233Xm,Ym = plt.meshgrid(X,Y)34Qx,Qy = plt.meshgrid(Qx,Qy)35Q = k*np.sqrt(Qx**2+Qy**2)36plt.figure(figsize=(10,10))37plt.imshow(Q)38plt.colorbar(orientation="vertical",shrink=0.89)39plt.title("Color Map Density Flux Heat")40plt.show()4142