Can you fix the error in the python code.    import numpy as np import matplotlib.pyplot as plt N = 20  # number of points to discretize L = 0.15 X = np.linspace(0, L, N) # position along the rod h = L / (N - 1)          # discretization spacing C0t = 0.200  # concentration at x = 0 Cth = 0.00000409 D = 0.0000025 t_avg = 0 n = 0  tfinal = 300 Ntsteps = 1000 dt = tfinal / (Ntsteps - 1) t = np.linspace(0, tfinal, Ntsteps) alpha =( D * dt / h**2) C_xt = [] # container for all the time steps # initial condition at t = 0 C = np.zeros(X.shape) C[0] = C0t C_xt += [C] for j in range(1, Ntsteps):     N = np.zeros(C.shape)     N[0] =  C0t     N[1:-1] = alpha*C[2:] + (1 - 2 * alpha) * C[1:-1] + alpha * C[0:-2]     N[-1] = N[-2]  # derivative boundary condition flux = 0     C[:] = N     C_xt += [N]          if ((Cth-0.000001) < N[-1]<(Cth+0.000001)):       print ('Time=',t[j],'conc=',[N[-1]],'Cthr=',[Cth])       t_avg = t_avg+t[j]       n = n + 1     # plot selective solutions     if j in [1,2,5,10,20,50,100,200,500]:         plt.plot(X, N, label='t={0:1.2f}'.format(t[j]))         t_thre = t_avg/n plt.xlabel('Position in rod') plt.ylabel('Concentration') plt.title('Concentration at different times') plt.legend(loc='best') plt.savefig('transient-diffusion-temporal-dependence.png') C_xt = np.array(C_xt) plt.figure() plt.plot(t, C_xt[:,5], label='x={0:1.2f}'.format(X[5])) plt.plot(t, C_xt[:,10], label='x={0:1.2f}'.format(X[10])) plt.plot(t, C_xt[:,15], label='x={0:1.2f}'.format(X[15])) plt.plot(t, C_xt[:,19], label='x={0:1.2f}'.format(X[19])) plt.legend(loc='best') plt.xlabel('Time') plt.ylabel('Concentration') plt.savefig('transient-diffusion-position-dependence.png') plt.show()

LINUX+ AND LPIC-1 GDE.TO LINUX CERTIF.
5th Edition
ISBN:9781337569798
Author:ECKERT
Publisher:ECKERT
Chapter7: Working With The Bash Shell
Section: Chapter Questions
Problem 15RQ
icon
Related questions
Question

Can you fix the error in the python code. 

 

import numpy as np
import matplotlib.pyplot as plt

N = 20  # number of points to discretize
L = 0.15
X = np.linspace(0, L, N) # position along the rod
h = L / (N - 1)          # discretization spacing

C0t = 0.200  # concentration at x = 0
Cth = 0.00000409
D = 0.0000025
t_avg = 0
n = 0 

tfinal = 300
Ntsteps = 1000
dt = tfinal / (Ntsteps - 1)
t = np.linspace(0, tfinal, Ntsteps)

alpha =( D * dt / h**2)

C_xt = [] # container for all the time steps

# initial condition at t = 0
C = np.zeros(X.shape)
C[0] = C0t

C_xt += [C]

for j in range(1, Ntsteps):
    N = np.zeros(C.shape)
    N[0] =  C0t
    N[1:-1] = alpha*C[2:] + (1 - 2 * alpha) * C[1:-1] + alpha * C[0:-2]
    N[-1] = N[-2]  # derivative boundary condition flux = 0
    C[:] = N
    C_xt += [N]
    
    if ((Cth-0.000001) < N[-1]<(Cth+0.000001)):
      print ('Time=',t[j],'conc=',[N[-1]],'Cthr=',[Cth])
      t_avg = t_avg+t[j]
      n = n + 1

    # plot selective solutions
    if j in [1,2,5,10,20,50,100,200,500]:
        plt.plot(X, N, label='t={0:1.2f}'.format(t[j]))
        t_thre = t_avg/n

plt.xlabel('Position in rod')
plt.ylabel('Concentration')
plt.title('Concentration at different times')
plt.legend(loc='best')
plt.savefig('transient-diffusion-temporal-dependence.png')

C_xt = np.array(C_xt)
plt.figure()
plt.plot(t, C_xt[:,5], label='x={0:1.2f}'.format(X[5]))
plt.plot(t, C_xt[:,10], label='x={0:1.2f}'.format(X[10]))
plt.plot(t, C_xt[:,15], label='x={0:1.2f}'.format(X[15]))
plt.plot(t, C_xt[:,19], label='x={0:1.2f}'.format(X[19]))
plt.legend(loc='best')
plt.xlabel('Time')
plt.ylabel('Concentration')
plt.savefig('transient-diffusion-position-dependence.png')

plt.show()

 

Traceback (most recent call last):
File "/tmp/sessions/3656bf8032ec22ef/main.py", line 46, in
<module>
t_thre
t_avg/n
ZeroDivisionError: division by
zero
Transcribed Image Text:Traceback (most recent call last): File "/tmp/sessions/3656bf8032ec22ef/main.py", line 46, in <module> t_thre t_avg/n ZeroDivisionError: division by zero
Expert Solution
steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Knowledge Booster
Random Class and its operations
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
LINUX+ AND LPIC-1 GDE.TO LINUX CERTIF.
LINUX+ AND LPIC-1 GDE.TO LINUX CERTIF.
Computer Science
ISBN:
9781337569798
Author:
ECKERT
Publisher:
CENGAGE L
Np Ms Office 365/Excel 2016 I Ntermed
Np Ms Office 365/Excel 2016 I Ntermed
Computer Science
ISBN:
9781337508841
Author:
Carey
Publisher:
Cengage