Web-Books
im Austria-Forum
Austria-Forum
Web-Books
Informatik
Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python 3.6, Band Second Edition
Seite - 296 -
  • Benutzer
  • Version
    • Vollversion
    • Textversion
  • Sprache
    • Deutsch
    • English - Englisch

Seite - 296 - in Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python 3.6, Band Second Edition

Bild der Seite - 296 -

Bild der Seite - 296 - in Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python 3.6, Band Second Edition

Text der Seite - 296 -

296 9 SolvingPartialDifferentialEquations Parameterscanbeset as L = 0.5 beta = 8.2E-5 N = 40 x = np.linspace(0, L, N+1) dx = x[1] - x[0] u = np.zeros(N+1) U_0 = np.zeros(N+1) U_0[0] = s(0) U_0[1:] = 283 Let us useΔt = 1.0. We can now callode_FEand then make an animation on the screen to seehowu(x,t)develops in time: from ode_system_FE import ode_FE u, t = ode_FE(rhs, U_0, dt, T=1*60*60) # Make movie import os os.system(’rm tmp_*.png’) import matplotlib.pyplot as plt plt.ion() y = u[0,:] lines = plt.plot(x, y) plt.axis([x[0], x[-1], 273, s(0)+10]) plt.xlabel(’x’) plt.ylabel(’u(x,t)’) counter = 0 # Plot each of the first 100 frames, then increase speed by 10x change_speed = 100 for i in range(0, u.shape[0]): print(t[i]) plot = True if i <= change_speed else i % 10 == 0 lines[0].set_ydata(u[i,:]) if i > change_speed: plt.legend([’t={:.0f} 10x’.format(t[i])]) else: plt.legend([’t={:.0f}’.format(t[i])]) plt.draw() if plot: plt.savefig(’tmp_{:04d}.png’.format(counter)) counter += 1 #time.sleep(0.2) The plotting statements update the u(x,t) curve on the screen. In addition, we save a fraction of the plots to files tmp_0000.png, tmp_0001.png, tmp_0002.png, and so on. These plots can be combined to ordinaryvideo files. A commontool isffmpegor its sisteravconv. These programs take the same type of command-line options. To make a Flash videomovie.flv, run1 Terminal Terminal> ffmpeg -i tmp_%04d.png -r 4 -vcodec flv movie.flv 1 You may read about using a terminal inAppendix A.
zurück zum  Buch Programming for Computations – Python - A Gentle Introduction to Numerical Simulations with Python 3.6, Band Second Edition"
Programming for Computations – Python A Gentle Introduction to Numerical Simulations with Python 3.6, Band Second Edition
Titel
Programming for Computations – Python
Untertitel
A Gentle Introduction to Numerical Simulations with Python 3.6
Band
Second Edition
Autoren
Svein Linge
Hans Petter Langtangen
Verlag
Springer Open
Datum
2020
Sprache
englisch
Lizenz
CC BY 4.0
ISBN
978-3-319-32428-9
Abmessungen
17.8 x 25.4 cm
Seiten
356
Schlagwörter
Programmiersprache, Informatik, programming language, functional, imperative, object-oriented, reflective
Kategorie
Informatik
Web-Books
Bibliothek
Datenschutz
Impressum
Austria-Forum
Austria-Forum
Web-Books
Programming for Computations – Python