Can you please revise the python code import numpy as np import matplotlib.pyplot as plt N = 20 # number of points to discretize L = 1.0 X = np.linspace(0, L, N) # position along the rod h = L / (N - 1) # discretization spacing C0t = 0.1 # concentration at x = 0 D = 0.02 tfinal = 50.0 Ntsteps = 1000 dt = tfinal / (Ntsteps - 1) t = np.linspace(0, tfinal, Ntsteps) alpha = D * dt / h**2 print (alpha) 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] # 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])) 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()

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Can you please revise the python code 

 

import numpy as np

import matplotlib.pyplot as plt

 

N = 20  # number of points to discretize

L = 1.0

X = np.linspace(0, L, N) # position along the rod

h = L / (N - 1)          # discretization spacing

 

C0t = 0.1  # concentration at x = 0

D = 0.02

 

tfinal = 50.0

Ntsteps = 1000

dt = tfinal / (Ntsteps - 1)

t = np.linspace(0, tfinal, Ntsteps)

 

alpha = D * dt / h**2

print (alpha)

 

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]

 

    # 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]))

 

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()

Expert Solution
trending now

Trending now

This is a popular 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
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education