/* From: "COMPUTATIONAL PHYSICS, 2nd Ed" by RH Landau, MJ Paez, and CC Bordeianu Copyright Wiley-VCH, 2007. Electronic Materials copyright: R Landau, Oregon State Univ, 2007; MJ Paez, Univ Antioquia, 2007; & CC Bordeianu, Univ Bucharest, 2007 Support by National Science Foundation */ // Shock.c Solve Burger's shock equation using Lax-Wendroff scheme #include #include #define m 100 //number of grid points main() { FILE *output1,*output2; output1 = fopen("numerical.dat","w"); // solution in numerical.dat output2 = fopen("initial.dat","w"); // initial condition double u[m], u0[m], epsilon= 1.0, beta = 0.1; //CFL number beta double x, dx, dt, T_final; int i, j, n; dx = 2.0/m; // space step dt = beta*dx/epsilon; // time step T_final = 0.15; n = (int)(T_final/dt); for (i = 0;i